Skip to content

lornix/libbeauty

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libbeauty

Decompiler and Reverse Engineering tool

The current aim has been changed to the following:

  1. Take a x86_64 binary .o file as input.
  2. Create an equivalent LLVM IR .o as output. Also referred to as .bc or .ll (llvm.org) file formats.
  3. Add automated testing.

Once the above works, the aims will be expanded to include:

  1. Also support x86_32 binary .o file as input.
  2. Also support ARM binary .o file as input.
  3. Create .c source code files from the LLVM IR .o file.
  4. Implement support for self modifying code.

TODO:
1) Type inference propagation (TIP).
When registers are converted to SSA form, they are called "labels".
In order to get from ASM to LLVM IR, we need to know if labels are pointers or not.
Also, we need to know the bit width of labels.
If anyone can help me in this area I would appreciate it.

Note: We only have this last todo item left, and this tool will become really useful!

About

Decompiler and Reverse Engineering tool

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 63.3%
  • C++ 33.1%
  • PHP 2.5%
  • Other 1.1%