Update of /cvsroot/wisp/wisp/users/dig
In directory sc8-pr-cvs1:/tmp/cvs-serv20370
Modified Files:
make-pe-exe.py
Log Message:
use clearer syntax
Index: make-pe-exe.py
===================================================================
RCS file: /cvsroot/wisp/wisp/users/dig/make-pe-exe.py,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- make-pe-exe.py 13 May 2003 18:13:22 -0000 1.46
+++ make-pe-exe.py 13 May 2003 21:04:20 -0000 1.47
@@ -209,9 +209,9 @@
text[::1] = 0x68; text[::4] = 15 # push 15
text[::1] = 0x68; text[::4] = '&message' # push &message
text[::1] = 0x50 # push %eax
-text.emit_byte(0xe8); text.emit_tetra_sum(['&WriteFile@kernel32'], delta = -4, relative = 1) # call WriteFile
-text.emit_byte(0x68); text.emit_tetra(0) # push 0
-text.emit_byte(0xe8); text.emit_tetra_sum(['&ExitProcess@kernel32'], delta = -4, relative = 1) # call ExitProcess
+text[::1] = 0xe8; text.emit_tetra_sum(['&WriteFile@kernel32'], delta = -4, relative = 1) # call WriteFile
+text[::1] = 0x68; text[::4] = 0 # push 0
+text[::1] = 0xe8; text.emit_tetra_sum(['&ExitProcess@kernel32'], delta = -4, relative = 1) # call ExitProcess
print 'TEXT'; text.dump()
@@ -286,22 +286,21 @@
for sym in imports_by_dlls[dll].keys():
imports.place_symbol('&.imports/thunk/%s@%s #rva' % (sym, dll))
imports.align(2)
- imports.emit_wyde(0) # ordinal
+ imports[::2] = 0 # ordinal
imports.emit_string(sym)
- imports.emit_byte(0)
+ imports[::1] = 0
# emit DLL names
for dll in imports_by_dlls.keys():
imports.place_symbol('&.imports/%s/dll-name #rva' % dll)
imports.emit_string(dll + '.dll')
- imports.emit_byte(0)
+ imports[::1] = 0
# generate stub procedures
for dll in imports_by_dlls.keys():
for sym in imports_by_dlls[dll].keys():
istubs.align(8)
istubs.place_symbol('&' + sym + '@' + dll)
- istubs.emit_byte(0xFF)
- istubs.emit_byte(0x25)
+ istubs[::1] = 0xFF, 0x25
istubs.emit_tetra_sum(['&.imports/slot/' + sym + '@' + dll])
# paste sections together
|