Decompilers
Disassemblers are used to show the low-level code of a compiled high-level program. Decompilers, on the other hand, attempt to show the high-level source code of the program. These tools work by identifying blocks of low-level code that match with corresponding syntax in the high-level program. It is expected that these tools won't be able to show what the original program's source code looks like, but nonetheless, they help speed up analysis with a better view of the program's pseudo code:
- Snowman: This is a C and C++ decompiler. It can run as astandalonetool, or as an IDA Pro plugin. The source can be found at https://github.com/yegord/snowman, while itscompiledbinaries can bedownloadedfrom https://derevenets.com/. It is available for Windows and Linux.
- Hex-Rays: This is also a C and C++ decompiler and runs as a plugin for IDA Pro. It is sold commercially as part of IDA Pro. Users should expect this to have a better decompiled output than Snowman.
- dotPeek: This is a free .NET...