McSema: Static Translation of x86 Instruction Semantics to LLVM
Channel: trailofbits
Date: 2014-08-07

We have developed McSema, a new framework for analyzing and transforming machine-code programs. McSema translates x86 instructions into LLVM bitcode, with a translation strategy that allows for analysis by standard compiler algorithms. We will demonstrate McSema by adding control flow integrity to existing Windows DLLs. McSema is open source, permissively licensed, and will soon be available for use and modification.