Trail of Bits

x86 / ARM / SPARC

Remill

Machine-code lifter that translates instructions into LLVM bitcode for later analysis and transformation.

View on GitHub lifting-bits/remill

Best for

Recovering analyzable program structure from raw instructions.

Surface

x86 / ARM / SPARC

Catalog group

Analyze binaries and reverse engineer behavior

Repository

lifting-bits/remill

From the README

Remill is a static binary translator that translates machine code instructions into LLVM bitcode. It translates AArch64 (64-bit ARMv8), SPARC32 (SPARCv8), SPARC64 (SPARCv9), x86 and amd64 machine code (including AVX and AVX512) into LLVM bitcode. AArch32 (32-bit ARMv8 / ARMv7) support is underway. Remill focuses on accurately lifting instructions. It is meant to be used as a library for other tools, e.g. McSema.
Read the full README on GitHub ↗

Related tools · Analyze binaries and reverse engineer behavior