Bond697

damage

Jan 6th, 2012
503
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 52.63 KB | None | 0 0
  1. unsigned int damageCalc(void (*pFunction), void* pFinalBP, void* pStat, unsigned int moveNumber)
  2.  
  3.  
  4. 021C6C18 B5F8 push {r3-r7,r14} ;1N+1ND+5SD
  5. 021C6C1A 1C05 mov r5,r0 ;1S - routine pointer to v2
  6. 021C6C1C 1C0E mov r6,r1 ;1S - move- final BP to v3
  7. 021C6C1E 1C18 mov r0,r3 ;1S - move number to a1
  8. 021C6C20 2107 mov r1,#0x7 ;1S
  9. 021C6C22 1C17 mov r7,r2 ;1S - stat used to v4
  10. 021C6C24 9300 str r3,[sp] ;1N+1ND - move number to stack
  11. 021C6C26 F655F88D bl #0x201BD44 - ;1N+3S
  12. 021C6C2A 0400 lsl r0,r0,#0x10 ;1S
  13. 021C6C2C 0C04 lsr r4,r0,#0x10 ;1S
  14. 021C6C2E 1C30 mov r0,r6 ;1S
  15. 021C6C30 F00FF980 bl #0x21D5F34 - ;1N+3S
  16. 021C6C34 1820 add r0,r4,r0 ;1S
  17. 021C6C36 0400 lsl r0,r0,#0x10 ;1S
  18. 021C6C38 0C04 lsr r4,r0,#0x10 ;1S
  19. 021C6C3A 4822 ldr r0,=#0x2EB0 ;1S+1ND+1I
  20. 021C6C3C F010FC6C bl #0x21D7518 - ;1N+3S
  21. 021C6C40 1C38 mov r0,r7 ;1S
  22. 021C6C42 F00EFC0D bl #0x21D5460 - ;1N+3S
  23. 021C6C46 1C01 mov r1,r0 ;1S
  24. 021C6C48 2004 mov r0,#0x4 ;1S
  25. 021C6C4A 2704 mov r7,#0x4 ;1S
  26. 021C6C4C F010FCDE bl #0x21D760C - ;1N+3S
  27. 021C6C50 1C30 mov r0,r6 ;1S
  28. 021C6C52 F00EFC05 bl #0x21D5460 - ;1N+3S
  29. 021C6C56 1C01 mov r1,r0 ;1S
  30. 021C6C58 2003 mov r0,#0x3 ;1S
  31. 021C6C5A F010FCD7 bl #0x21D760C - ;1N+3S
  32. 021C6C5E 202C mov r0,#0x2C ;1S
  33. 021C6C60 1C21 mov r1,r4 ;1S
  34. 021C6C62 262C mov r6,#0x2C ;1S
  35. 021C6C64 F010FCB0 bl #0x21D75C8 - ;1N+3S
  36. 021C6C68 2041 mov r0,#0x41 ;1S
  37. 021C6C6A 2100 mov r1,#0x0 ;1S
  38. 021C6C6C 2400 mov r4,#0x0 ;1S
  39. 021C6C6E F010FCEF bl #0x21D7650 - ;1N+3S
  40. 021C6C72 1C28 mov r0,r5 ;1S
  41. 021C6C74 2136 mov r1,#0x36 ;1S
  42. 021C6C76 F010FA4B bl #0x21D7110 ;1N+3S
  43. 021C6C7A 2041 mov r0,#0x41 ;1S
  44. 021C6C7C F010FD7E bl #0x21D777C - ;1N+3S
  45. 021C6C80 2800 cmp r0,#0x0 ;1S
  46. 021C6C82 D11A bne #0x21C6CBA - ;1N+2S
  47. 021C6C84 9800 ldr r0,[sp] ;1S+1ND+1I
  48. 021C6C86 F655FB0B bl #0x201C2A0 - ;1N+3S
  49. 021C6C8A 2800 cmp r0,#0x0 ;1S
  50. 021C6C8C D001 beq #0x21C6C92 - ;1N+2S
  51. 021C6C8E 2401 mov r4,#0x1 ;1S
  52. 021C6C90 E00C b #0x21C6CAC - ;1N+2S
  53. 021C6C92 1C30 mov r0,r6 ;1S
  54. 021C6C94 F010FD72 bl #0x21D777C - ;1N+3S
  55. 021C6C98 2804 cmp r0,#0x4 ;1S
  56. 021C6C9A DD00 ble #0x21C6C9E - ;1N+2S
  57. 021C6C9C 1C38 mov r0,r7 ;1S
  58. 021C6C9E 0400 lsl r0,r0,#0x10 ;1S
  59. 021C6CA0 0C00 lsr r0,r0,#0x10 ;1S
  60. 021C6CA2 0600 lsl r0,r0,#0x18 ;1S
  61. 021C6CA4 0E00 lsr r0,r0,#0x18 ;1S
  62. 021C6CA6 F010FE53 bl #0x21D7950 - ;1N+3S
  63. 021C6CAA 1C04 mov r4,r0 ;1S
  64. 021C6CAC 6868 ldr r0,[r5,#0x4] ;1S+1ND+1I
  65. 021C6CAE 2103 mov r1,#0x3 ;1S
  66. 021C6CB0 F7F2FA44 bl #0x21B913C - ;1N+3S
  67. 021C6CB4 2800 cmp r0,#0x0 ;1S
  68. 021C6CB6 D000 beq #0x21C6CBA - ;1N+2S
  69. 021C6CB8 2401 mov r4,#0x1 ;1S
  70. 021C6CBA 4803 ldr r0,=#0x2EC7 ;1S+1ND+1I
  71. 021C6CBC F010FC50 bl #0x21D7560 - ;1N+3S
  72. 021C6CC0 1C20 mov r0,r4 ;1S
  73. 021C6CC2 BDF8 pop {r3-r7,r15} ;1N+2S+1ND+5SD+1I
  74.  
  75.  
  76.  
  77. RAM_ARM9:0201BD44 @ =============== S U B R O U T I N E =======================================
  78. RAM_ARM9:0201BD44
  79. RAM_ARM9:0201BD44
  80. RAM_ARM9:0201BD44 sub_201BD44: @ CODE XREF: sub_2018118+54p
  81. RAM_ARM9:0201BD44 @ sub_201C174+Cp ...
  82. RAM_ARM9:0201BD44 70 B5 PUSH {R4-R6,LR}
  83. RAM_ARM9:0201BD46 04 1C MOVS R4, R0
  84. RAM_ARM9:0201BD48 1F 48 LDR R0, =0x2146550
  85. RAM_ARM9:0201BD4A 0E 1C MOVS R6, R1
  86. RAM_ARM9:0201BD4C 01 68 LDR R1, [R0]
  87. RAM_ARM9:0201BD4E 00 29 CMP R1, #0
  88. RAM_ARM9:0201BD50 2F D0 BEQ bank5
  89. RAM_ARM9:0201BD52 88 68 LDR R0, [R1,#8]
  90. RAM_ARM9:0201BD54 00 25 MOVS R5, #0
  91. RAM_ARM9:0201BD56 00 28 CMP R0, #0
  92. RAM_ARM9:0201BD58 14 DD BLE bank3
  93. RAM_ARM9:0201BD5A 4B 68 LDR R3, [R1,#4]
  94. RAM_ARM9:0201BD5C
  95. RAM_ARM9:0201BD5C bank1: @ CODE XREF: sub_201BD44+3Ej
  96. RAM_ARM9:0201BD5C 6A 00 LSLS R2, R5, #1
  97. RAM_ARM9:0201BD5E 99 5A LDRH R1, [R3,R2]
  98. RAM_ARM9:0201BD60 00 29 CMP R1, #0
  99. RAM_ARM9:0201BD62 0A D1 BNE bank2
  100. RAM_ARM9:0201BD64 18 48 LDR R0, =0x2146550
  101. RAM_ARM9:0201BD66 9C 52 STRH R4, [R3,R2]
  102. RAM_ARM9:0201BD68 00 68 LDR R0, [R0]
  103. RAM_ARM9:0201BD6A 22 1C MOVS R2, R4
  104. RAM_ARM9:0201BD6C 01 68 LDR R1, [R0]
  105. RAM_ARM9:0201BD6E A8 00 LSLS R0, R5, #2
  106. RAM_ARM9:0201BD70 08 58 LDR R0, [R1,R0]
  107. RAM_ARM9:0201BD72 15 21 MOVS R1, #0x15
  108. RAM_ARM9:0201BD74 2D F0 F6 E8 BLX sub_2048F64
  109.  
  110.  
  111. RAM_ARM9:02048F64 @ =============== S U B R O U T I N E =======================================
  112. RAM_ARM9:02048F64
  113. RAM_ARM9:02048F64
  114. RAM_ARM9:02048F64 sub_2048F64: @ CODE XREF: sub_2006C2C+16p
  115. RAM_ARM9:02048F64 @ sub_2019BB0+8j ...
  116. RAM_ARM9:02048F64
  117. RAM_ARM9:02048F64 var_8 = -8
  118. RAM_ARM9:02048F64
  119. RAM_ARM9:02048F64 08 40 2D E9 STMFD SP!, {R3,LR}
  120. RAM_ARM9:02048F68 00 30 A0 E3 MOV R3, #0
  121. RAM_ARM9:02048F6C 00 30 8D E5 STR R3, [SP,#8+var_8]
  122. RAM_ARM9:02048F70 68 FF FF EB BL sub_2048D18
  123.  
  124.  
  125. RAM_ARM9:02048D18 @ =============== S U B R O U T I N E =======================================
  126. RAM_ARM9:02048D18
  127. RAM_ARM9:02048D18
  128. RAM_ARM9:02048D18 sub_2048D18: @ CODE XREF: sub_2048F64+Cp
  129. RAM_ARM9:02048D18 @ sub_2048F8C+Cp
  130. RAM_ARM9:02048D18
  131. RAM_ARM9:02048D18 var_60 = -0x60
  132. RAM_ARM9:02048D18 arg_0 = 0
  133. RAM_ARM9:02048D18
  134. RAM_ARM9:02048D18 F8 40 2D E9 STMFD SP!, {R3-R7,LR}
  135. RAM_ARM9:02048D1C 48 D0 4D E2 SUB SP, SP, #0x48
  136. RAM_ARM9:02048D20 00 40 8D E2 ADD R4, SP, #0
  137. RAM_ARM9:02048D24 00 70 A0 E1 MOV R7, R0
  138. RAM_ARM9:02048D28 04 00 A0 E1 MOV R0, R4
  139. RAM_ARM9:02048D2C 02 60 A0 E1 MOV R6, R2
  140. RAM_ARM9:02048D30 03 50 A0 E1 MOV R5, R3
  141. RAM_ARM9:02048D34 2E 00 00 EB BL sub_2048DF4
  142. RAM_ARM9:02048D38 60 30 9D E5 LDR R3, [SP,#0x60]
  143. RAM_ARM9:02048D3C 04 00 A0 E1 MOV R0, R4
  144. RAM_ARM9:02048D40 06 10 A0 E1 MOV R1, R6
  145. RAM_ARM9:02048D44 05 20 A0 E1 MOV R2, R5
  146. RAM_ARM9:02048D48 3F 00 00 EB BL sub_2048E4C
  147. RAM_ARM9:02048D4C 00 20 A0 E1 MOV R2, R0
  148. RAM_ARM9:02048D50 04 00 A0 E1 MOV R0, R4
  149. RAM_ARM9:02048D54 07 10 A0 E1 MOV R1, R7
  150. RAM_ARM9:02048D58 8A BF 00 EB BL sub_2078B88
  151. RAM_ARM9:02048D5C 04 00 A0 E1 MOV R0, R4
  152. RAM_ARM9:02048D60 4C BF 00 EB BL sub_2078A98
  153. RAM_ARM9:02048D64 48 D0 8D E2 ADD SP, SP, #0x48
  154. RAM_ARM9:02048D68 F8 80 BD E8 LDMFD SP!, {R3-R7,PC}
  155. RAM_ARM9:02048D68 @ End of function sub_2048D18
  156.  
  157.  
  158. RAM_ARM9:02048F74 08 80 BD E8 LDMFD SP!, {R3,PC}
  159. RAM_ARM9:02048F74 @ End of function sub_2048F64
  160. RAM_ARM9:02048F74
  161. RAM_ARM9:02048F78
  162.  
  163.  
  164. RAM_ARM9:0201BD78 04 E0 B bank3
  165. RAM_ARM9:0201BD7A @ ---------------------------------------------------------------------------
  166. RAM_ARM9:0201BD7A
  167. RAM_ARM9:0201BD7A bank2: @ CODE XREF: sub_201BD44+1Ej
  168. RAM_ARM9:0201BD7A 8C 42 CMP R4, R1
  169. RAM_ARM9:0201BD7C 02 D0 BEQ bank3
  170. RAM_ARM9:0201BD7E 6D 1C ADDS R5, R5, #1
  171. RAM_ARM9:0201BD80 85 42 CMP R5, R0
  172. RAM_ARM9:0201BD82 EB DB BLT bank1
  173. RAM_ARM9:0201BD84
  174. RAM_ARM9:0201BD84 bank3: @ CODE XREF: sub_201BD44+14j
  175. RAM_ARM9:0201BD84 @ sub_201BD44+34j ...
  176. RAM_ARM9:0201BD84 10 48 LDR R0, =0x2146550
  177. RAM_ARM9:0201BD86 02 68 LDR R2, [R0]
  178. RAM_ARM9:0201BD88 91 68 LDR R1, [R2,#8]
  179. RAM_ARM9:0201BD8A 8D 42 CMP R5, R1
  180. RAM_ARM9:0201BD8C 0B D1 BNE bank4
  181. RAM_ARM9:0201BD8E 6D 1E SUBS R5, R5, #1
  182. RAM_ARM9:0201BD90 52 68 LDR R2, [R2,#4]
  183. RAM_ARM9:0201BD92 69 00 LSLS R1, R5, #1
  184. RAM_ARM9:0201BD94 54 52 STRH R4, [R2,R1]
  185. RAM_ARM9:0201BD96 00 68 LDR R0, [R0]
  186. RAM_ARM9:0201BD98 22 1C MOVS R2, R4
  187. RAM_ARM9:0201BD9A 01 68 LDR R1, [R0]
  188. RAM_ARM9:0201BD9C A8 00 LSLS R0, R5, #2
  189. RAM_ARM9:0201BD9E 08 58 LDR R0, [R1,R0]
  190. RAM_ARM9:0201BDA0 15 21 MOVS R1, #0x15
  191. RAM_ARM9:0201BDA2 2D F0 E0 E8 BLX sub_2048F64
  192.  
  193.  
  194. RAM_ARM9:02048F64 @ =============== S U B R O U T I N E =======================================
  195. RAM_ARM9:02048F64
  196. RAM_ARM9:02048F64
  197. RAM_ARM9:02048F64 sub_2048F64: @ CODE XREF: sub_2006C2C+16p
  198. RAM_ARM9:02048F64 @ sub_2019BB0+8j ...
  199. RAM_ARM9:02048F64
  200. RAM_ARM9:02048F64 var_8 = -8
  201. RAM_ARM9:02048F64
  202. RAM_ARM9:02048F64 08 40 2D E9 STMFD SP!, {R3,LR}
  203. RAM_ARM9:02048F68 00 30 A0 E3 MOV R3, #0
  204. RAM_ARM9:02048F6C 00 30 8D E5 STR R3, [SP,#8+var_8]
  205. RAM_ARM9:02048F70 68 FF FF EB BL sub_2048D18
  206.  
  207.  
  208. RAM_ARM9:02048D18 @ =============== S U B R O U T I N E =======================================
  209. RAM_ARM9:02048D18
  210. RAM_ARM9:02048D18
  211. RAM_ARM9:02048D18 sub_2048D18: @ CODE XREF: sub_2048F64+Cp
  212. RAM_ARM9:02048D18 @ sub_2048F8C+Cp
  213. RAM_ARM9:02048D18
  214. RAM_ARM9:02048D18 var_60 = -0x60
  215. RAM_ARM9:02048D18 arg_0 = 0
  216. RAM_ARM9:02048D18
  217. RAM_ARM9:02048D18 F8 40 2D E9 STMFD SP!, {R3-R7,LR}
  218. RAM_ARM9:02048D1C 48 D0 4D E2 SUB SP, SP, #0x48
  219. RAM_ARM9:02048D20 00 40 8D E2 ADD R4, SP, #0
  220. RAM_ARM9:02048D24 00 70 A0 E1 MOV R7, R0
  221. RAM_ARM9:02048D28 04 00 A0 E1 MOV R0, R4
  222. RAM_ARM9:02048D2C 02 60 A0 E1 MOV R6, R2
  223. RAM_ARM9:02048D30 03 50 A0 E1 MOV R5, R3
  224. RAM_ARM9:02048D34 2E 00 00 EB BL sub_2048DF4
  225. RAM_ARM9:02048D38 60 30 9D E5 LDR R3, [SP,#0x60]
  226. RAM_ARM9:02048D3C 04 00 A0 E1 MOV R0, R4
  227. RAM_ARM9:02048D40 06 10 A0 E1 MOV R1, R6
  228. RAM_ARM9:02048D44 05 20 A0 E1 MOV R2, R5
  229. RAM_ARM9:02048D48 3F 00 00 EB BL sub_2048E4C
  230. RAM_ARM9:02048D4C 00 20 A0 E1 MOV R2, R0
  231. RAM_ARM9:02048D50 04 00 A0 E1 MOV R0, R4
  232. RAM_ARM9:02048D54 07 10 A0 E1 MOV R1, R7
  233. RAM_ARM9:02048D58 8A BF 00 EB BL sub_2078B88
  234. RAM_ARM9:02048D5C 04 00 A0 E1 MOV R0, R4
  235. RAM_ARM9:02048D60 4C BF 00 EB BL sub_2078A98
  236. RAM_ARM9:02048D64 48 D0 8D E2 ADD SP, SP, #0x48
  237. RAM_ARM9:02048D68 F8 80 BD E8 LDMFD SP!, {R3-R7,PC}
  238. RAM_ARM9:02048D68 @ End of function sub_2048D18
  239.  
  240.  
  241. RAM_ARM9:02048F74 08 80 BD E8 LDMFD SP!, {R3,PC}
  242. RAM_ARM9:02048F74 @ End of function sub_2048F64
  243. RAM_ARM9:02048F74
  244. RAM_ARM9:02048F78
  245.  
  246.  
  247. RAM_ARM9:0201BDA6
  248. RAM_ARM9:0201BDA6 bank4: @ CODE XREF: sub_201BD44+48j
  249. RAM_ARM9:0201BDA6 08 48 LDR R0, =0x2146550
  250. RAM_ARM9:0201BDA8 00 68 LDR R0, [R0]
  251. RAM_ARM9:0201BDAA 01 68 LDR R1, [R0]
  252. RAM_ARM9:0201BDAC A8 00 LSLS R0, R5, #2
  253. RAM_ARM9:0201BDAE 0D 58 LDR R5, [R1,R0]
  254. RAM_ARM9:0201BDB0 05 E0 B bank6
  255. RAM_ARM9:0201BDB2 @ ---------------------------------------------------------------------------
  256. RAM_ARM9:0201BDB2
  257. RAM_ARM9:0201BDB2 bank5: @ CODE XREF: sub_201BD44+Cj
  258. RAM_ARM9:0201BDB2 06 4D LDR R5, =0x2146554
  259. RAM_ARM9:0201BDB4 15 21 MOVS R1, #0x15
  260. RAM_ARM9:0201BDB6 28 1C MOVS R0, R5
  261. RAM_ARM9:0201BDB8 22 1C MOVS R2, R4
  262. RAM_ARM9:0201BDBA 2D F0 D4 E8 BLX sub_2048F64
  263. RAM_ARM9:0201BDBE
  264. RAM_ARM9:0201BDBE bank6: @ CODE XREF: sub_201BD44+6Cj
  265. RAM_ARM9:0201BDBE 28 1C MOVS R0, R5
  266. RAM_ARM9:0201BDC0 31 1C MOVS R1, R6
  267. RAM_ARM9:0201BDC2 00 F0 05 F8 BL sub_201BDD0
  268. RAM_ARM9:0201BDC6 70 BD POP {R4-R6,PC}
  269. RAM_ARM9:0201BDC6 @ End of function sub_201BD44
  270. RAM_ARM9:0201BDC6
  271. RAM_ARM9:0201BDC6 @ ---------------------------------------------------------------------------
  272. RAM_ARM9:0201BDC8 50 65 14 02 dword_201BDC8: .long 0x2146550 @ DATA XREF: sub_201BD44+4r
  273. RAM_ARM9:0201BDC8 @ sub_201BD44+20r ...
  274. RAM_ARM9:0201BDCC 54 65 14 02 dword_201BDCC: .long 0x2146554 @ DATA XREF: sub_201BD44:b
  275.  
  276.  
  277. 021D5F34 B510 push {r4,r14} ;1N+1ND+1SD
  278. 021D5F36 4907 ldr r1,=#0x142 ;1S+1ND+1I
  279. 021D5F38 5C44 ldrb r4,[r0,r1] ;1S+1ND+1I
  280. 021D5F3A 2109 mov r1,#0x9 ;1S
  281. 021D5F3C F7FFFE5E bl #0x21D5BFC ;1N+3S
  282. 021D5F40 2800 cmp r0,#0x0 ;1S
  283. 021D5F42 D005 beq #0x21D5F50 ;1N+2S
  284. 021D5F44 1CA0 add r0,r4,2 ;1S
  285. 021D5F46 0600 lsl r0,r0,#0x18 ;1S
  286. 021D5F48 0E04 lsr r4,r0,#0x18 ;1S
  287. 021D5F4A 2C04 cmp r4,#0x4 ;1S
  288. 021D5F4C D900 bls #0x21D5F50 ;1N+2S
  289. 021D5F4E 2404 mov r4,#0x4 ;1S
  290. 021D5F50 1C20 mov r0,r4 ;1S
  291. 021D5F52 BD10 pop {r4,r15} ;1N+2S+1ND+1SD+1I
  292.  
  293.  
  294.  
  295. 021D7518 B508 push {r3,r14} ;1N+1ND+1SD
  296. 021D751A 480F ldr r0,=#0x21F3EEC ;1S+1ND+1I
  297. 021D751C 6801 ldr r1,[r0] ;1S+1ND+1I
  298. 021D751E 2960 cmp r1,#0x60 ;1S
  299. 021D7520 D209 bcs #0x21D7536 ;1N+2S
  300. 021D7522 004A lsl r2,r1,#0x1 ;1S
  301. 021D7524 1882 add r2,r0,r2 ;1S
  302. 021D7526 8892 ldrh r2,[r2,#0x4] ;1S+1ND+1I
  303. 021D7528 2A00 cmp r2,#0x0 ;1S
  304. 021D752A D004 beq #0x21D7536 ;1N+2S
  305. 021D752C 6801 ldr r1,[r0] ;1S+1ND+1I
  306. 021D752E 1C49 add r1,r1,1 ;1S
  307. 021D7530 6001 str r1,[r0] ;1N+1ND
  308. 021D7532 2960 cmp r1,#0x60 ;1S
  309. 021D7534 D3F5 bcc #0x21D7522 ;1N+2S
  310. 021D7536 295F cmp r1,#0x5F ;1S
  311. 021D7538 D207 bcs #0x21D754A ;1N+2S
  312. 021D753A 6802 ldr r2,[r0] ;1S+1ND+1I
  313. 021D753C 0049 lsl r1,r1,#0x1 ;1S
  314. 021D753E 1C52 add r2,r2,1 ;1S
  315. 021D7540 6002 str r2,[r0] ;1N+1ND
  316. 021D7542 2201 mov r2,#0x1 ;1S
  317. 021D7544 1840 add r0,r0,r1 ;1S
  318. 021D7546 8082 strh r2,[r0,#0x4] ;1N+1ND
  319. 021D7548 BD08 pop {r3,r15} ;1N+2S+1ND+1SD+1I
  320.  
  321.  
  322.  
  323. 021D5460 7E40 ldrb r0,[r0,#0x19] ;1S+1ND+1I
  324. 021D5462 4770 bx r14 ;1N+2S
  325.  
  326.  
  327.  
  328. 021D760C B538 push {r3-r5,r14} ;1N+1ND+3SD
  329. 021D760E 1C05 mov r5,r0 ;1S
  330. 021D7610 1C0C mov r4,r1 ;1S
  331. 021D7612 4809 ldr r0,=#0x21F3EEC ;1S+1ND+1I
  332. 021D7614 1C29 mov r1,r5 ;1S
  333. 021D7616 F000F8E5 bl #0x21D77E4 ;1N+3S
  334. 021D761A 4908 ldr r1,=#0x21F3EF0 ;1S+1ND+1I
  335. 021D761C 0042 lsl r2,r0,#0x1 ;1S
  336. 021D761E 528D strh r5,[r1,r2] ;1N+1ND
  337. 021D7620 4907 ldr r1,=#0x21F3FB0 ;1S+1ND+1I
  338. 021D7622 0083 lsl r3,r0,#0x2 ;1S
  339. 021D7624 50CC str r4,[r1,r3] ;1N+1ND
  340. 021D7626 4907 ldr r1,=#0x21F42B0 ;1S+1ND+1I
  341. 021D7628 2200 mov r2,#0x0 ;1S
  342. 021D762A 50CA str r2,[r1,r3] ;1N+1ND
  343. 021D762C 4906 ldr r1,=#0x21F4130 ;1S+1ND+1I
  344. 021D762E 50CA str r2,[r1,r3] ;1N+1ND
  345. 021D7630 4906 ldr r1,=#0x21F4430 ;1S+1ND+1I
  346. 021D7632 2204 mov r2,#0x4 ;1S
  347. 021D7634 540A strb r2,[r1,r0] ;1N+1ND
  348. 021D7636 BD38 pop {r3-r5,r15} ;1N+2S+1ND+3SD+1I
  349.  
  350.  
  351.  
  352. 021D5460 7E40 ldrb r0,[r0,#0x19] ;1S+1ND+1I
  353. 021D5462 4770 bx r14 ;1N+2S
  354.  
  355.  
  356.  
  357. 021D760C B538 push {r3-r5,r14} ;1N+1ND+3SD
  358. 021D760E 1C05 mov r5,r0 ;1S
  359. 021D7610 1C0C mov r4,r1 ;1S
  360. 021D7612 4809 ldr r0,=#0x21F3EEC ;1S+1ND+1I
  361. 021D7614 1C29 mov r1,r5 ;1S
  362. 021D7616 F000F8E5 bl #0x21D77E4 ;1N+3S
  363. 021D761A 4908 ldr r1,=#0x21F3EF0 ;1S+1ND+1I
  364. 021D761C 0042 lsl r2,r0,#0x1 ;1S
  365. 021D761E 528D strh r5,[r1,r2] ;1N+1ND
  366. 021D7620 4907 ldr r1,=#0x21F3FB0 ;1S+1ND+1I
  367. 021D7622 0083 lsl r3,r0,#0x2 ;1S
  368. 021D7624 50CC str r4,[r1,r3] ;1N+1ND
  369. 021D7626 4907 ldr r1,=#0x21F42B0 ;1S+1ND+1I
  370. 021D7628 2200 mov r2,#0x0 ;1S
  371. 021D762A 50CA str r2,[r1,r3] ;1N+1ND
  372. 021D762C 4906 ldr r1,=#0x21F4130 ;1S+1ND+1I
  373. 021D762E 50CA str r2,[r1,r3] ;1N+1ND
  374. 021D7630 4906 ldr r1,=#0x21F4430 ;1S+1ND+1I
  375. 021D7632 2204 mov r2,#0x4 ;1S
  376. 021D7634 540A strb r2,[r1,r0] ;1N+1ND
  377. 021D7636 BD38 pop {r3-r5,r15} ;1N+2S+1ND+3SD+1I
  378.  
  379.  
  380.  
  381. 021D75C8 B538 push {r3-r5,r14} ;1N+1ND+3SD
  382. 021D75CA 1C05 mov r5,r0 ;1S
  383. 021D75CC 1C0C mov r4,r1 ;1S
  384. 021D75CE 4809 ldr r0,=#0x21F3EEC ;1S+1ND+1I
  385. 021D75D0 1C29 mov r1,r5 ;1S
  386. 021D75D2 F000F907 bl #0x21D77E4 ;1N+3S
  387. 021D75D6 4908 ldr r1,=#0x21F3EF0 ;1S+1ND+1I
  388. 021D75D8 0042 lsl r2,r0,#0x1 ;1S
  389. 021D75DA 528D strh r5,[r1,r2] ;1N+1ND
  390. 021D75DC 4907 ldr r1,=#0x21F3FB0 ;1S+1ND+1I
  391. 021D75DE 0083 lsl r3,r0,#0x2 ;1S
  392. 021D75E0 50CC str r4,[r1,r3] ;1N+1ND
  393. 021D75E2 4907 ldr r1,=#0x21F42B0 ;1S+1ND+1I
  394. 021D75E4 2200 mov r2,#0x0 ;1S
  395. 021D75E6 50CA str r2,[r1,r3] ;1N+1ND
  396. 021D75E8 4906 ldr r1,=#0x21F4130 ;1S+1ND+1I
  397. 021D75EA 50CA str r2,[r1,r3] ;1N+1ND
  398. 021D75EC 4906 ldr r1,=#0x21F4430 ;1S+1ND+1I
  399. 021D75EE 540A strb r2,[r1,r0] ;1N+1ND
  400. 021D75F0 BD38 pop {r3-r5,r15} ;1N+2S+1ND+3SD+1I
  401.  
  402.  
  403.  
  404.  
  405. 021D7650 B538 push {r3-r5,r14} ;1N+1ND+3SD
  406. 021D7652 1C05 mov r5,r0 ;1S
  407. 021D7654 1C0C mov r4,r1 ;1S
  408. 021D7656 4809 ldr r0,=#0x21F3EEC ;1S+1ND+1I
  409. 021D7658 1C29 mov r1,r5 ;1S
  410. 021D765A F000F8C3 bl #0x21D77E4 ;1N+3S
  411. 021D765E 4908 ldr r1,=#0x21F3EF0 ;1S+1ND+1I
  412. 021D7660 0042 lsl r2,r0,#0x1 ;1S
  413. 021D7662 528D strh r5,[r1,r2] ;1N+1ND
  414. 021D7664 4907 ldr r1,=#0x21F3FB0 ;1S+1ND+1I
  415. 021D7666 0083 lsl r3,r0,#0x2 ;1S
  416. 021D7668 50CC str r4,[r1,r3] ;1N+1ND
  417. 021D766A 4907 ldr r1,=#0x21F42B0 ;1S+1ND+1I
  418. 021D766C 2200 mov r2,#0x0 ;1S
  419. 021D766E 50CA str r2,[r1,r3] ;1N+1ND
  420. 021D7670 4906 ldr r1,=#0x21F4130 ;1S+1ND+1I
  421. 021D7672 50CA str r2,[r1,r3] ;1N+1ND
  422. 021D7674 4906 ldr r1,=#0x21F4430 ;1S+1ND+1I
  423. 021D7676 2201 mov r2,#0x1 ;1S
  424. 021D7678 540A strb r2,[r1,r0] ;1N+1ND
  425. 021D767A BD38 pop {r3-r5,r15} ;1N+2S+1ND+3SD+1I
  426.  
  427.  
  428.  
  429. 021D777C 4A0A ldr r2,=#0x21F3EEC ;1S+1ND+1I
  430. 021D777E 6813 ldr r3,[r2] ;1S+1ND+1I
  431. 021D7780 2B60 cmp r3,#0x60 ;1S
  432. 021D7782 D20E bcs #0x21D77A2 ;1N+2S
  433. 021D7784 0059 lsl r1,r3,#0x1 ;1S
  434. 021D7786 1851 add r1,r2,r1 ;1S
  435. 021D7788 8889 ldrh r1,[r1,#0x4] ;1S+1ND+1I
  436. 021D778A 4288 cmp r0,r1 ;1S
  437. 021D778C D104 bne #0x21D7798 ;1N+2S
  438. 021D778E 0098 lsl r0,r3,#0x2 ;1S
  439. 021D7790 1810 add r0,r2,r0 ;1S
  440. 021D7792 30C4 add r0,#0xC4 ;1S
  441. 021D7794 6800 ldr r0,[r0] ;1S+1ND+1I
  442. 021D7796 4770 bx r14 ;1N+2S
  443. 021D7798 2900 cmp r1,#0x0 ;1S
  444. 021D779A D002 beq #0x21D77A2 ;1N+2S
  445. 021D779C 1C5B add r3,r3,1 ;1S
  446. 021D779E 2B60 cmp r3,#0x60 ;1S
  447. 021D77A0 D3F0 bcc #0x21D7784 ;1N+2S
  448. 021D77A2 2000 mov r0,#0x0 ;1S
  449. 021D77A4 4770 bx r14 ;1N+2S
  450.  
  451.  
  452.  
  453.  
  454. 021C6CBA 4803 ldr r0,=#0x2EC7 ;1S+1ND+1I
  455. 021C6CBC F010FC50 bl #0x21D7560 ;1N+3S
  456. 021C6CC0 1C20 mov r0,r4 ;1S
  457. 021C6CC2 BDF8 pop {r3-r7,r15} ;1N+2S+1ND+5SD+1I
  458.  
  459.  
  460.  
  461. RAM_ARM9:0201C2A0 @ =============== S U B R O U T I N E =======================================
  462. RAM_ARM9:0201C2A0
  463. RAM_ARM9:0201C2A0
  464. RAM_ARM9:0201C2A0 sub_201C2A0:
  465. RAM_ARM9:0201C2A0 38 B5 PUSH {R3-R5,LR}
  466. RAM_ARM9:0201C2A2 05 1C MOVS R5, R0
  467. RAM_ARM9:0201C2A4 20 48 LDR R0, =0x2146550
  468. RAM_ARM9:0201C2A6 00 68 LDR R0, [R0]
  469. RAM_ARM9:0201C2A8 00 28 CMP R0, #0
  470. RAM_ARM9:0201C2AA 2F D0 BEQ bank5
  471. RAM_ARM9:0201C2AC 83 68 LDR R3, [R0,#8]
  472. RAM_ARM9:0201C2AE 00 24 MOVS R4, #0
  473. RAM_ARM9:0201C2B0 00 2B CMP R3, #0
  474. RAM_ARM9:0201C2B2 14 DD BLE bank3
  475. RAM_ARM9:0201C2B4 42 68 LDR R2, [R0,#4]
  476. RAM_ARM9:0201C2B6
  477. RAM_ARM9:0201C2B6 bank1: @ CODE XREF: sub_201C2A0+3Cj
  478. RAM_ARM9:0201C2B6 61 00 LSLS R1, R4, #1
  479. RAM_ARM9:0201C2B8 50 5A LDRH R0, [R2,R1]
  480. RAM_ARM9:0201C2BA 00 28 CMP R0, #0
  481. RAM_ARM9:0201C2BC 0A D1 BNE bank2
  482. RAM_ARM9:0201C2BE 1A 48 LDR R0, =0x2146550
  483. RAM_ARM9:0201C2C0 55 52 STRH R5, [R2,R1]
  484. RAM_ARM9:0201C2C2 00 68 LDR R0, [R0]
  485. RAM_ARM9:0201C2C4 2A 1C MOVS R2, R5
  486. RAM_ARM9:0201C2C6 01 68 LDR R1, [R0]
  487. RAM_ARM9:0201C2C8 A0 00 LSLS R0, R4, #2
  488. RAM_ARM9:0201C2CA 08 58 LDR R0, [R1,R0]
  489. RAM_ARM9:0201C2CC 15 21 MOVS R1, #0x15
  490. RAM_ARM9:0201C2CE 2C F0 4A EE BLX sub_2048F64
  491. RAM_ARM9:0201C2D2 04 E0 B bank3
  492. RAM_ARM9:0201C2D4 @ ---------------------------------------------------------------------------
  493. RAM_ARM9:0201C2D4
  494. RAM_ARM9:0201C2D4 bank2: @ CODE XREF: sub_201C2A0+1Cj
  495. RAM_ARM9:0201C2D4 85 42 CMP R5, R0
  496. RAM_ARM9:0201C2D6 02 D0 BEQ bank3
  497. RAM_ARM9:0201C2D8 64 1C ADDS R4, R4, #1
  498. RAM_ARM9:0201C2DA 9C 42 CMP R4, R3
  499. RAM_ARM9:0201C2DC EB DB BLT bank1
  500. RAM_ARM9:0201C2DE
  501. RAM_ARM9:0201C2DE bank3: @ CODE XREF: sub_201C2A0+12j
  502. RAM_ARM9:0201C2DE @ sub_201C2A0+32j ...
  503. RAM_ARM9:0201C2DE 12 48 LDR R0, =0x2146550
  504. RAM_ARM9:0201C2E0 02 68 LDR R2, [R0]
  505. RAM_ARM9:0201C2E2 91 68 LDR R1, [R2,#8]
  506. RAM_ARM9:0201C2E4 8C 42 CMP R4, R1
  507. RAM_ARM9:0201C2E6 0B D1 BNE bank4
  508. RAM_ARM9:0201C2E8 64 1E SUBS R4, R4, #1
  509. RAM_ARM9:0201C2EA 52 68 LDR R2, [R2,#4]
  510. RAM_ARM9:0201C2EC 61 00 LSLS R1, R4, #1
  511. RAM_ARM9:0201C2EE 55 52 STRH R5, [R2,R1]
  512. RAM_ARM9:0201C2F0 00 68 LDR R0, [R0]
  513. RAM_ARM9:0201C2F2 2A 1C MOVS R2, R5
  514. RAM_ARM9:0201C2F4 01 68 LDR R1, [R0]
  515. RAM_ARM9:0201C2F6 A0 00 LSLS R0, R4, #2
  516. RAM_ARM9:0201C2F8 08 58 LDR R0, [R1,R0]
  517. RAM_ARM9:0201C2FA 15 21 MOVS R1, #0x15
  518. RAM_ARM9:0201C2FC 2C F0 32 EE BLX sub_2048F64
  519. RAM_ARM9:0201C300
  520. RAM_ARM9:0201C300 bank4: @ CODE XREF: sub_201C2A0+46j
  521. RAM_ARM9:0201C300 09 48 LDR R0, =0x2146550
  522. RAM_ARM9:0201C302 00 68 LDR R0, [R0]
  523. RAM_ARM9:0201C304 01 68 LDR R1, [R0]
  524. RAM_ARM9:0201C306 A0 00 LSLS R0, R4, #2
  525. RAM_ARM9:0201C308 0C 58 LDR R4, [R1,R0]
  526. RAM_ARM9:0201C30A 05 E0 B bank6
  527. RAM_ARM9:0201C30C @ ---------------------------------------------------------------------------
  528. RAM_ARM9:0201C30C
  529. RAM_ARM9:0201C30C bank5: @ CODE XREF: sub_201C2A0+Aj
  530. RAM_ARM9:0201C30C 07 4C LDR R4, =0x2146554
  531. RAM_ARM9:0201C30E 15 21 MOVS R1, #0x15
  532. RAM_ARM9:0201C310 20 1C MOVS R0, R4
  533. RAM_ARM9:0201C312 2A 1C MOVS R2, R5
  534. RAM_ARM9:0201C314 2C F0 26 EE BLX sub_2048F64
  535. RAM_ARM9:0201C318
  536. RAM_ARM9:0201C318 bank6: @ CODE XREF: sub_201C2A0+6Aj
  537. RAM_ARM9:0201C318 A0 7B LDRB R0, [R4,#0xE]
  538. RAM_ARM9:0201C31A 06 28 CMP R0, #6
  539. RAM_ARM9:0201C31C 01 D1 BNE bank7
  540. RAM_ARM9:0201C31E 01 20 MOVS R0, #1
  541. RAM_ARM9:0201C320 38 BD POP {R3-R5,PC}
  542. RAM_ARM9:0201C322 @ ---------------------------------------------------------------------------
  543. RAM_ARM9:0201C322
  544. RAM_ARM9:0201C322 bank7: @ CODE XREF: sub_201C2A0+7Cj
  545. RAM_ARM9:0201C322 00 20 MOVS R0, #0
  546. RAM_ARM9:0201C324 38 BD POP {R3-R5,PC}
  547. RAM_ARM9:0201C324 @ End of function sub_201C2A0
  548. RAM_ARM9:0201C324
  549. RAM_ARM9:0201C326 @ ---------------------------------------------------------------------------
  550. RAM_ARM9:0201C326 C0 46 NOP
  551. RAM_ARM9:0201C326 @ ---------------------------------------------------------------------------
  552. RAM_ARM9:0201C328 50 65 14 02 dword_201C328: .long 0x2146550 @ DATA XREF: sub_201C2A0+4r
  553. RAM_ARM9:0201C328 @ sub_201C2A0+1Er ...
  554. RAM_ARM9:0201C32C 54 65 14 02 dword_201C32C: .long 0x2146554 @ DATA XREF: sub_201C2A0:bank5r
  555. RAM_ARM9:0201C330
  556.  
  557.  
  558.  
  559.  
  560. 021C6C92 1C30 mov r0,r6 ;1S
  561. 021C6C94 F010FD72 bl #0x21D777C ;1N+3S
  562. 021C6C98 2804 cmp r0,#0x4 ;1S
  563. 021C6C9A DD00 ble #0x21C6C9E ;1N+2S
  564. 021C6C9C 1C38 mov r0,r7 ;1S
  565. 021C6C9E 0400 lsl r0,r0,#0x10 ;1S
  566. 021C6CA0 0C00 lsr r0,r0,#0x10 ;1S
  567. 021C6CA2 0600 lsl r0,r0,#0x18 ;1S
  568. 021C6CA4 0E00 lsr r0,r0,#0x18 ;1S
  569. 021C6CA6 F010FE53 bl #0x21D7950 ;1N+3S
  570. 021C6CAA 1C04 mov r4,r0 ;1S
  571. 021C6CAC 6868 ldr r0,[r5,#0x4] ;1S+1ND+1I
  572. 021C6CAE 2103 mov r1,#0x3 ;1S
  573. 021C6CB0 F7F2FA44 bl #0x21B913C ;1N+3S
  574. 021C6CB4 2800 cmp r0,#0x0 ;1S
  575. 021C6CB6 D000 beq #0x21C6CBA ;1N+2S
  576. 021C6CB8 2401 mov r4,#0x1 ;1S
  577. 021C6CBA 4803 ldr r0,=#0x2EC7 ;1S+1ND+1I
  578. 021C6CBC F010FC50 bl #0x21D7560 ;1N+3S
  579. 021C6CC0 1C20 mov r0,r4 ;1S
  580. 021C6CC2 BDF8 pop {r3-r7,r15} ;1N+2S+1ND+5SD+1I
  581.  
  582.  
  583.  
  584.  
  585. 021C6CAC 6868 ldr r0,[r5,#0x4] ;1S+1ND+1I
  586. 021C6CAE 2103 mov r1,#0x3 ;1S
  587. 021C6CB0 F7F2FA44 bl #0x21B913C ;1N+3S
  588. 021C6CB4 2800 cmp r0,#0x0 ;1S
  589. 021C6CB6 D000 beq #0x21C6CBA ;1N+2S
  590. 021C6CB8 2401 mov r4,#0x1 ;1S
  591. 021C6CBA 4803 ldr r0,=#0x2EC7 ;1S+1ND+1I
  592. 021C6CBC F010FC50 bl #0x21D7560 ;1N+3S
  593. 021C6CC0 1C20 mov r0,r4 ;1S
  594. 021C6CC2 BDF8 pop {r3-r7,r15} ;1N+2S+1ND+5SD+1I
  595.  
  596.  
  597.  
  598. 021D777C 4A0A ldr r2,=#0x21F3EEC ;1S+1ND+1I
  599. 021D777E 6813 ldr r3,[r2] ;1S+1ND+1I
  600. 021D7780 2B60 cmp r3,#0x60 ;1S
  601. 021D7782 D20E bcs #0x21D77A2 ;1N+2S
  602. 021D7784 0059 lsl r1,r3,#0x1 ;1S
  603. 021D7786 1851 add r1,r2,r1 ;1S
  604. 021D7788 8889 ldrh r1,[r1,#0x4] ;1S+1ND+1I
  605. 021D778A 4288 cmp r0,r1 ;1S
  606. 021D778C D104 bne #0x21D7798 ;1N+2S
  607. 021D778E 0098 lsl r0,r3,#0x2 ;1S
  608. 021D7790 1810 add r0,r2,r0 ;1S
  609. 021D7792 30C4 add r0,#0xC4 ;1S
  610. 021D7794 6800 ldr r0,[r0] ;1S+1ND+1I
  611. 021D7796 4770 bx r14 ;1N+2S
  612. 021D7798 2900 cmp r1,#0x0 ;1S
  613. 021D779A D002 beq #0x21D77A2 ;1N+2S
  614. 021D779C 1C5B add r3,r3,1 ;1S
  615. 021D779E 2B60 cmp r3,#0x60 ;1S
  616. 021D77A0 D3F0 bcc #0x21D7784 ;1N+2S
  617. 021D77A2 2000 mov r0,#0x0 ;1S
  618. 021D77A4 4770 bx r14 ;1N+2S
  619.  
  620.  
  621.  
  622.  
  623. 021C6C9E 0400 lsl r0,r0,#0x10 ;1S
  624. 021C6CA0 0C00 lsr r0,r0,#0x10 ;1S
  625. 021C6CA2 0600 lsl r0,r0,#0x18 ;1S
  626. 021C6CA4 0E00 lsr r0,r0,#0x18 ;1S
  627. 021C6CA6 F010FE53 bl #0x21D7950 ;1N+3S
  628. 021C6CAA 1C04 mov r4,r0 ;1S
  629. 021C6CAC 6868 ldr r0,[r5,#0x4] ;1S+1ND+1I
  630. 021C6CAE 2103 mov r1,#0x3 ;1S
  631. 021C6CB0 F7F2FA44 bl #0x21B913C ;1N+3S
  632. 021C6CB4 2800 cmp r0,#0x0 ;1S
  633. 021C6CB6 D000 beq #0x21C6CBA ;1N+2S
  634. 021C6CB8 2401 mov r4,#0x1 ;1S
  635. 021C6CBA 4803 ldr r0,=#0x2EC7 ;1S+1ND+1I
  636. 021C6CBC F010FC50 bl #0x21D7560 ;1N+3S
  637. 021C6CC0 1C20 mov r0,r4 ;1S
  638. 021C6CC2 BDF8 pop {r3-r7,r15} ;1N+2S+1ND+5SD+1I
  639.  
  640.  
  641.  
  642.  
  643. 021D7950 B508 push {r3,r14} ;1N+1ND+1SD
  644. 021D7952 4905 ldr r1,=#0x21F043C ;1S+1ND+1I
  645. 021D7954 5C08 ldrb r0,[r1,r0] ;1S+1ND+1I
  646. 021D7956 F7FFFFB9 bl #0x21D78CC ;1N+3S
  647. 021D795A 0600 lsl r0,r0,#0x18 ;1S
  648. 021D795C 0E00 lsr r0,r0,#0x18 ;1S
  649. 021D795E D101 bne #0x21D7964 ;1N+2S
  650. 021D7960 2001 mov r0,#0x1 ;1S
  651. 021D7962 BD08 pop {r3,r15} ;1N+2S+1ND+1SD+1I
  652. 021D7964 2000 mov r0,#0x0 ;1S
  653. 021D7966 BD08 pop {r3,r15} ;1N+2S+1ND+1SD+1I
  654.  
  655.  
  656.  
  657.  
  658. 021B913C 2000 mov r0,#0x0 ;1S
  659. 021B913E 4770 bx r14 ;1N+2S
  660.  
  661.  
  662.  
  663.  
  664. 021C6CBA 4803 ldr r0,=#0x2EC7 ;1S+1ND+1I
  665. 021C6CBC F010FC50 bl #0x21D7560 ;1N+3S
  666. 021C6CC0 1C20 mov r0,r4 ;1S
  667. 021C6CC2 BDF8 pop {r3-r7,r15} ;1N+2S+1ND+5SD+1I
  668.  
  669.  
  670.  
  671.  
  672. 021D7560 B418 push {r3,r4} ;1N+1ND+1SD
  673. 021D7562 4818 ldr r0,=#0x21F3EEC ;1S+1ND+1I
  674. 021D7564 6801 ldr r1,[r0] ;1S+1ND+1I
  675. 021D7566 2900 cmp r1,#0x0 ;1S
  676. 021D7568 D02A beq #0x21D75C0 ;1N+2S
  677. 021D756A 0409 lsl r1,r1,#0x10 ;1S
  678. 021D756C 0C0B lsr r3,r1,#0x10 ;1S
  679. 021D756E 2200 mov r2,#0x0 ;1S
  680. 021D7570 E006 b #0x21D7580 ;1N+2S
  681. 021D7572 1C59 add r1,r3,1 ;1S
  682. 021D7574 1C1C mov r4,r3 ;1S
  683. 021D7576 0409 lsl r1,r1,#0x10 ;1S
  684. 021D7578 0C0B lsr r3,r1,#0x10 ;1S
  685. 021D757A 0061 lsl r1,r4,#0x1 ;1S
  686. 021D757C 1841 add r1,r0,r1 ;1S
  687. 021D757E 808A strh r2,[r1,#0x4] ;1N+1ND
  688. 021D7580 2B60 cmp r3,#0x60 ;1S
  689. 021D7582 D204 bcs #0x21D758E ;1N+2S
  690. 021D7584 0059 lsl r1,r3,#0x1 ;1S
  691. 021D7586 1841 add r1,r0,r1 ;1S
  692. 021D7588 8889 ldrh r1,[r1,#0x4] ;1S+1ND+1I
  693. 021D758A 2900 cmp r1,#0x0 ;1S
  694. 021D758C D1F1 bne #0x21D7572 ;1N+2S
  695. 021D758E 6801 ldr r1,[r0] ;1S+1ND+1I
  696. 021D7590 2200 mov r2,#0x0 ;1S
  697. 021D7592 1E49 sub r1,r1,1 ;1S
  698. 021D7594 6001 str r1,[r0] ;1N+1ND
  699. 021D7596 0049 lsl r1,r1,#0x1 ;1S
  700. 021D7598 1841 add r1,r0,r1 ;1S
  701. 021D759A 808A strh r2,[r1,#0x4] ;1N+1ND
  702. 021D759C 6801 ldr r1,[r0] ;1S+1ND+1I
  703. 021D759E 2900 cmp r1,#0x0 ;1S
  704. 021D75A0 D00E beq #0x21D75C0 ;1N+2S
  705. 021D75A2 D00D beq #0x21D75C0 ;1N+2S
  706. 021D75A4 6801 ldr r1,[r0] ;1S+1ND+1I
  707. 021D75A6 1E4A sub r2,r1,1 ;1S
  708. 021D75A8 0051 lsl r1,r2,#0x1 ;1S
  709. 021D75AA 6002 str r2,[r0] ;1N+1ND
  710. 021D75AC 1841 add r1,r0,r1 ;1S
  711. 021D75AE 8889 ldrh r1,[r1,#0x4] ;1S+1ND+1I
  712. 021D75B0 2901 cmp r1,#0x1 ;1S
  713. 021D75B2 D103 bne #0x21D75BC ;1N+2S
  714. 021D75B4 1C51 add r1,r2,1 ;1S
  715. 021D75B6 6001 str r1,[r0] ;1N+1ND
  716. 021D75B8 BC18 pop {r3,r4} ;1S+1ND+1SD+1I
  717. 021D75BA 4770 bx r14 ;1N+2S
  718. 021D75BC 2A00 cmp r2,#0x0 ;1S
  719. 021D75BE D1F1 bne #0x21D75A4 ;1N+2S
  720. 021D75C0 BC18 pop {r3,r4} ;1S+1ND+1SD+1I
  721. 021D75C2 4770 bx r14 ;1N+2S
  722.  
  723.  
  724.  
  725.  
  726. function pointer passed as r0
  727. -----------------------------------------------------------------------------------------
  728. 021BACCC B538 push {r3-r5,r14} ;1N+1ND+3SD
  729. 021BACCE 1C0D mov r5,r1 ;1S
  730. 021BACD0 6829 ldr r1,[r5] ;1S+1ND+1I
  731. 021BACD2 1C04 mov r4,r0 ;1S
  732. 021BACD4 2907 cmp r1,#0x7 ;1S
  733. 021BACD6 D830 bhi #0x21BAD3A ;1N+2S
  734. 021BACD8 1849 add r1,r1,r1 ;1S
  735. 021BACDA 4479 add r1,r15 ;1S
  736. 021BACDC 88C9 ldrh r1,[r1,#0x6] ;1S+1ND+1I
  737. 021BACDE 0409 lsl r1,r1,#0x10 ;1S
  738. 021BACE0 1409 asr r1,r1,#0x10 ;1S
  739. 021BACE2 448F add r15,r1 ;1S
  740. 021BACE4 000E lsl r6,r1,#0x0 ;1S
  741. 021BACE6 0038 lsl r0,r7,#0x0 ;1S
  742. 021BACE8 0042 lsl r2,r0,#0x1 ;1S
  743. 021BACEA 004C lsl r4,r1,#0x1 ;1S
  744. 021BACEC 00A2 lsl r2,r4,#0x2 ;1S
  745. 021BACEE 00B2 lsl r2,r6,#0x2 ;1S
  746. 021BACF0 00C4 lsl r4,r0,#0x3 ;1S
  747. 021BACF2 00E4 lsl r4,r4,#0x3 ;1S
  748. 021BACF4 6C60 ldr r0,[r4,#0x44] ;1S+1ND+1I
  749. 021BACF6 F001FB5B bl #0x21BC3B0 ;1N+3S
  750. 021BACFA 2800 cmp r0,#0x0 ;1S
  751. 021BACFC D00D beq #0x21BAD1A ;1N+2S
  752. 021BACFE 20CB mov r0,#0xCB ;1S
  753. 021BAD00 0100 lsl r0,r0,#0x4 ;1S
  754. 021BAD02 5823 ldr r3,[r4,r0] ;1S+1ND+1I
  755. 021BAD04 1C20 mov r0,r4 ;1S
  756. 021BAD06 1C1A mov r2,r3 ;1S
  757. 021BAD08 681B ldr r3,[r3] ;1S+1ND+1I
  758. 021BAD0A 2108 mov r1,#0x8 ;1S
  759. 021BAD0C 3208 add r2,#0x8 ;1S
  760. 021BAD0E F000FD19 bl #0x21BB744 ;1N+3S
  761. 021BAD12 6828 ldr r0,[r5] ;1S+1ND+1I
  762. 021BAD14 1C40 add r0,r0,1 ;1S
  763. 021BAD16 6028 str r0,[r5] ;1N+1ND
  764. 021BAD18 E0A4 b #0x21BAE64 ;1N+2S
  765. 021BAD1A 6828 ldr r0,[r5] ;1S+1ND+1I
  766. 021BAD1C E032 b #0x21BAD84 ;1N+2S
  767. 021BAD1E F000FD4B bl #0x21BB7B8 ;1N+3S
  768. 021BAD22 2800 cmp r0,#0x0 ;1S
  769. 021BAD24 D009 beq #0x21BAD3A ;1N+2S
  770. 021BAD26 E033 b #0x21BAD90 ;1N+2S
  771. 021BAD28 2103 mov r1,#0x3 ;1S
  772. 021BAD2A F000FD05 bl #0x21BB738 ;1N+3S
  773. 021BAD2E 6828 ldr r0,[r5] ;1S+1ND+1I
  774. 021BAD30 E027 b #0x21BAD82 ;1N+2S
  775. 021BAD32 F000FD41 bl #0x21BB7B8 ;1N+3S
  776. 021BAD36 2800 cmp r0,#0x0 ;1S
  777. 021BAD38 D100 bne #0x21BAD3C ;1N+2S
  778. 021BAD3A E093 b #0x21BAE64 ;1N+2S
  779. 021BAD3C 1C20 mov r0,r4 ;1S
  780. 021BAD3E F000FD57 bl #0x21BB7F0 ;1N+3S
  781. 021BAD42 68E0 ldr r0,[r4,#0xC] ;1S+1ND+1I
  782. 021BAD44 F7FFFC58 bl #0x21BA5F8 ;1N+3S
  783. 021BAD48 2800 cmp r0,#0x0 ;1S
  784. 021BAD4A D004 beq #0x21BAD56 ;1N+2S
  785. 021BAD4C 4946 ldr r1,=#0x21BB229 ;1S+1ND+1I
  786. 021BAD4E 1C20 mov r0,r4 ;1S
  787. 021BAD50 F7FFFF5C bl #0x21BAC0C ;1N+3S
  788. 021BAD54 E086 b #0x21BAE64 ;1N+2S
  789. 021BAD56 68E0 ldr r0,[r4,#0xC] ;1S+1ND+1I
  790. 021BAD58 F7FFFC6E bl #0x21BA638 ;1N+3S
  791. 021BAD5C 2800 cmp r0,#0x0 ;1S
  792. 021BAD5E D002 beq #0x21BAD66 ;1N+2S
  793. 021BAD60 1C20 mov r0,r4 ;1S
  794. 021BAD62 4942 ldr r1,=#0x21BB2A1 ;1S+1ND+1I
  795. 021BAD64 E7F4 b #0x21BAD50 ;1N+2S
  796. 021BAD66 1C20 mov r0,r4 ;1S
  797. 021BAD68 F000FCAE bl #0x21BB6C8 ;1N+3S
  798. 021BAD6C 1C20 mov r0,r4 ;1S
  799. 021BAD6E F000F885 bl #0x21BAE7C ;1N+3S
  800. 021BAD72 1C02 mov r2,r0 ;1S
  801. 021BAD74 1C20 mov r0,r4 ;1S
  802. 021BAD76 2101 mov r1,#0x1 ;1S
  803. 021BAD78 F000FC66 bl #0x21BB648 ;1N+3S
  804. 021BAD7C 2800 cmp r0,#0x0 ;1S
  805. 021BAD7E 6828 ldr r0,[r5] ;1S+1ND+1I
  806. 021BAD80 D000 beq #0x21BAD84 ;1N+2S
  807. 021BAD82 E7C7 b #0x21BAD14 ;1N+2S
  808. 021BAD84 1C80 add r0,r0,2 ;1S
  809. 021BAD86 E7C6 b #0x21BAD16 ;1N+2S
  810. 021BAD88 F000FD16 bl #0x21BB7B8 ;1N+3S
  811. 021BAD8C 2800 cmp r0,#0x0 ;1S
  812. 021BAD8E D069 beq #0x21BAE64 ;1N+2S
  813. 021BAD90 1C20 mov r0,r4 ;1S
  814. 021BAD92 F000FD2D bl #0x21BB7F0 ;1N+3S
  815. 021BAD96 E7BC b #0x21BAD12 ;1N+2S
  816. 021BAD98 6C60 ldr r0,[r4,#0x44] ;1S+1ND+1I
  817. 021BAD9A F000FF5B bl #0x21BBC54 ;1N+3S
  818. 021BAD9E 1C20 mov r0,r4 ;1S
  819. 021BADA0 F000FD26 bl #0x21BB7F0 ;1N+3S
  820. 021BADA4 6828 ldr r0,[r5] ;1S+1ND+1I
  821. 021BADA6 1C40 add r0,r0,1 ;1S
  822. 021BADA8 6028 str r0,[r5] ;1N+1ND
  823. 021BADAA 1C21 mov r1,r4 ;1S
  824. 021BADAC 6C60 ldr r0,[r4,#0x44] ;1S+1ND+1I
  825. 021BADAE 31B4 add r1,#0xB4 ;1S
  826. 021BADB0 F000FF58 bl #0x21BBC64 ;1N+3S
  827. 021BADB4 64A0 str r0,[r4,#0x48] ;1N+1ND
  828. 021BADB6 68E0 ldr r0,[r4,#0xC] ;1S+1ND+1I
  829. 021BADB8 F7FDFC92 bl #0x21B86E0 ;1N+3S
  830. 021BADBC 2800 cmp r0,#0x0 ;1S
  831. 021BADBE D003 beq #0x21BADC8 ;1N+2S
  832. 021BADC0 1C20 mov r0,r4 ;1S
  833. 021BADC2 30B4 add r0,#0xB4 ;1S
  834. 021BADC4 F000FBE2 bl #0x21BB58C ;1N+3S
  835. 021BADC8 E799 b #0x21BACFE ;1N+2S
  836. 021BADCA F000FCF5 bl #0x21BB7B8 ;1N+3S
  837. 021BADCE 2800 cmp r0,#0x0 ;1S
  838. 021BADD0 D048 beq #0x21BAE64 ;1N+2S
  839. 021BADD2 1C20 mov r0,r4 ;1S
  840. 021BADD4 F000FD0C bl #0x21BB7F0 ;1N+3S
  841. 021BADD8 6CA0 ldr r0,[r4,#0x48] ;1S+1ND+1I
  842. 021BADDA 2806 cmp r0,#0x6 ;1S
  843. 021BADDC D840 bhi #0x21BAE60 ;1N+2S
  844. 021BADDE 1800 add r0,r0,r0 ;1S
  845. 021BADE0 4478 add r0,r15 ;1S
  846. 021BADE2 88C0 ldrh r0,[r0,#0x6] ;1S+1ND+1I
  847. 021BADE4 0400 lsl r0,r0,#0x10 ;1S
  848. 021BADE6 1400 asr r0,r0,#0x10 ;1S
  849. 021BADE8 4487 add r15,r0 ;1S
  850. 021BADEA 000C lsl r4,r1,#0x0 ;1S
  851. 021BADEC 003A lsl r2,r7,#0x0 ;1S
  852. 021BADEE 0018 lsl r0,r3,#0x0 ;1S
  853. 021BADF0 0014 lsl r4,r2,#0x0 ;1S
  854. 021BADF2 005A lsl r2,r3,#0x1 ;1S
  855. 021BADF4 0074 lsl r4,r6,#0x1 ;1S
  856. 021BADF6 0040 lsl r0,r0,#0x1 ;1S
  857. 021BADF8 1C20 mov r0,r4 ;1S
  858. 021BADFA F7FFFF0B bl #0x21BAC14 ;1N+3S
  859. 021BADFE E031 b #0x21BAE64 ;1N+2S
  860. 021BAE00 2006 mov r0,#0x6 ;1S
  861. 021BAE02 E788 b #0x21BAD16 ;1N+2S
  862. 021BAE04 68E0 ldr r0,[r4,#0xC] ;1S+1ND+1I
  863. 021BAE06 F7FDFC67 bl #0x21B86D8 ;1N+3S
  864. 021BAE0A 1C05 mov r5,r0 ;1S
  865. 021BAE0C 68E0 ldr r0,[r4,#0xC] ;1S+1ND+1I
  866. 021BAE0E F7FDFBCB bl #0x21B85A8 ;1N+3S
  867. 021BAE12 2D00 cmp r5,#0x0 ;1S
  868. 021BAE14 D104 bne #0x21BAE20 ;1N+2S
  869. 021BAE16 2800 cmp r0,#0x0 ;1S
  870. 021BAE18 D102 bne #0x21BAE20 ;1N+2S
  871. 021BAE1A 1C20 mov r0,r4 ;1S
  872. 021BAE1C 4914 ldr r1,=#0x21BAE81 ;1S+1ND+1I
  873. 021BAE1E E797 b #0x21BAD50 ;1N+2S
  874. 021BAE20 1C20 mov r0,r4 ;1S
  875. 021BAE22 4914 ldr r1,=#0x21BAF19 ;1S+1ND+1I
  876. 021BAE24 E794 b #0x21BAD50 ;1N+2S
  877. 021BAE26 1C20 mov r0,r4 ;1S
  878. 021BAE28 4913 ldr r1,=#0x21BB101 ;1S+1ND+1I
  879. 021BAE2A E791 b #0x21BAD50 ;1N+2S
  880. 021BAE2C 6C60 ldr r0,[r4,#0x44] ;1S+1ND+1I
  881. 021BAE2E F001FBA5 bl #0x21BC57C ;1N+3S
  882. 021BAE32 1C01 mov r1,r0 ;1S
  883. 021BAE34 68E0 ldr r0,[r4,#0xC] ;1S+1ND+1I
  884. 021BAE36 F7FEF983 bl #0x21B9140 ;1N+3S
  885. 021BAE3A 490C ldr r1,=#0x21BB2A1 ;1S+1ND+1I
  886. 021BAE3C 1C20 mov r0,r4 ;1S
  887. 021BAE3E F7FFFEE5 bl #0x21BAC0C ;1N+3S
  888. 021BAE42 2000 mov r0,#0x0 ;1S
  889. 021BAE44 BD38 pop {r3-r5,r15} ;1N+2S+1ND+3SD+1I
Advertisement
Comments
  • User was banned
Add Comment
Please, Sign In to add comment