McSema 2.0 has been a very big release for us with a complete re-architecture of how we do instruction semantics definitions and lifting. Aside from architectural improvements, it is also much faster than before!
Transpiling from x86-64 <-> AArch64 has been something we thought should be possible and we were very excited to get it working.
We're planning some more blog posts in the near future to talk about other McSema features and some use cases for x86 to LLVM translation.
I was peeking at McSema the other day. An idea I was tossing around in my head is whether I could have closed-source generic binaries run in WASM with it.
Emscripten emulates syscalls in a lot of ways. I think the LLVM standalone WASM (i.e. sans emscripten) expects those to be imported but I don't remember.
8 comments
[ 969 ms ] story [ 1694 ms ] threadMcSema 2.0 has been a very big release for us with a complete re-architecture of how we do instruction semantics definitions and lifting. Aside from architectural improvements, it is also much faster than before!
Transpiling from x86-64 <-> AArch64 has been something we thought should be possible and we were very excited to get it working.
We're planning some more blog posts in the near future to talk about other McSema features and some use cases for x86 to LLVM translation.
Edit: just saw I'm not the only one w/ the thought - https://twitter.com/dguido/status/497835951767695360
[1] https://en.wikipedia.org/wiki/Macsyma