about summary refs log tree commit diff stats
path: root/example/test_dis.py
diff options
context:
space:
mode:
Diffstat (limited to 'example/test_dis.py')
-rw-r--r--example/test_dis.py20
1 files changed, 13 insertions, 7 deletions
diff --git a/example/test_dis.py b/example/test_dis.py
index ee71b7a2..ef314893 100644
--- a/example/test_dis.py
+++ b/example/test_dis.py
@@ -101,14 +101,20 @@ b = open(fname).read()
 default_addr = 0
 bs = None
 if b.startswith('MZ'):
-    e = pe_init.PE(b)
-    if e.isPE() and e.NTsig.signature_value == 0x4550:
-        bs = bin_stream_pe(e.virt)
-        default_addr = e.rva2virt(e.Opthdr.AddressOfEntryPoint)
+    try:
+        e = pe_init.PE(b)
+        if e.isPE() and e.NTsig.signature_value == 0x4550:
+            bs = bin_stream_pe(e.virt)
+            default_addr = e.rva2virt(e.Opthdr.AddressOfEntryPoint)
+    except:
+        log.error('Cannot read PE!')
 elif b.startswith('\x7fELF'):
-    e = elf_init.ELF(b)
-    bs = bin_stream_elf(e.virt)
-    default_addr = e.Ehdr.entry
+    try:
+        e = elf_init.ELF(b)
+        bs = bin_stream_elf(e.virt)
+        default_addr = e.Ehdr.entry
+    except:
+        log.error('Cannot read ELF!')
 
 
 if bs is None or options.shiftoffset is not None: