Skip to content

Instantly share code, notes, and snippets.

@koturn
Created April 2, 2017 13:20
Show Gist options
  • Save koturn/80fdd04ceaea1f03c1a1d6974085b68b to your computer and use it in GitHub Desktop.
Save koturn/80fdd04ceaea1f03c1a1d6974085b68b to your computer and use it in GitHub Desktop.
BrainfuckのHello, Worldをx64にしたやつ
hello.out: ファイル形式 elf64-x86-64
セクション .text の逆アセンブル:
00000000080480b0 <.text>:
80480b0: 48 bb 00 80 24 08 00 movabs $0x8248000,%rbx
80480b7: 00 00 00
80480ba: 80 03 0a addb $0xa,(%rbx)
80480bd: 48 c7 c0 07 00 00 00 mov $0x7,%rax
80480c4: f6 23 mulb (%rbx)
80480c6: 48 ff c3 inc %rbx
80480c9: 00 03 add %al,(%rbx)
80480cb: 48 ff cb dec %rbx
80480ce: 48 c7 c0 0a 00 00 00 mov $0xa,%rax
80480d5: f6 23 mulb (%rbx)
80480d7: 48 81 c3 02 00 00 00 add $0x2,%rbx
80480de: 00 03 add %al,(%rbx)
80480e0: 48 81 eb 02 00 00 00 sub $0x2,%rbx
80480e7: 48 c7 c0 03 00 00 00 mov $0x3,%rax
80480ee: f6 23 mulb (%rbx)
80480f0: 48 81 c3 03 00 00 00 add $0x3,%rbx
80480f7: 00 03 add %al,(%rbx)
80480f9: 48 81 eb 03 00 00 00 sub $0x3,%rbx
8048100: 48 8b 03 mov (%rbx),%rax
8048103: 48 81 c3 04 00 00 00 add $0x4,%rbx
804810a: 00 03 add %al,(%rbx)
804810c: 48 81 eb 04 00 00 00 sub $0x4,%rbx
8048113: c6 03 00 movb $0x0,(%rbx)
8048116: 48 ff c3 inc %rbx
8048119: 80 03 02 addb $0x2,(%rbx)
804811c: 48 c7 c0 01 00 00 00 mov $0x1,%rax
8048123: ba 01 00 00 00 mov $0x1,%edx
8048128: 48 89 de mov %rbx,%rsi
804812b: bf 01 00 00 00 mov $0x1,%edi
8048130: 0f 05 syscall
8048132: 48 ff c3 inc %rbx
8048135: fe 03 incb (%rbx)
8048137: 48 c7 c0 01 00 00 00 mov $0x1,%rax
804813e: ba 01 00 00 00 mov $0x1,%edx
8048143: 48 89 de mov %rbx,%rsi
8048146: bf 01 00 00 00 mov $0x1,%edi
804814b: 0f 05 syscall
804814d: 80 03 07 addb $0x7,(%rbx)
8048150: 48 c7 c0 01 00 00 00 mov $0x1,%rax
8048157: ba 01 00 00 00 mov $0x1,%edx
804815c: 48 89 de mov %rbx,%rsi
804815f: bf 01 00 00 00 mov $0x1,%edi
8048164: 0f 05 syscall
8048166: 48 c7 c0 01 00 00 00 mov $0x1,%rax
804816d: ba 01 00 00 00 mov $0x1,%edx
8048172: 48 89 de mov %rbx,%rsi
8048175: bf 01 00 00 00 mov $0x1,%edi
804817a: 0f 05 syscall
804817c: 80 03 03 addb $0x3,(%rbx)
804817f: 48 c7 c0 01 00 00 00 mov $0x1,%rax
8048186: ba 01 00 00 00 mov $0x1,%edx
804818b: 48 89 de mov %rbx,%rsi
804818e: bf 01 00 00 00 mov $0x1,%edi
8048193: 0f 05 syscall
8048195: 48 ff c3 inc %rbx
8048198: 80 03 02 addb $0x2,(%rbx)
804819b: 48 c7 c0 01 00 00 00 mov $0x1,%rax
80481a2: ba 01 00 00 00 mov $0x1,%edx
80481a7: 48 89 de mov %rbx,%rsi
80481aa: bf 01 00 00 00 mov $0x1,%edi
80481af: 0f 05 syscall
80481b1: 48 81 eb 02 00 00 00 sub $0x2,%rbx
80481b8: 80 03 0f addb $0xf,(%rbx)
80481bb: 48 c7 c0 01 00 00 00 mov $0x1,%rax
80481c2: ba 01 00 00 00 mov $0x1,%edx
80481c7: 48 89 de mov %rbx,%rsi
80481ca: bf 01 00 00 00 mov $0x1,%edi
80481cf: 0f 05 syscall
80481d1: 48 ff c3 inc %rbx
80481d4: 48 c7 c0 01 00 00 00 mov $0x1,%rax
80481db: ba 01 00 00 00 mov $0x1,%edx
80481e0: 48 89 de mov %rbx,%rsi
80481e3: bf 01 00 00 00 mov $0x1,%edi
80481e8: 0f 05 syscall
80481ea: 80 03 03 addb $0x3,(%rbx)
80481ed: 48 c7 c0 01 00 00 00 mov $0x1,%rax
80481f4: ba 01 00 00 00 mov $0x1,%edx
80481f9: 48 89 de mov %rbx,%rsi
80481fc: bf 01 00 00 00 mov $0x1,%edi
8048201: 0f 05 syscall
8048203: 80 2b 06 subb $0x6,(%rbx)
8048206: 48 c7 c0 01 00 00 00 mov $0x1,%rax
804820d: ba 01 00 00 00 mov $0x1,%edx
8048212: 48 89 de mov %rbx,%rsi
8048215: bf 01 00 00 00 mov $0x1,%edi
804821a: 0f 05 syscall
804821c: 80 2b 08 subb $0x8,(%rbx)
804821f: 48 c7 c0 01 00 00 00 mov $0x1,%rax
8048226: ba 01 00 00 00 mov $0x1,%edx
804822b: 48 89 de mov %rbx,%rsi
804822e: bf 01 00 00 00 mov $0x1,%edi
8048233: 0f 05 syscall
8048235: 48 ff c3 inc %rbx
8048238: fe 03 incb (%rbx)
804823a: 48 c7 c0 01 00 00 00 mov $0x1,%rax
8048241: ba 01 00 00 00 mov $0x1,%edx
8048246: 48 89 de mov %rbx,%rsi
8048249: bf 01 00 00 00 mov $0x1,%edi
804824e: 0f 05 syscall
8048250: 48 ff c3 inc %rbx
8048253: 48 c7 c0 01 00 00 00 mov $0x1,%rax
804825a: ba 01 00 00 00 mov $0x1,%edx
804825f: 48 89 de mov %rbx,%rsi
8048262: bf 01 00 00 00 mov $0x1,%edi
8048267: 0f 05 syscall
8048269: c6 03 0a movb $0xa,(%rbx)
804826c: 48 c7 c0 01 00 00 00 mov $0x1,%rax
8048273: ba 01 00 00 00 mov $0x1,%edx
8048278: 48 89 de mov %rbx,%rsi
804827b: bf 01 00 00 00 mov $0x1,%edi
8048280: 0f 05 syscall
8048282: b8 3c 00 00 00 mov $0x3c,%eax
8048287: bf 00 00 00 00 mov $0x0,%edi
804828c: 0f 05 syscall
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment