diff options
| author | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2018-04-17 16:08:45 +0200 |
|---|---|---|
| committer | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2018-04-19 08:28:15 +0200 |
| commit | 4cbc30d367d0bbd7a4f33ef6fe3872cd6e468581 (patch) | |
| tree | f6a23e4bd850d73b081e435e94ca64e5750aa6a4 | |
| parent | 26a551b57b7d8dd7e9a9245eef5dee1d16864c47 (diff) | |
| download | miasm-4cbc30d367d0bbd7a4f33ef6fe3872cd6e468581.tar.gz miasm-4cbc30d367d0bbd7a4f33ef6fe3872cd6e468581.zip | |
PE: fix resource rebuild
| -rw-r--r-- | miasm2/jitter/loader/pe.py | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/miasm2/jitter/loader/pe.py b/miasm2/jitter/loader/pe.py index 65bf284b..2fe4cd3f 100644 --- a/miasm2/jitter/loader/pe.py +++ b/miasm2/jitter/loader/pe.py @@ -325,15 +325,15 @@ def vm2pe(myjit, fname, libs=None, e_orig=None, xx = str(mye) mye.content = xx ad = e_orig.NThdr.optentries[pe.DIRECTORY_ENTRY_RESOURCE].rva + size = e_orig.NThdr.optentries[pe.DIRECTORY_ENTRY_RESOURCE].size log.debug('dirres 0x%x', ad) if ad != 0: mye.NThdr.optentries[pe.DIRECTORY_ENTRY_RESOURCE].rva = ad - mye.DirRes = pe.DirRes.unpack(xx, ad, mye) - # log.debug('%s' % repr(mye.DirRes)) - s_res = mye.SHList.add_section( - name="myres", rawsize=len(mye.DirRes)) - mye.DirRes.set_rva(s_res.addr) + mye.NThdr.optentries[pe.DIRECTORY_ENTRY_RESOURCE].size = size + mye.DirRes = pe.DirRes.unpack(mye.img_rva, ad, mye) log.debug('%r', mye.DirRes) + s_res = mye.SHList.add_section(name="myres", rawsize=len(mye.DirRes)) + mye.DirRes.set_rva(s_res.addr) # generation open(fname, 'wb').write(str(mye)) return mye |