C4Decompiler is a general, interactive Machine Decompiler for Intel IA Processors (x86 based). It accepts obj and exe files as input, performs a static analysis and generates C source code as output.
Interact with the C4Decompiler to:
· Navigate the generated C source code and the corresponding Assembler code. · Access detailed information about program elements like functions, variables, ... · Take corrective actions for any decompile issue. · Augment C4Decompiler’s static analysis results with information from other tools like debuggers.
C4Decompiler’s code analysis is open (not pattern based) and compiler agnostic. The unbiased, global analysis works with a minimal set of assumptions build in and is guided by user defined constraints (ABIs).
Complete static data flow analysis eliminates irrelevant code and yields a compact C source.
Most data types, including structures and unions, can be automatically deduced from the code.
The static control flow analysis detects basically all reachable functions automatically. The resulting control flow can then be modified by the user.
The build-in function signature generator allows you to generate complete Function Signatures (incl. data types) for functions in static libraries and DLLs. They save the unnecessary decompiling of known functionality and thereby reduce the overall decompile effort.
This is a bug fix release. It addresses most of the user reported problems and handles more functions, but doesn’t improve much the decompile quality. 64-bit Session mode and ABIs added. Corrected decoding of ‘mov reg, imm64’ instruction. Added some missing instruction functions. Exe loader handles ordinal imports from DLLs. Overlapping Basic Blocks are treated as separate Basic Block instances. Fixed problem with the CFG column in mixed C/Assembler view. Fixed the errors for reported bug stack traces.