diff options
| author | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2016-07-04 09:10:21 +0200 |
|---|---|---|
| committer | Fabrice Desclaux <fabrice.desclaux@cea.fr> | 2016-08-10 14:08:11 +0200 |
| commit | 96f493070b21294a505c0d36c578479d2f7642f9 (patch) | |
| tree | 42149b2db598792a2c18ada384c340ce8fd9ea27 /miasm2/jitter/loader/pe.py | |
| parent | ec147b307421d08848dbf114335bb4860e66c4cc (diff) | |
| download | miasm-96f493070b21294a505c0d36c578479d2f7642f9.tar.gz miasm-96f493070b21294a505c0d36c578479d2f7642f9.zip | |
Loader/pe: Add ordinal export
Diffstat (limited to 'miasm2/jitter/loader/pe.py')
| -rw-r--r-- | miasm2/jitter/loader/pe.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/miasm2/jitter/loader/pe.py b/miasm2/jitter/loader/pe.py index bb6740af..e8dacb55 100644 --- a/miasm2/jitter/loader/pe.py +++ b/miasm2/jitter/loader/pe.py @@ -98,6 +98,12 @@ def get_export_name_addr_list(e): # hex(e.rva2virt(addr.rva)))) out.append( (o.ordinal + e.DirExport.expdesc.base, e.rva2virt(addr.rva))) + + for i, s in enumerate(e.DirExport.f_address): + if not s.rva: + continue + out.append((i + e.DirExport.expdesc.base, e.rva2virt(s.rva))) + return out @@ -396,6 +402,7 @@ class libimp_pe(libimp): c_name = canon_libname_libfunc( name_inv[libad], imp_ord_or_name) self.fad2cname[ad] = c_name + log.debug("Add func %s %s", hex(ad), c_name) self.fad2info[ad] = libad, imp_ord_or_name def gen_new_lib(self, target_pe, filter_import=lambda peobj, ad: True, **kwargs): |