Program Reconstruction¶
When source code is unavailable for a compiled program, users may want to recover the source code, so they can make edits to it and recompile it. In the video game scene, this can be useful for modding. This can also be useful for porting a program to a new platform.
Video Games¶
Reverse engineers whom also love playing video games often reverse their favorite games. In some cases, they go as far as attempting to recompile the entire project. However, to recompile the project, they first need to recover compilable code. In these cases, practitioners often use a decompiler to first get pseudo-C, then modify it to make it compilable.
The end goal of these projects is to recover program source that will recompile to a byte-match of the original binary. Most projects include a percent completion of the estimated program recompilation.
Many of the games in this list were collected from GitHub projects, individuals, or popular blog posts 1.