Are you happy with your logging solution? Would you help us out by taking a 30-second survey? Click here


Psychological warfare in reverse engineering

Subscribe to updates I use REpsych

Statistics on REpsych

Number of watchers on Github 6
Number of open issues 0
Main language Assembly
Open pull requests 0+
Closed pull requests 0+
Last commit over 4 years ago
Repo Created over 4 years ago
Repo Last Updated almost 4 years ago
Size 6.4 MB
Organization / Authortmr232
Page Updated
Do you use REpsych? Leave a review!
View REpsych activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating REpsych for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


Psychological Warfare in Reverse Engineering


The REpsych toolset is a proof-of-concept illustrating the generation of images through a program's control flow graph (CFG).

The process used to generate the proper control flow is outlined in the DEF CON presentation.

Although there is no specific point to the project (other than to show that it can be done), possible (non-serious) applications are outlined in the presentation.

The program works reliably with all tested versions of the IDA Pro reverse engineering tool, and semi-reliably with other CFG viewers (Hopper, BinNavi, radare2, etc).


The toolset translates source images into functioning programs, such that the program's control flow graph generates the source image. The tool will create a basic block (CFG node) for each pixel of the source image; as such, you should try to use small source images (not larger than 100x100), and you may need to increase the number of allowed nodes in your CFG viewer.

To generate a new program from an image:

  • Save the image in the gfx/ folder as a 24 BPP bitmap.
  • Run make image in the root directory of the project, where image is the name of your image, without the extension.

Two functioning programs will be created: repsych_v1 and repsych_v2. Each uses a different strategy for ensuring the CFG renderer correctly places the CFG nodes.


Example 1

Example 4

Example 3

Example 2

REpsych list of languages used
More projects by tmr232 View all
Other projects in Assembly