The Hex-Rays Decompiler converts executable programs into a human readable C-like pseudo code text. The pseudo code text is generated on the fly. Our technology is fast enough to analyze most functions within a few seconds.
Currently the decompiler supports 32-bit x86 compiler-generated code for the Intel x86 processors. We plan to port it to other platforms and add an API that will be available thru an SDK. This will allow our customers to implement their own analysis methods. Vulnerability search, software validation, coverage analysis are the areas that can benefit from such customizations.
The decompiler runs on MS Windows. Both the GUI and text IDA versions are supported; however, in the text mode, only batch operation is available.
Facts about Hex-Rays Decompiler:
• The decompiler supports 32-bit compiler-generated Intel x86 code
• It can handle code generated by any mainstream C/C++ compiler
• It is very fast. Most functions are analyzed instantaneously
• It has interactive and batch modes
• It is shipped as an IDA Pro plugin. IDA 5.8 or higher is required
• Floating point instructions (also XMM/MMX/SSE*) are supported
• 16-bit and 64-bit code are not yet supported
• There is an ARM edition as well as x86
• Exception handling is not supported in the current version
In comparison to low level assembly language, high level language representation in Hex-Rays has several advantages:
- Concise: Requires less time to read it
- Structured: Program logic is more obvious
- Dynamic: Variable names and types can be changed on the fly
- Familiar: No need to be an expert assembly language programmer
- Practical: Handles real world apps!