about summary refs log tree commit diff stats
path: root/example/samples/x86_32_mod.S
diff options
context:
space:
mode:
authorCamille Mougey <camille.mougey@cea.fr>2015-01-06 18:03:10 +0100
committerCamille Mougey <camille.mougey@cea.fr>2015-01-23 17:24:41 +0100
commitb495563e636c223be39d5ed516572f6a8406b2b3 (patch)
treefbe737976e1a77582e3a2733b36cb79dafdaa3ff /example/samples/x86_32_mod.S
parentfc814adc2c5ee28e282b4212fefa187a59ccf46d (diff)
downloadmiasm-b495563e636c223be39d5ed516572f6a8406b2b3.tar.gz
miasm-b495563e636c223be39d5ed516572f6a8406b2b3.zip
Examples: Move used samples to a common place: /samples
Diffstat (limited to 'example/samples/x86_32_mod.S')
-rw-r--r--example/samples/x86_32_mod.S35
1 files changed, 35 insertions, 0 deletions
diff --git a/example/samples/x86_32_mod.S b/example/samples/x86_32_mod.S
new file mode 100644
index 00000000..df7792af
--- /dev/null
+++ b/example/samples/x86_32_mod.S
@@ -0,0 +1,35 @@
+main:
+    CALL test_automod
+    CALL test_automod
+    RET
+
+test_automod:
+    PUSH EBP
+    MOV  EBP, ESP
+
+loop:
+    MOV  EAX, 0
+    CMP  EAX, 0
+    JMP  mod_addr
+mod_addr:
+    JNZ  end
+
+    PUSH 0
+    PUSH title
+    PUSH msg
+    PUSH 0
+    CALL DWORD PTR [ MessageBoxA ]
+
+    ; automodif code
+    MOV BYTE PTR [mod_addr], 0xEB
+    JMP loop
+end:
+    MOV BYTE PTR [mod_addr], 0x75
+    MOV ESP, EBP
+    POP EBP
+    RET
+
+title:
+.string "Hello!"
+msg:
+.string "World!"