Comments (5)
Hi,
I'll answer the second part first: the wide nop support should be pushed soon, along with many other changes (like newer LLVM version support). For now you have two options: edit x86Instrs_misc.cpp, add an entry for the wide nop and point it to the current NOP handler. Alternatively, you can try passing the -ignore-unsupported
option to cfg_to_bc
to ignore unsupported instructions during translation.
As for the jump tables, the current recommended solution is to use IDA for CFG recovery. It has much better jump table heuristics than we do. We would really like to make bin_descend work better, but other priorities have taken up most of our resources.
from mcsema.
Pushed supported for wide nop amongst many other new instructions.
from mcsema.
Thanks we'll give it a spin first thing next week, and report back (we tried the above suggestions,
which allowed us to build executables, but they would SIGSEGV.
Just a time frame question. How far down the track is 64 bits?
from mcsema.
Its not currently on our radar, but it shouldn't be too much of a problem. Most (all?) of the instruction translation is parametrized by bit width. The big changes that would be needed is finding and removing some 32-bit-isms, adding new registers, and probably 64-bit calling convention/stack layout for some of the callback/external call stuff.
from mcsema.
Closing since the issues seem to have been kind of resolved.
from mcsema.
Related Issues (20)
- Docker build error HOT 1
- dyninst frontend is not gettting built on Linux HOT 4
- Segfault while running lifted binary HOT 1
- How not to be explicit about "runtime's memory" HOT 4
- Decompiling Windows binaries (32bit and 64bit) does not work at all HOT 3
- Building mcsema with clang12 error HOT 10
- Official support for running mcsema with rizin/cutter HOT 2
- build error on ubuntu 20.04
- Dockerfile is not up-to-date with remill dependency HOT 2
- Feature request: Improve installation process with precompiled binaries HOT 1
- to see details in the generated 'xxx.cfg'
- fatal error: 'anvill/Program.h' file not found HOT 1
- Can you walk through the example on docs/McSemaWalkthrough.md and check if it still works?
- Unable to build the docker image
- error while translating function with function pointer as parameter HOT 5
- wsl-1.0 ubuntu20+win ida7.5 counter a error of
- Converting 64 bit program to 32 bit HOT 2
- Use mcsema with IDA Home
- Issue in disassembling binaries
- how to make llvm ir "store" volatile? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mcsema.