This repository was archived by the owner on May 18, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 52
This repository was archived by the owner on May 18, 2022. It is now read-only.
SimValueError while constructing CFG #139
Copy link
Copy link
Open
Description
Hi!
I'm trying to analyze a MIPS R3000 binary with angr. I load the binary with
b = angr.Project(
filename,
load_options={
'auto_load_libs': True,
'except_missing_libs': True
},
use_sim_procedures=False
)
And tried to construct the CFG of the binary with cfg = b.analyses.CFG(). While the analysis is running, I received a large number of warnings from simuvex.engines.vex.engine in the following form:
<address> hit an error while analyzing statement <number> e.g. 0x200c4c0 hit an error while analyzing statement 10. For each such warning, I also see a traceback:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/engine.py", line 203, in _handle_irsb
self._handle_statement(state, successors, stmt)
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/engine.py", line 309, in _handle_statement
s_stmt = translate_stmt(stmt, state)
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/statements/__init__.py", line 29, in translate_stmt
s.process()
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/statements/base.py", line 20, in process
self._execute()
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/statements/put.py", line 9, in _execute
data = self._translate_expr(self.stmt.data)
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/statements/base.py", line 27, in _translate_expr
e = translate_expr(expr, self.state)
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/expressions/__init__.py", line 14, in translate_expr
e.process()
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/expressions/base.py", line 36, in process
self._execute()
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/engines/vex/expressions/rdtmp.py", line 11, in _execute
self.expr = self.state.scratch.tmp_expr(self._expr.tmp)
File "/usr/local/lib/python2.7/dist-packages/simuvex-6.7.4.12-py2.7.egg/simuvex/plugins/scratch.py", line 93, in tmp_expr
'slicing.' % tmp
SimValueError: VEX temp variable <number> does not exist. This is usually the result of an incorrect slicing.
The sample triggering this issue: https://www.dropbox.com/s/l4wgbd1evsuln5b/1dc7177fc3dc27cbb555a87412599a59744425b53fbcb4b8dfb61596a183d37d.zip?dl=0
Could You look into this issue?
Metadata
Metadata
Assignees
Labels
No labels