Advertisement
Marionumber1

acpi_init() disassembly

Jun 27th, 2014
289
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 15.33 KB | None | 0 0
  1. 00008600 <acpi_init>:
  2. 8600: 55 push %ebp
  3. 8601: b9 00 fc 09 00 mov $0x9fc00,%ecx
  4. 8606: 89 e5 mov %esp,%ebp
  5. 8608: 57 push %edi
  6. 8609: 56 push %esi
  7. 860a: 53 push %ebx
  8. 860b: 83 ec 3c sub $0x3c,%esp
  9. 860e: eb 0f jmp 861f <acpi_init+0x1f>
  10. 8610: 83 c1 10 add $0x10,%ecx
  11. 8613: 81 f9 00 00 0a 00 cmp $0xa0000,%ecx
  12. 8619: 0f 84 06 03 00 00 je 8925 <acpi_init+0x325>
  13. 861f: 8b 51 04 mov 0x4(%ecx),%edx
  14. 8622: 8b 01 mov (%ecx),%eax
  15. 8624: 81 f2 50 54 52 20 xor $0x20525450,%edx
  16. 862a: 35 52 53 44 20 xor $0x20445352,%eax
  17. 862f: 89 ce mov %ecx,%esi
  18. 8631: 09 c2 or %eax,%edx
  19. 8633: 75 db jne 8610 <acpi_init+0x10>
  20. 8635: 8d 59 14 lea 0x14(%ecx),%ebx
  21. 8638: 89 c8 mov %ecx,%eax
  22. 863a: 31 d2 xor %edx,%edx
  23. 863c: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi
  24. 8640: 02 10 add (%eax),%dl
  25. 8642: 40 inc %eax
  26. 8643: 39 d8 cmp %ebx,%eax
  27. 8645: 75 f9 jne 8640 <acpi_init+0x40>
  28. 8647: 84 d2 test %dl,%dl
  29. 8649: 75 c5 jne 8610 <acpi_init+0x10>
  30. 864b: 80 79 0f 01 cmpb $0x1,0xf(%ecx)
  31. 864f: 0f 86 5b 01 00 00 jbe 87b0 <acpi_init+0x1b0>
  32. 8655: 31 c0 xor %eax,%eax
  33. 8657: 89 f6 mov %esi,%esi
  34. 8659: 8d bc 27 00 00 00 00 lea 0x0(%edi,%eiz,1),%edi
  35. 8660: 02 14 01 add (%ecx,%eax,1),%dl
  36. 8663: 40 inc %eax
  37. 8664: 83 f8 24 cmp $0x24,%eax
  38. 8667: 75 f7 jne 8660 <acpi_init+0x60>
  39. 8669: 84 d2 test %dl,%dl
  40. 866b: 0f 85 3f 01 00 00 jne 87b0 <acpi_init+0x1b0>
  41. 8671: 8b 45 08 mov 0x8(%ebp),%eax
  42. 8674: c6 05 e8 ee 00 00 01 movb $0x1,0xeee8
  43. 867b: 89 70 3c mov %esi,0x3c(%eax)
  44. 867e: 8b 46 1c mov 0x1c(%esi),%eax
  45. 8681: 8b 5e 18 mov 0x18(%esi),%ebx
  46. 8684: 8b 3d 7c ee 00 00 mov 0xee7c,%edi
  47. 868a: 89 44 24 08 mov %eax,0x8(%esp)
  48. 868e: 89 3c 24 mov %edi,(%esp)
  49. 8691: c7 44 24 0c 06 00 00 movl $0x6,0xc(%esp)
  50. 8698: 00
  51. 8699: 89 5c 24 04 mov %ebx,0x4(%esp)
  52. 869d: 89 45 d8 mov %eax,-0x28(%ebp)
  53. 86a0: e8 2b 2b 00 00 call b1d0 <map_page>
  54. 86a5: 89 d9 mov %ebx,%ecx
  55. 86a7: 81 e1 ff 0f 00 00 and $0xfff,%ecx
  56. 86ad: 89 7d d0 mov %edi,-0x30(%ebp)
  57. 86b0: 31 d2 xor %edx,%edx
  58. 86b2: 01 4d d0 add %ecx,-0x30(%ebp)
  59. 86b5: c7 45 d4 00 00 00 00 movl $0x0,-0x2c(%ebp)
  60. 86bc: 8b 45 d0 mov -0x30(%ebp),%eax
  61. 86bf: 11 55 d4 adc %edx,-0x2c(%ebp)
  62. 86c2: 89 c2 mov %eax,%edx
  63. 86c4: 89 45 cc mov %eax,-0x34(%ebp)
  64. 86c7: 89 c8 mov %ecx,%eax
  65. 86c9: b9 00 10 00 00 mov $0x1000,%ecx
  66. 86ce: 81 c7 00 10 00 00 add $0x1000,%edi
  67. 86d4: 29 c1 sub %eax,%ecx
  68. 86d6: 8b 42 04 mov 0x4(%edx),%eax
  69. 86d9: 89 45 dc mov %eax,-0x24(%ebp)
  70. 86dc: 39 c1 cmp %eax,%ecx
  71. 86de: 73 6f jae 874f <acpi_init+0x14f>
  72. 86e0: 81 e3 00 f0 ff ff and $0xfffff000,%ebx
  73. 86e6: 8b 55 d8 mov -0x28(%ebp),%edx
  74. 86e9: 89 d8 mov %ebx,%eax
  75. 86eb: 8b 5d dc mov -0x24(%ebp),%ebx
  76. 86ee: 05 00 10 00 00 add $0x1000,%eax
  77. 86f3: 83 d2 00 adc $0x0,%edx
  78. 86f6: 29 cb sub %ecx,%ebx
  79. 86f8: 89 5d d8 mov %ebx,-0x28(%ebp)
  80. 86fb: 74 52 je 874f <acpi_init+0x14f>
  81. 86fd: 31 db xor %ebx,%ebx
  82. 86ff: 89 75 c8 mov %esi,-0x38(%ebp)
  83. 8702: 89 5d dc mov %ebx,-0x24(%ebp)
  84. 8705: 89 c6 mov %eax,%esi
  85. 8707: 89 fb mov %edi,%ebx
  86. 8709: 89 d7 mov %edx,%edi
  87. 870b: 90 nop
  88. 870c: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi
  89. 8710: 89 74 24 04 mov %esi,0x4(%esp)
  90. 8714: 89 7c 24 08 mov %edi,0x8(%esp)
  91. 8718: 89 1c 24 mov %ebx,(%esp)
  92. 871b: c7 44 24 0c 02 00 00 movl $0x2,0xc(%esp)
  93. 8722: 00
  94. 8723: e8 a8 2a 00 00 call b1d0 <map_page>
  95. 8728: 81 c3 00 10 00 00 add $0x1000,%ebx
  96. 872e: 8b 45 dc mov -0x24(%ebp),%eax
  97. 8731: 81 c6 00 10 00 00 add $0x1000,%esi
  98. 8737: 83 d7 00 adc $0x0,%edi
  99. 873a: 05 00 10 00 00 add $0x1000,%eax
  100. 873f: 89 45 dc mov %eax,-0x24(%ebp)
  101. 8742: 8b 45 dc mov -0x24(%ebp),%eax
  102. 8745: 39 45 d8 cmp %eax,-0x28(%ebp)
  103. 8748: 77 c6 ja 8710 <acpi_init+0x110>
  104. 874a: 8b 75 c8 mov -0x38(%ebp),%esi
  105. 874d: 89 df mov %ebx,%edi
  106. 874f: 8b 45 cc mov -0x34(%ebp),%eax
  107. 8752: 89 3d 7c ee 00 00 mov %edi,0xee7c
  108. 8758: a3 ec ee 00 00 mov %eax,0xeeec
  109. 875d: 81 38 58 53 44 54 cmpl $0x54445358,(%eax)
  110. 8763: 0f 85 25 02 00 00 jne 898e <acpi_init+0x38e>
  111. 8769: 8b 48 04 mov 0x4(%eax),%ecx
  112. 876c: 85 c9 test %ecx,%ecx
  113. 876e: 74 20 je 8790 <acpi_init+0x190>
  114. 8770: 31 d2 xor %edx,%edx
  115. 8772: 31 c0 xor %eax,%eax
  116. 8774: 8b 5d d0 mov -0x30(%ebp),%ebx
  117. 8777: 89 f6 mov %esi,%esi
  118. 8779: 8d bc 27 00 00 00 00 lea 0x0(%edi,%eiz,1),%edi
  119. 8780: 02 14 18 add (%eax,%ebx,1),%dl
  120. 8783: 40 inc %eax
  121. 8784: 39 c8 cmp %ecx,%eax
  122. 8786: 75 f8 jne 8780 <acpi_init+0x180>
  123. 8788: 84 d2 test %dl,%dl
  124. 878a: 0f 85 fe 01 00 00 jne 898e <acpi_init+0x38e>
  125. 8790: 8b 7d 08 mov 0x8(%ebp),%edi
  126. 8793: 8b 46 18 mov 0x18(%esi),%eax
  127. 8796: 8b 56 1c mov 0x1c(%esi),%edx
  128. 8799: 89 57 48 mov %edx,0x48(%edi)
  129. 879c: 89 47 44 mov %eax,0x44(%edi)
  130. 879f: c7 47 40 00 00 00 00 movl $0x0,0x40(%edi)
  131. 87a6: e9 4c 01 00 00 jmp 88f7 <acpi_init+0x2f7>
  132. 87ab: 90 nop
  133. 87ac: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi
  134. 87b0: 8b 7d 08 mov 0x8(%ebp),%edi
  135. 87b3: a0 e8 ee 00 00 mov 0xeee8,%al
  136. 87b8: 84 c0 test %al,%al
  137. 87ba: 89 77 3c mov %esi,0x3c(%edi)
  138. 87bd: 0f 85 5b 01 00 00 jne 891e <acpi_init+0x31e>
  139. 87c3: 8b 46 10 mov 0x10(%esi),%eax
  140. 87c6: 8b 3d 7c ee 00 00 mov 0xee7c,%edi
  141. 87cc: 89 c3 mov %eax,%ebx
  142. 87ce: 89 44 24 04 mov %eax,0x4(%esp)
  143. 87d2: 89 3c 24 mov %edi,(%esp)
  144. 87d5: c7 44 24 0c 06 00 00 movl $0x6,0xc(%esp)
  145. 87dc: 00
  146. 87dd: c7 44 24 08 00 00 00 movl $0x0,0x8(%esp)
  147. 87e4: 00
  148. 87e5: 89 45 dc mov %eax,-0x24(%ebp)
  149. 87e8: e8 e3 29 00 00 call b1d0 <map_page>
  150. 87ed: 89 d9 mov %ebx,%ecx
  151. 87ef: 81 e1 ff 0f 00 00 and $0xfff,%ecx
  152. 87f5: 31 d2 xor %edx,%edx
  153. 87f7: 89 4d d0 mov %ecx,-0x30(%ebp)
  154. 87fa: c7 45 d4 00 00 00 00 movl $0x0,-0x2c(%ebp)
  155. 8801: 01 7d d0 add %edi,-0x30(%ebp)
  156. 8804: bb 00 10 00 00 mov $0x1000,%ebx
  157. 8809: 11 55 d4 adc %edx,-0x2c(%ebp)
  158. 880c: 8b 45 d0 mov -0x30(%ebp),%eax
  159. 880f: 89 45 cc mov %eax,-0x34(%ebp)
  160. 8812: 29 cb sub %ecx,%ebx
  161. 8814: 8b 40 04 mov 0x4(%eax),%eax
  162. 8817: 81 c7 00 10 00 00 add $0x1000,%edi
  163. 881d: 89 45 d8 mov %eax,-0x28(%ebp)
  164. 8820: 39 c3 cmp %eax,%ebx
  165. 8822: 73 78 jae 889c <acpi_init+0x29c>
  166. 8824: 8b 4d dc mov -0x24(%ebp),%ecx
  167. 8827: 31 d2 xor %edx,%edx
  168. 8829: 81 e1 00 f0 ff ff and $0xfffff000,%ecx
  169. 882f: 89 c8 mov %ecx,%eax
  170. 8831: 8b 4d d8 mov -0x28(%ebp),%ecx
  171. 8834: 05 00 10 00 00 add $0x1000,%eax
  172. 8839: 83 d2 00 adc $0x0,%edx
  173. 883c: 29 d9 sub %ebx,%ecx
  174. 883e: 89 4d d8 mov %ecx,-0x28(%ebp)
  175. 8841: 74 59 je 889c <acpi_init+0x29c>
  176. 8843: 89 d1 mov %edx,%ecx
  177. 8845: 89 c2 mov %eax,%edx
  178. 8847: 89 75 c8 mov %esi,-0x38(%ebp)
  179. 884a: 89 f8 mov %edi,%eax
  180. 884c: 31 db xor %ebx,%ebx
  181. 884e: 89 d6 mov %edx,%esi
  182. 8850: 89 cf mov %ecx,%edi
  183. 8852: 8d b4 26 00 00 00 00 lea 0x0(%esi,%eiz,1),%esi
  184. 8859: 8d bc 27 00 00 00 00 lea 0x0(%edi,%eiz,1),%edi
  185. 8860: 89 74 24 04 mov %esi,0x4(%esp)
  186. 8864: 89 7c 24 08 mov %edi,0x8(%esp)
  187. 8868: 89 04 24 mov %eax,(%esp)
  188. 886b: c7 44 24 0c 02 00 00 movl $0x2,0xc(%esp)
  189. 8872: 00
  190. 8873: 89 45 dc mov %eax,-0x24(%ebp)
  191. 8876: e8 55 29 00 00 call b1d0 <map_page>
  192. 887b: 8b 45 dc mov -0x24(%ebp),%eax
  193. 887e: 05 00 10 00 00 add $0x1000,%eax
  194. 8883: 81 c6 00 10 00 00 add $0x1000,%esi
  195. 8889: 83 d7 00 adc $0x0,%edi
  196. 888c: 81 c3 00 10 00 00 add $0x1000,%ebx
  197. 8892: 39 5d d8 cmp %ebx,-0x28(%ebp)
  198. 8895: 77 c9 ja 8860 <acpi_init+0x260>
  199. 8897: 8b 75 c8 mov -0x38(%ebp),%esi
  200. 889a: 89 c7 mov %eax,%edi
  201. 889c: 8b 45 cc mov -0x34(%ebp),%eax
  202. 889f: 89 3d 7c ee 00 00 mov %edi,0xee7c
  203. 88a5: a3 f0 ee 00 00 mov %eax,0xeef0
  204. 88aa: 81 38 52 53 44 54 cmpl $0x54445352,(%eax)
  205. 88b0: 0f 85 f8 00 00 00 jne 89ae <acpi_init+0x3ae>
  206. 88b6: 8b 48 04 mov 0x4(%eax),%ecx
  207. 88b9: 85 c9 test %ecx,%ecx
  208. 88bb: 74 23 je 88e0 <acpi_init+0x2e0>
  209. 88bd: 31 d2 xor %edx,%edx
  210. 88bf: 31 c0 xor %eax,%eax
  211. 88c1: 8b 5d d0 mov -0x30(%ebp),%ebx
  212. 88c4: 8d b6 00 00 00 00 lea 0x0(%esi),%esi
  213. 88ca: 8d bf 00 00 00 00 lea 0x0(%edi),%edi
  214. 88d0: 02 14 18 add (%eax,%ebx,1),%dl
  215. 88d3: 40 inc %eax
  216. 88d4: 39 c8 cmp %ecx,%eax
  217. 88d6: 75 f8 jne 88d0 <acpi_init+0x2d0>
  218. 88d8: 84 d2 test %dl,%dl
  219. 88da: 0f 85 ce 00 00 00 jne 89ae <acpi_init+0x3ae>
  220. 88e0: 8b 7d 08 mov 0x8(%ebp),%edi
  221. 88e3: 8b 46 10 mov 0x10(%esi),%eax
  222. 88e6: 89 47 40 mov %eax,0x40(%edi)
  223. 88e9: c7 47 44 00 00 00 00 movl $0x0,0x44(%edi)
  224. 88f0: c7 47 48 00 00 00 00 movl $0x0,0x48(%edi)
  225. 88f7: 8d 45 e0 lea -0x20(%ebp),%eax
  226. 88fa: 89 04 24 mov %eax,(%esp)
  227. 88fd: e8 0a 40 00 00 call c90c <map_create>
  228. 8902: 8b 45 e0 mov -0x20(%ebp),%eax
  229. 8905: 8b 55 e4 mov -0x1c(%ebp),%edx
  230. 8908: a3 e0 ee 00 00 mov %eax,0xeee0
  231. 890d: 51 push %ecx
  232. 890e: 89 15 e4 ee 00 00 mov %edx,0xeee4
  233. 8914: 31 c0 xor %eax,%eax
  234. 8916: 8d 65 f4 lea -0xc(%ebp),%esp
  235. 8919: 5b pop %ebx
  236. 891a: 5e pop %esi
  237. 891b: 5f pop %edi
  238. 891c: 5d pop %ebp
  239. 891d: c3 ret
  240. 891e: 31 f6 xor %esi,%esi
  241. 8920: e9 59 fd ff ff jmp 867e <acpi_init+0x7e>
  242. 8925: b9 00 00 0e 00 mov $0xe0000,%ecx
  243. 892a: eb 13 jmp 893f <acpi_init+0x33f>
  244. 892c: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi
  245. 8930: 83 c1 10 add $0x10,%ecx
  246. 8933: 81 f9 00 00 10 00 cmp $0x100000,%ecx
  247. 8939: 0f 84 8f 00 00 00 je 89ce <acpi_init+0x3ce>
  248. 893f: 8b 51 04 mov 0x4(%ecx),%edx
  249. 8942: 8b 01 mov (%ecx),%eax
  250. 8944: 81 f2 50 54 52 20 xor $0x20525450,%edx
  251. 894a: 35 52 53 44 20 xor $0x20445352,%eax
  252. 894f: 89 ce mov %ecx,%esi
  253. 8951: 09 c2 or %eax,%edx
  254. 8953: 75 db jne 8930 <acpi_init+0x330>
  255. 8955: 8d 59 14 lea 0x14(%ecx),%ebx
  256. 8958: 89 c8 mov %ecx,%eax
  257. 895a: 31 d2 xor %edx,%edx
  258. 895c: 8d 74 26 00 lea 0x0(%esi,%eiz,1),%esi
  259. 8960: 02 10 add (%eax),%dl
  260. 8962: 40 inc %eax
  261. 8963: 39 d8 cmp %ebx,%eax
  262. 8965: 75 f9 jne 8960 <acpi_init+0x360>
  263. 8967: 84 d2 test %dl,%dl
  264. 8969: 75 c5 jne 8930 <acpi_init+0x330>
  265. 896b: 80 79 0f 01 cmpb $0x1,0xf(%ecx)
  266. 896f: 0f 86 3b fe ff ff jbe 87b0 <acpi_init+0x1b0>
  267. 8975: 31 d2 xor %edx,%edx
  268. 8977: 31 c0 xor %eax,%eax
  269. 8979: 8d b4 26 00 00 00 00 lea 0x0(%esi,%eiz,1),%esi
  270. 8980: 02 14 01 add (%ecx,%eax,1),%dl
  271. 8983: 40 inc %eax
  272. 8984: 83 f8 24 cmp $0x24,%eax
  273. 8987: 75 f7 jne 8980 <acpi_init+0x380>
  274. 8989: e9 db fc ff ff jmp 8669 <acpi_init+0x69>
  275. 898e: 8b 45 08 mov 0x8(%ebp),%eax
  276. 8991: c7 40 40 00 00 00 00 movl $0x0,0x40(%eax)
  277. 8998: c7 40 44 00 00 00 00 movl $0x0,0x44(%eax)
  278. 899f: c7 40 48 00 00 00 00 movl $0x0,0x48(%eax)
  279. 89a6: 83 c8 ff or $0xffffffff,%eax
  280. 89a9: e9 68 ff ff ff jmp 8916 <acpi_init+0x316>
  281. 89ae: 8b 45 08 mov 0x8(%ebp),%eax
  282. 89b1: c7 40 44 00 00 00 00 movl $0x0,0x44(%eax)
  283. 89b8: c7 40 48 00 00 00 00 movl $0x0,0x48(%eax)
  284. 89bf: c7 40 40 00 00 00 00 movl $0x0,0x40(%eax)
  285. 89c6: 83 c8 ff or $0xffffffff,%eax
  286. 89c9: e9 48 ff ff ff jmp 8916 <acpi_init+0x316>
  287. 89ce: 83 c8 ff or $0xffffffff,%eax
  288. 89d1: e9 40 ff ff ff jmp 8916 <acpi_init+0x316>
  289. 89d6: 66 90 xchg %ax,%ax
  290. 89d8: 66 90 xchg %ax,%ax
  291. 89da: 66 90 xchg %ax,%ax
  292. 89dc: 66 90 xchg %ax,%ax
  293. 89de: 66 90 xchg %ax,%ax
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement