diff options
| author | Camille Mougey <commial@gmail.com> | 2015-05-26 08:27:45 +0200 |
|---|---|---|
| committer | Camille Mougey <commial@gmail.com> | 2015-05-26 08:27:45 +0200 |
| commit | 027817a6f382d8c603631e459ac2fd7d73851bed (patch) | |
| tree | d3980562e8c1500d628570599c19a99afeccd553 | |
| parent | f69ba70ca17155de58811b10f52b4c011865a21d (diff) | |
| parent | feaa2b486ab69d34a500bcab2ec19b169bbd53c3 (diff) | |
| download | miasm-027817a6f382d8c603631e459ac2fd7d73851bed.tar.gz miasm-027817a6f382d8c603631e459ac2fd7d73851bed.zip | |
Merge pull request #168 from serpilliere/fix_vm2pe_64
Loader/Pe: fix vm2pe for 64 bit pe
| -rw-r--r-- | miasm2/jitter/loader/pe.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/miasm2/jitter/loader/pe.py b/miasm2/jitter/loader/pe.py index 7bf8482b..3233cd4b 100644 --- a/miasm2/jitter/loader/pe.py +++ b/miasm2/jitter/loader/pe.py @@ -226,7 +226,11 @@ def vm2pe(myjit, fname, libs=None, e_orig=None, min_addr=None, max_addr=None, min_section_offset=0x1000, img_base=None, added_funcs=None): - mye = pe_init.PE() + if e_orig: + size = e_orig._wsize + else: + size = 32 + mye = pe_init.PE(wsize=size) if min_addr is None and e_orig is not None: min_addr = min([e_orig.rva2virt(s.addr) for s in e_orig.SHList]) @@ -241,7 +245,7 @@ def vm2pe(myjit, fname, libs=None, e_orig=None, all_mem = myjit.vm.get_all_memory() addrs = all_mem.keys() addrs.sort() - mye.Opthdr.AddressOfEntryPoint = mye.virt2rva(myjit.cpu.EIP) + mye.Opthdr.AddressOfEntryPoint = mye.virt2rva(myjit.pc) first = True for ad in addrs: if not min_addr <= ad < max_addr: |