hex0.txt 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. hex0.bin: file format elf64-x86-64
  2. Disassembly of section .data:
  3. 0000000000600078 <_start>:
  4. 600078: e8 b3 00 00 00 callq 600130 <getchar>
  5. 60007d: 48 83 f8 ff cmp $0xffffffffffffffff,%rax
  6. 600081: 74 47 je 6000ca <_start.done>
  7. 600083: 48 83 f8 20 cmp $0x20,%rax
  8. 600087: 74 ef je 600078 <_start>
  9. 600089: 48 83 f8 09 cmp $0x9,%rax
  10. 60008d: 74 e9 je 600078 <_start>
  11. 60008f: 48 83 f8 0a cmp $0xa,%rax
  12. 600093: 74 e3 je 600078 <_start>
  13. 600095: 48 83 f8 23 cmp $0x23,%rax
  14. 600099: 74 3f je 6000da <skip_comment>
  15. 60009b: e8 4d 00 00 00 callq 6000ed <hex_digit>
  16. 6000a0: 48 c1 e0 04 shl $0x4,%rax
  17. 6000a4: 48 89 05 ec 00 00 00 mov %rax,0xec(%rip) # 600197 <oct>
  18. 6000ab: e8 80 00 00 00 callq 600130 <getchar>
  19. 6000b0: e8 38 00 00 00 callq 6000ed <hex_digit>
  20. 6000b5: 48 09 05 db 00 00 00 or %rax,0xdb(%rip) # 600197 <oct>
  21. 6000bc: 48 8b 05 d4 00 00 00 mov 0xd4(%rip),%rax # 600197 <oct>
  22. 6000c3: e8 a2 00 00 00 callq 60016a <putchar>
  23. 6000c8: eb ae jmp 600078 <_start>
  24. 00000000006000ca <_start.done>:
  25. 6000ca: 48 c7 c0 3c 00 00 00 mov $0x3c,%rax
  26. 6000d1: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
  27. 6000d8: 0f 05 syscall
  28. 00000000006000da <skip_comment>:
  29. 6000da: e8 51 00 00 00 callq 600130 <getchar>
  30. 6000df: 48 83 f8 ff cmp $0xffffffffffffffff,%rax
  31. 6000e3: 74 3b je 600120 <die>
  32. 6000e5: 48 83 f8 0a cmp $0xa,%rax
  33. 6000e9: 74 8d je 600078 <_start>
  34. 6000eb: eb ed jmp 6000da <skip_comment>
  35. 00000000006000ed <hex_digit>:
  36. 6000ed: 48 83 f8 30 cmp $0x30,%rax
  37. 6000f1: 7c 0b jl 6000fe <hex_digit.next1>
  38. 6000f3: 48 83 f8 39 cmp $0x39,%rax
  39. 6000f7: 7f 05 jg 6000fe <hex_digit.next1>
  40. 6000f9: 48 83 e8 30 sub $0x30,%rax
  41. 6000fd: c3 retq
  42. 00000000006000fe <hex_digit.next1>:
  43. 6000fe: 48 83 f8 61 cmp $0x61,%rax
  44. 600102: 7c 0b jl 60010f <hex_digit.next2>
  45. 600104: 48 83 f8 66 cmp $0x66,%rax
  46. 600108: 7f 05 jg 60010f <hex_digit.next2>
  47. 60010a: 48 83 e8 57 sub $0x57,%rax
  48. 60010e: c3 retq
  49. 000000000060010f <hex_digit.next2>:
  50. 60010f: 48 83 f8 41 cmp $0x41,%rax
  51. 600113: 7c 0b jl 600120 <die>
  52. 600115: 48 83 f8 46 cmp $0x46,%rax
  53. 600119: 7f 05 jg 600120 <die>
  54. 60011b: 48 83 e8 37 sub $0x37,%rax
  55. 60011f: c3 retq
  56. 0000000000600120 <die>:
  57. 600120: 48 c7 c0 3c 00 00 00 mov $0x3c,%rax
  58. 600127: 48 c7 c7 01 00 00 00 mov $0x1,%rdi
  59. 60012e: 0f 05 syscall
  60. 0000000000600130 <getchar>:
  61. 600130: 48 c7 c0 00 00 00 00 mov $0x0,%rax
  62. 600137: 48 c7 c7 00 00 00 00 mov $0x0,%rdi
  63. 60013e: 48 8d 35 4a 00 00 00 lea 0x4a(%rip),%rsi # 60018f <buf>
  64. 600145: 48 c7 c2 01 00 00 00 mov $0x1,%rdx
  65. 60014c: 0f 05 syscall
  66. 60014e: 48 83 f8 01 cmp $0x1,%rax
  67. 600152: 75 0e jne 600162 <getchar.getchar_fail>
  68. 600154: 48 c7 c0 00 00 00 00 mov $0x0,%rax
  69. 60015b: 8a 05 2e 00 00 00 mov 0x2e(%rip),%al # 60018f <buf>
  70. 600161: c3 retq
  71. 0000000000600162 <getchar.getchar_fail>:
  72. 600162: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax
  73. 600169: c3 retq
  74. 000000000060016a <putchar>:
  75. 60016a: 88 05 1f 00 00 00 mov %al,0x1f(%rip) # 60018f <buf>
  76. 600170: 48 c7 c0 01 00 00 00 mov $0x1,%rax
  77. 600177: 48 c7 c7 01 00 00 00 mov $0x1,%rdi
  78. 60017e: 48 8d 35 0a 00 00 00 lea 0xa(%rip),%rsi # 60018f <buf>
  79. 600185: 48 c7 c2 01 00 00 00 mov $0x1,%rdx
  80. 60018c: 0f 05 syscall
  81. 60018e: c3 retq
  82. 000000000060018f <buf>:
  83. ...
  84. 0000000000600197 <oct>:
  85. ...
  86. Disassembly of section .debug_aranges:
  87. 0000000000000000 <.debug_aranges>:
  88. 0: 2c 00 sub $0x0,%al
  89. 2: 00 00 add %al,(%rax)
  90. 4: 02 00 add (%rax),%al
  91. 6: 00 00 add %al,(%rax)
  92. 8: 00 00 add %al,(%rax)
  93. a: 08 00 or %al,(%rax)
  94. c: 00 00 add %al,(%rax)
  95. e: 00 00 add %al,(%rax)
  96. 10: 80 00 40 addb $0x40,(%rax)
  97. ...
  98. Disassembly of section .debug_info:
  99. 0000000000000000 <.debug_info>:
  100. 0: 5b pop %rbx
  101. 1: 00 00 add %al,(%rax)
  102. 3: 00 02 add %al,(%rdx)
  103. 5: 00 00 add %al,(%rax)
  104. 7: 00 00 add %al,(%rax)
  105. 9: 00 08 add %cl,(%rax)
  106. b: 01 00 add %eax,(%rax)
  107. d: 00 00 add %al,(%rax)
  108. f: 00 80 00 40 00 00 add %al,0x4000(%rax)
  109. 15: 00 00 add %al,(%rax)
  110. 17: 00 80 00 40 00 00 add %al,0x4000(%rax)
  111. 1d: 00 00 add %al,(%rax)
  112. 1f: 00 68 65 add %ch,0x65(%rax)
  113. 22: 78 30 js 54 <_start-0x600024>
  114. 24: 2e 61 cs (bad)
  115. 26: 73 6d jae 95 <_start-0x5fffe3>
  116. 28: 00 2f add %ch,(%rdi)
  117. 2a: 68 6f 6d 65 2f pushq $0x2f656d6f
  118. 2f: 69 76 79 2f 43 6f 64 imul $0x646f432f,0x79(%rsi),%esi
  119. 36: 65 2f gs (bad)
  120. 38: 67 75 69 addr32 jne a4 <_start-0x5fffd4>
  121. 3b: 78 2d js 6a <_start-0x60000e>
  122. 3d: 62 (bad)
  123. 3e: 6f outsl %ds:(%rsi),(%dx)
  124. 3f: 6f outsl %ds:(%rsi),(%dx)
  125. 40: 74 73 je b5 <_start-0x5fffc3>
  126. 42: 74 72 je b6 <_start-0x5fffc2>
  127. 44: 61 (bad)
  128. 45: 70 2f jo 76 <_start-0x600002>
  129. 47: 68 65 78 38 36 pushq $0x36387865
  130. 4c: 2f (bad)
  131. 4d: 61 (bad)
  132. 4e: 73 6d jae bd <_start-0x5fffbb>
  133. 50: 2f (bad)
  134. 51: 00 79 61 add %bh,0x61(%rcx)
  135. 54: 73 6d jae c3 <_start-0x5fffb5>
  136. 56: 20 31 and %dh,(%rcx)
  137. 58: 2e 33 2e xor %cs:(%rsi),%ebp
  138. 5b: 30 00 xor %al,(%rax)
  139. 5d: 01 .byte 0x1
  140. 5e: 80 .byte 0x80
  141. Disassembly of section .debug_abbrev:
  142. 0000000000000000 <.debug_abbrev>:
  143. 0: 01 11 add %edx,(%rcx)
  144. 2: 00 10 add %dl,(%rax)
  145. 4: 06 (bad)
  146. 5: 11 01 adc %eax,(%rcx)
  147. 7: 12 01 adc (%rcx),%al
  148. 9: 03 08 add (%rax),%ecx
  149. b: 1b 08 sbb (%rax),%ecx
  150. d: 25 08 13 05 00 and $0x51308,%eax
  151. ...
  152. Disassembly of section .debug_line:
  153. 0000000000000000 <.debug_line>:
  154. 0: 28 00 sub %al,(%rax)
  155. 2: 00 00 add %al,(%rax)
  156. 4: 02 00 add (%rax),%al
  157. 6: 1f (bad)
  158. 7: 00 00 add %al,(%rax)
  159. 9: 00 01 add %al,(%rcx)
  160. b: 01 fb add %edi,%ebx
  161. d: 0e (bad)
  162. e: 0d 00 01 01 01 or $0x1010100,%eax
  163. 13: 01 00 add %eax,(%rax)
  164. 15: 00 00 add %al,(%rax)
  165. 17: 01 00 add %eax,(%rax)
  166. 19: 00 01 add %al,(%rcx)
  167. 1b: 00 68 65 add %ch,0x65(%rax)
  168. 1e: 78 30 js 50 <_start-0x600028>
  169. 20: 2e 61 cs (bad)
  170. 22: 73 6d jae 91 <_start-0x5fffe7>
  171. 24: 00 00 add %al,(%rax)
  172. 26: 00 00 add %al,(%rax)
  173. 28: 00 00 add %al,(%rax)
  174. 2a: 01 01 add %eax,(%rcx)