https://www.hex-rays.com/products/decompiler/
We are pleased to present our flagship product, the Hex-Rays Decompiler, which brings binary software analysis within reach of millions of programmers. It converts executable programs into a human readable C-like pseudocode text.
In comparison to low level assembly language, high level language representation in Hex-Rays has several advantages:
The pseudocode text is generated on the fly. Our technology is fast enough to analyze 99% of functions within a couple of seconds.
Currently the decompiler supports 32bit compiled generated code for the x86 and ARM processors. We plan to port it to other platforms and add a programmatic API. This will allow our customers to implement their own analysis methods. Vulnerability search, software validation, coverage analysis are the directions that immediately come to mind.
The decompiler runs on MS Windows. The GUI and text IDA versions are supported. In the text mode, only batch operation is available.
The decompiler comes in two different flavors:
Currently the decompiler can handle compiler generated code. Manually crafted code may be decompiled too but the results are usually worse than for compiler code. Support for other processors and 64-bit code will eventually be added (no deadlines are available, sorry).
Below are the most important limitations of our decompilers (all processors):
Limitations specific to x86:
Limitations specific to ARM:
The Decompiler software is available for two platforms:
x86 and ARM.
IDA Starter is enough to use the decompiler.