5 ms·
Pardon my ignorance, (I don't mean to be dense here) but what the heck is this doing? It sounds like recompiling machine code into intermediate code. Is that
by beernutz 12y ago
Pardon my ignorance, (I don't mean to be dense here) but what the heck is this doing? It sounds like recompiling machine code into intermediate code. Is that a fair (if short and over simple) description?
- frakturfreund 12y agoYes, it’s a Disassembler: https://en.wikipedia.org/wiki/Disassembler https://en.wikipedia.org/wiki/Disassembler
- tptacek 12y agoIt's more than a disassembler. Disassemblers are easy to write. Stateful transformation is much harder.
- SloopJon 12y agoThe announcement links to an earlier blog post (pardon my formatting): http://blog.trailofbits.com/2014/06/23/a-preview-of-mcsema/ http://blog.trailofbits.com/2014/06/23/a-preview-of-mcsema/ "McSema translates x86 machine code into LLVM bitcode. "Why would we do such a crazy thing? "Because we wanted to analyze existing binary applications, and reasoning about LLVM bitcode is much easier than reasoning about x86 instructions. "Not only is it easier to reason about LLVM bitcode, but it is easier to manipulate and re-target bitcode to a different architecture."
- beernutz 12y agoThank you. I missed that post.