We are proud to announce that McSema is now open source! McSema is a framework for analyzing and transforming machine-code programs to LLVM bitcode. It supports translation of x86 machine code, including integer, floating point, and SSE instructions. We previously covered some features of McSema in an earlier blog post and in our talk at ReCON 2014.
Our talk at ReCON where we first described McSema
Build instructions and demos are available in the repository and we encourage you to try them on your own. We have created a mailing list, mcsema-dev@googlegroups.com, dedicated to McSema development and usage. Questions about licensing or integrating McSema into your commercial project may be directed to opensource@trailofbits.com.
McSema is permissively licensed under a three-clause BSD license. Some code and utilities we incorporate (e.g. Intel PIN for semantics testing) have their own licenses and need to be downloaded separately.
Finally, we would like to thank DARPA for their sponsorship of McSema development and their continued support. This project would not have been possible without them.
Pingback: A Preview of McSema – ...And You Will Know Us by the Trail of Bits
Pingback: McSema: x86-Maschinencode in LLVM-Bitcode umwandeln | virtualfiles.net
Pingback: Открыт код McSema, фреймворка для преобразования машинного кода в биткод LLVM | AllUNIX.ru — Всероссийский портал о UNIX-системах
Pingback: How to extract functions from one executable to include/link in another | CL-UAT
Pingback: The Foundation of 2015: 2014 in Review – ...And You Will Know Us by the Trail of Bits
Pingback: McSema: I’m liftin’ it | Trail of Bits Blog
Pingback: Heavy lifting with McSema 2.0 | Trail of Bits Blog