diff options
| author | Camille Mougey <commial@gmail.com> | 2017-02-17 15:04:56 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-02-17 15:04:56 +0100 |
| commit | 688d21da608c32da84e093316ab32a4fa7fc51c8 (patch) | |
| tree | e1f70d61f6d323fce31a9d9b9ed3d9fb4bb3c8be /example/samples | |
| parent | d30ea3788133fffc294602ee6cce88b407caaf4a (diff) | |
| parent | c3bef0610972451a5eef3accb7da4618794ddff9 (diff) | |
| download | miasm-688d21da608c32da84e093316ab32a4fa7fc51c8.tar.gz miasm-688d21da608c32da84e093316ab32a4fa7fc51c8.zip | |
Merge pull request #495 from serpilliere/objc_feature
Objc feature
Diffstat (limited to 'example/samples')
| -rw-r--r-- | example/samples/human.S | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/example/samples/human.S b/example/samples/human.S new file mode 100644 index 00000000..750aa5b7 --- /dev/null +++ b/example/samples/human.S @@ -0,0 +1,41 @@ + ;; Walk a human link list and print its information +main: + TEST RDI, RDI + JZ end + + PUSH RBX + MOV RBX, RDI +loop: + LEA RSI, QWORD PTR [RBX+0x10] + LEA RDI, QWORD PTR [name-_+RIP] + XOR EAX, EAX + CALL printf + + MOVZX ESI, WORD PTR [RBX+0x8] + LEA RDI, QWORD PTR [age-_+RIP] + XOR EAX, EAX + CALL printf + + MOV ESI, DWORD PTR [RBX+0xC] + XOR EAX, EAX + LEA RDI, QWORD PTR [height-_+RIP] + CALL printf + + MOV RBX, QWORD PTR [RBX] + TEST RBX, RBX + JNZ loop + + POP RBX +end: + RET + +printf: + ;; Dummy printf + RET + +age: +.string "Age: %d\n" +height: +.string "Height: %d\n" +name: +.string "Name: %s\n" |