RetDec
	RetDec is a retargetable machine-code decompiler based on LLVM.
 
	The decompiler is not limited to any particular target architecture, operating system, or executable file format:
 
		Supported file formats: ELF, PE, Mach-O, COFF, AR (archive), Intel HEX, and raw machine code.
	
	
		Supported architectures (32b only): Intel x86, ARM, MIPS, PIC32, and PowerPC.
	
	Features:
 
		Static analysis of executable files with detailed information.
	
	
		Compiler and packer detection.
	
	
		Loading and instruction decoding.
	
	
		Signature-based removal of statically linked library code.
	
	
		Extraction and utilization of debugging information (DWARF, PDB).
	
	
		Reconstruction of instruction idioms.
	
	
		Detection and reconstruction of C++ class hierarchies (RTTI, vtables).
	
	
		Demangling of symbols from C++ binaries (GCC, MSVC, Borland).
	
	
		Reconstruction of functions, types, and high-level constructs.
	
	
		Integrated disassembler.
	
	
		Output in two high-level languages: C and a Python-like language.
	
	
		Generation of call graphs, control-flow graphs, and various statistics.
	
	 
 
	https://github.com/avast-tl/retdec