diff options
| author | serpilliere <devnull@localhost> | 2011-08-26 14:19:32 +0200 |
|---|---|---|
| committer | serpilliere <devnull@localhost> | 2011-08-26 14:19:32 +0200 |
| commit | b90343ca415119d9e997c01cc3335691eee1220f (patch) | |
| tree | 4ce8a0f023be0e0a600391f74997b366040703b2 /example/emulx86_bin.py | |
| parent | bbd7e71ada55e23fe857a7c9954687ff987dec7c (diff) | |
| download | miasm-b90343ca415119d9e997c01cc3335691eee1220f.tar.gz miasm-b90343ca415119d9e997c01cc3335691eee1220f.zip | |
WORKAROUND exception while translating code
the disasm engine should not raise vm exception when translate code. for the moment use vm_exception_reset after each update_bloc
Diffstat (limited to 'example/emulx86_bin.py')
| -rwxr-xr-x | example/emulx86_bin.py | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/example/emulx86_bin.py b/example/emulx86_bin.py index 151370b4..eab57408 100755 --- a/example/emulx86_bin.py +++ b/example/emulx86_bin.py @@ -13,6 +13,9 @@ import sys if len(sys.argv) <3: print 'usage:' print "%s rawfile address_to_exec"%sys.argv[0] + print 'exemple:' + print "%s x86_sc.bin 0"%sys.argv[0] + sys.exit(0) data = open(sys.argv[1], 'rb').read() ad = sys.argv[2].lower() @@ -58,6 +61,7 @@ def run_bin(my_eip, known_blocs, code_blocs_mem_range): if not my_eip in known_blocs: updt_bloc_emul(known_blocs, in_str, my_eip, symbol_pool, code_blocs_mem_range, log_regs = log_regs, log_mn = log_mn) + vm_reset_exception() try: my_eip = vm_exec_blocs(my_eip, known_blocs) except KeyboardInterrupt: |