modularkbd.elf: file format elf32-littlearm Sections: Idx Name Size VMA LMA File off Algn 0 .isr_vector 000001c4 08000000 08000000 00001000 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA 1 .text 0000b218 080001c4 080001c4 000011c4 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 2 .rodata 0000005c 0800b3dc 0800b3dc 0000c3dc 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 3 .ARM.extab 00000000 0800b438 0800b438 0000d1a0 2**0 CONTENTS, READONLY 4 .ARM 00000008 0800b438 0800b438 0000c438 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 5 .preinit_array 00000000 0800b440 0800b440 0000d1a0 2**0 CONTENTS, ALLOC, LOAD, DATA 6 .init_array 00000004 0800b440 0800b440 0000c440 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 7 .fini_array 00000004 0800b444 0800b444 0000c444 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 8 .data 000001a0 20000000 0800b448 0000d000 2**2 CONTENTS, ALLOC, LOAD, DATA 9 .bss 000015bc 200001a0 0800b5e8 0000d1a0 2**2 ALLOC 10 ._user_heap_stack 00000604 2000175c 0800b5e8 0000d75c 2**0 ALLOC 11 .ARM.attributes 00000030 00000000 00000000 0000d1a0 2**0 CONTENTS, READONLY 12 .debug_info 0001be15 00000000 00000000 0000d1d0 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS 13 .debug_abbrev 00004285 00000000 00000000 00028fe5 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS 14 .debug_aranges 000017f0 00000000 00000000 0002d270 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS 15 .debug_rnglists 00001291 00000000 00000000 0002ea60 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS 16 .debug_macro 000262b3 00000000 00000000 0002fcf1 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS 17 .debug_line 0001f083 00000000 00000000 00055fa4 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS 18 .debug_str 000d80a4 00000000 00000000 00075027 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS 19 .comment 00000043 00000000 00000000 0014d0cb 2**0 CONTENTS, READONLY 20 .debug_frame 0000645c 00000000 00000000 0014d110 2**2 CONTENTS, READONLY, DEBUGGING, OCTETS 21 .debug_line_str 00000062 00000000 00000000 0015356c 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS Disassembly of section .text: 080001c4 <__do_global_dtors_aux>: 80001c4: b510 push {r4, lr} 80001c6: 4c05 ldr r4, [pc, #20] @ (80001dc <__do_global_dtors_aux+0x18>) 80001c8: 7823 ldrb r3, [r4, #0] 80001ca: b933 cbnz r3, 80001da <__do_global_dtors_aux+0x16> 80001cc: 4b04 ldr r3, [pc, #16] @ (80001e0 <__do_global_dtors_aux+0x1c>) 80001ce: b113 cbz r3, 80001d6 <__do_global_dtors_aux+0x12> 80001d0: 4804 ldr r0, [pc, #16] @ (80001e4 <__do_global_dtors_aux+0x20>) 80001d2: f3af 8000 nop.w 80001d6: 2301 movs r3, #1 80001d8: 7023 strb r3, [r4, #0] 80001da: bd10 pop {r4, pc} 80001dc: 200001a0 .word 0x200001a0 80001e0: 00000000 .word 0x00000000 80001e4: 0800b3c4 .word 0x0800b3c4 080001e8 : 80001e8: b508 push {r3, lr} 80001ea: 4b03 ldr r3, [pc, #12] @ (80001f8 ) 80001ec: b11b cbz r3, 80001f6 80001ee: 4903 ldr r1, [pc, #12] @ (80001fc ) 80001f0: 4803 ldr r0, [pc, #12] @ (8000200 ) 80001f2: f3af 8000 nop.w 80001f6: bd08 pop {r3, pc} 80001f8: 00000000 .word 0x00000000 80001fc: 200001a4 .word 0x200001a4 8000200: 0800b3c4 .word 0x0800b3c4 08000204 <__aeabi_uldivmod>: 8000204: b953 cbnz r3, 800021c <__aeabi_uldivmod+0x18> 8000206: b94a cbnz r2, 800021c <__aeabi_uldivmod+0x18> 8000208: 2900 cmp r1, #0 800020a: bf08 it eq 800020c: 2800 cmpeq r0, #0 800020e: bf1c itt ne 8000210: f04f 31ff movne.w r1, #4294967295 @ 0xffffffff 8000214: f04f 30ff movne.w r0, #4294967295 @ 0xffffffff 8000218: f000 b988 b.w 800052c <__aeabi_idiv0> 800021c: f1ad 0c08 sub.w ip, sp, #8 8000220: e96d ce04 strd ip, lr, [sp, #-16]! 8000224: f000 f806 bl 8000234 <__udivmoddi4> 8000228: f8dd e004 ldr.w lr, [sp, #4] 800022c: e9dd 2302 ldrd r2, r3, [sp, #8] 8000230: b004 add sp, #16 8000232: 4770 bx lr 08000234 <__udivmoddi4>: 8000234: e92d 47f0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, lr} 8000238: 9d08 ldr r5, [sp, #32] 800023a: 468e mov lr, r1 800023c: 4604 mov r4, r0 800023e: 4688 mov r8, r1 8000240: 2b00 cmp r3, #0 8000242: d14a bne.n 80002da <__udivmoddi4+0xa6> 8000244: 428a cmp r2, r1 8000246: 4617 mov r7, r2 8000248: d962 bls.n 8000310 <__udivmoddi4+0xdc> 800024a: fab2 f682 clz r6, r2 800024e: b14e cbz r6, 8000264 <__udivmoddi4+0x30> 8000250: f1c6 0320 rsb r3, r6, #32 8000254: fa01 f806 lsl.w r8, r1, r6 8000258: fa20 f303 lsr.w r3, r0, r3 800025c: 40b7 lsls r7, r6 800025e: ea43 0808 orr.w r8, r3, r8 8000262: 40b4 lsls r4, r6 8000264: ea4f 4e17 mov.w lr, r7, lsr #16 8000268: fa1f fc87 uxth.w ip, r7 800026c: fbb8 f1fe udiv r1, r8, lr 8000270: 0c23 lsrs r3, r4, #16 8000272: fb0e 8811 mls r8, lr, r1, r8 8000276: ea43 4308 orr.w r3, r3, r8, lsl #16 800027a: fb01 f20c mul.w r2, r1, ip 800027e: 429a cmp r2, r3 8000280: d909 bls.n 8000296 <__udivmoddi4+0x62> 8000282: 18fb adds r3, r7, r3 8000284: f101 30ff add.w r0, r1, #4294967295 @ 0xffffffff 8000288: f080 80ea bcs.w 8000460 <__udivmoddi4+0x22c> 800028c: 429a cmp r2, r3 800028e: f240 80e7 bls.w 8000460 <__udivmoddi4+0x22c> 8000292: 3902 subs r1, #2 8000294: 443b add r3, r7 8000296: 1a9a subs r2, r3, r2 8000298: b2a3 uxth r3, r4 800029a: fbb2 f0fe udiv r0, r2, lr 800029e: fb0e 2210 mls r2, lr, r0, r2 80002a2: ea43 4302 orr.w r3, r3, r2, lsl #16 80002a6: fb00 fc0c mul.w ip, r0, ip 80002aa: 459c cmp ip, r3 80002ac: d909 bls.n 80002c2 <__udivmoddi4+0x8e> 80002ae: 18fb adds r3, r7, r3 80002b0: f100 32ff add.w r2, r0, #4294967295 @ 0xffffffff 80002b4: f080 80d6 bcs.w 8000464 <__udivmoddi4+0x230> 80002b8: 459c cmp ip, r3 80002ba: f240 80d3 bls.w 8000464 <__udivmoddi4+0x230> 80002be: 443b add r3, r7 80002c0: 3802 subs r0, #2 80002c2: ea40 4001 orr.w r0, r0, r1, lsl #16 80002c6: eba3 030c sub.w r3, r3, ip 80002ca: 2100 movs r1, #0 80002cc: b11d cbz r5, 80002d6 <__udivmoddi4+0xa2> 80002ce: 40f3 lsrs r3, r6 80002d0: 2200 movs r2, #0 80002d2: e9c5 3200 strd r3, r2, [r5] 80002d6: e8bd 87f0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, pc} 80002da: 428b cmp r3, r1 80002dc: d905 bls.n 80002ea <__udivmoddi4+0xb6> 80002de: b10d cbz r5, 80002e4 <__udivmoddi4+0xb0> 80002e0: e9c5 0100 strd r0, r1, [r5] 80002e4: 2100 movs r1, #0 80002e6: 4608 mov r0, r1 80002e8: e7f5 b.n 80002d6 <__udivmoddi4+0xa2> 80002ea: fab3 f183 clz r1, r3 80002ee: 2900 cmp r1, #0 80002f0: d146 bne.n 8000380 <__udivmoddi4+0x14c> 80002f2: 4573 cmp r3, lr 80002f4: d302 bcc.n 80002fc <__udivmoddi4+0xc8> 80002f6: 4282 cmp r2, r0 80002f8: f200 8105 bhi.w 8000506 <__udivmoddi4+0x2d2> 80002fc: 1a84 subs r4, r0, r2 80002fe: eb6e 0203 sbc.w r2, lr, r3 8000302: 2001 movs r0, #1 8000304: 4690 mov r8, r2 8000306: 2d00 cmp r5, #0 8000308: d0e5 beq.n 80002d6 <__udivmoddi4+0xa2> 800030a: e9c5 4800 strd r4, r8, [r5] 800030e: e7e2 b.n 80002d6 <__udivmoddi4+0xa2> 8000310: 2a00 cmp r2, #0 8000312: f000 8090 beq.w 8000436 <__udivmoddi4+0x202> 8000316: fab2 f682 clz r6, r2 800031a: 2e00 cmp r6, #0 800031c: f040 80a4 bne.w 8000468 <__udivmoddi4+0x234> 8000320: 1a8a subs r2, r1, r2 8000322: 0c03 lsrs r3, r0, #16 8000324: ea4f 4e17 mov.w lr, r7, lsr #16 8000328: b280 uxth r0, r0 800032a: b2bc uxth r4, r7 800032c: 2101 movs r1, #1 800032e: fbb2 fcfe udiv ip, r2, lr 8000332: fb0e 221c mls r2, lr, ip, r2 8000336: ea43 4302 orr.w r3, r3, r2, lsl #16 800033a: fb04 f20c mul.w r2, r4, ip 800033e: 429a cmp r2, r3 8000340: d907 bls.n 8000352 <__udivmoddi4+0x11e> 8000342: 18fb adds r3, r7, r3 8000344: f10c 38ff add.w r8, ip, #4294967295 @ 0xffffffff 8000348: d202 bcs.n 8000350 <__udivmoddi4+0x11c> 800034a: 429a cmp r2, r3 800034c: f200 80e0 bhi.w 8000510 <__udivmoddi4+0x2dc> 8000350: 46c4 mov ip, r8 8000352: 1a9b subs r3, r3, r2 8000354: fbb3 f2fe udiv r2, r3, lr 8000358: fb0e 3312 mls r3, lr, r2, r3 800035c: ea40 4303 orr.w r3, r0, r3, lsl #16 8000360: fb02 f404 mul.w r4, r2, r4 8000364: 429c cmp r4, r3 8000366: d907 bls.n 8000378 <__udivmoddi4+0x144> 8000368: 18fb adds r3, r7, r3 800036a: f102 30ff add.w r0, r2, #4294967295 @ 0xffffffff 800036e: d202 bcs.n 8000376 <__udivmoddi4+0x142> 8000370: 429c cmp r4, r3 8000372: f200 80ca bhi.w 800050a <__udivmoddi4+0x2d6> 8000376: 4602 mov r2, r0 8000378: 1b1b subs r3, r3, r4 800037a: ea42 400c orr.w r0, r2, ip, lsl #16 800037e: e7a5 b.n 80002cc <__udivmoddi4+0x98> 8000380: f1c1 0620 rsb r6, r1, #32 8000384: 408b lsls r3, r1 8000386: fa22 f706 lsr.w r7, r2, r6 800038a: 431f orrs r7, r3 800038c: fa0e f401 lsl.w r4, lr, r1 8000390: fa20 f306 lsr.w r3, r0, r6 8000394: fa2e fe06 lsr.w lr, lr, r6 8000398: ea4f 4917 mov.w r9, r7, lsr #16 800039c: 4323 orrs r3, r4 800039e: fa00 f801 lsl.w r8, r0, r1 80003a2: fa1f fc87 uxth.w ip, r7 80003a6: fbbe f0f9 udiv r0, lr, r9 80003aa: 0c1c lsrs r4, r3, #16 80003ac: fb09 ee10 mls lr, r9, r0, lr 80003b0: ea44 440e orr.w r4, r4, lr, lsl #16 80003b4: fb00 fe0c mul.w lr, r0, ip 80003b8: 45a6 cmp lr, r4 80003ba: fa02 f201 lsl.w r2, r2, r1 80003be: d909 bls.n 80003d4 <__udivmoddi4+0x1a0> 80003c0: 193c adds r4, r7, r4 80003c2: f100 3aff add.w sl, r0, #4294967295 @ 0xffffffff 80003c6: f080 809c bcs.w 8000502 <__udivmoddi4+0x2ce> 80003ca: 45a6 cmp lr, r4 80003cc: f240 8099 bls.w 8000502 <__udivmoddi4+0x2ce> 80003d0: 3802 subs r0, #2 80003d2: 443c add r4, r7 80003d4: eba4 040e sub.w r4, r4, lr 80003d8: fa1f fe83 uxth.w lr, r3 80003dc: fbb4 f3f9 udiv r3, r4, r9 80003e0: fb09 4413 mls r4, r9, r3, r4 80003e4: ea4e 4404 orr.w r4, lr, r4, lsl #16 80003e8: fb03 fc0c mul.w ip, r3, ip 80003ec: 45a4 cmp ip, r4 80003ee: d908 bls.n 8000402 <__udivmoddi4+0x1ce> 80003f0: 193c adds r4, r7, r4 80003f2: f103 3eff add.w lr, r3, #4294967295 @ 0xffffffff 80003f6: f080 8082 bcs.w 80004fe <__udivmoddi4+0x2ca> 80003fa: 45a4 cmp ip, r4 80003fc: d97f bls.n 80004fe <__udivmoddi4+0x2ca> 80003fe: 3b02 subs r3, #2 8000400: 443c add r4, r7 8000402: ea43 4000 orr.w r0, r3, r0, lsl #16 8000406: eba4 040c sub.w r4, r4, ip 800040a: fba0 ec02 umull lr, ip, r0, r2 800040e: 4564 cmp r4, ip 8000410: 4673 mov r3, lr 8000412: 46e1 mov r9, ip 8000414: d362 bcc.n 80004dc <__udivmoddi4+0x2a8> 8000416: d05f beq.n 80004d8 <__udivmoddi4+0x2a4> 8000418: b15d cbz r5, 8000432 <__udivmoddi4+0x1fe> 800041a: ebb8 0203 subs.w r2, r8, r3 800041e: eb64 0409 sbc.w r4, r4, r9 8000422: fa04 f606 lsl.w r6, r4, r6 8000426: fa22 f301 lsr.w r3, r2, r1 800042a: 431e orrs r6, r3 800042c: 40cc lsrs r4, r1 800042e: e9c5 6400 strd r6, r4, [r5] 8000432: 2100 movs r1, #0 8000434: e74f b.n 80002d6 <__udivmoddi4+0xa2> 8000436: fbb1 fcf2 udiv ip, r1, r2 800043a: 0c01 lsrs r1, r0, #16 800043c: ea41 410e orr.w r1, r1, lr, lsl #16 8000440: b280 uxth r0, r0 8000442: ea40 4201 orr.w r2, r0, r1, lsl #16 8000446: 463b mov r3, r7 8000448: 4638 mov r0, r7 800044a: 463c mov r4, r7 800044c: 46b8 mov r8, r7 800044e: 46be mov lr, r7 8000450: 2620 movs r6, #32 8000452: fbb1 f1f7 udiv r1, r1, r7 8000456: eba2 0208 sub.w r2, r2, r8 800045a: ea41 410c orr.w r1, r1, ip, lsl #16 800045e: e766 b.n 800032e <__udivmoddi4+0xfa> 8000460: 4601 mov r1, r0 8000462: e718 b.n 8000296 <__udivmoddi4+0x62> 8000464: 4610 mov r0, r2 8000466: e72c b.n 80002c2 <__udivmoddi4+0x8e> 8000468: f1c6 0220 rsb r2, r6, #32 800046c: fa2e f302 lsr.w r3, lr, r2 8000470: 40b7 lsls r7, r6 8000472: 40b1 lsls r1, r6 8000474: fa20 f202 lsr.w r2, r0, r2 8000478: ea4f 4e17 mov.w lr, r7, lsr #16 800047c: 430a orrs r2, r1 800047e: fbb3 f8fe udiv r8, r3, lr 8000482: b2bc uxth r4, r7 8000484: fb0e 3318 mls r3, lr, r8, r3 8000488: 0c11 lsrs r1, r2, #16 800048a: ea41 4103 orr.w r1, r1, r3, lsl #16 800048e: fb08 f904 mul.w r9, r8, r4 8000492: 40b0 lsls r0, r6 8000494: 4589 cmp r9, r1 8000496: ea4f 4310 mov.w r3, r0, lsr #16 800049a: b280 uxth r0, r0 800049c: d93e bls.n 800051c <__udivmoddi4+0x2e8> 800049e: 1879 adds r1, r7, r1 80004a0: f108 3cff add.w ip, r8, #4294967295 @ 0xffffffff 80004a4: d201 bcs.n 80004aa <__udivmoddi4+0x276> 80004a6: 4589 cmp r9, r1 80004a8: d81f bhi.n 80004ea <__udivmoddi4+0x2b6> 80004aa: eba1 0109 sub.w r1, r1, r9 80004ae: fbb1 f9fe udiv r9, r1, lr 80004b2: fb09 f804 mul.w r8, r9, r4 80004b6: fb0e 1119 mls r1, lr, r9, r1 80004ba: b292 uxth r2, r2 80004bc: ea42 4201 orr.w r2, r2, r1, lsl #16 80004c0: 4542 cmp r2, r8 80004c2: d229 bcs.n 8000518 <__udivmoddi4+0x2e4> 80004c4: 18ba adds r2, r7, r2 80004c6: f109 31ff add.w r1, r9, #4294967295 @ 0xffffffff 80004ca: d2c4 bcs.n 8000456 <__udivmoddi4+0x222> 80004cc: 4542 cmp r2, r8 80004ce: d2c2 bcs.n 8000456 <__udivmoddi4+0x222> 80004d0: f1a9 0102 sub.w r1, r9, #2 80004d4: 443a add r2, r7 80004d6: e7be b.n 8000456 <__udivmoddi4+0x222> 80004d8: 45f0 cmp r8, lr 80004da: d29d bcs.n 8000418 <__udivmoddi4+0x1e4> 80004dc: ebbe 0302 subs.w r3, lr, r2 80004e0: eb6c 0c07 sbc.w ip, ip, r7 80004e4: 3801 subs r0, #1 80004e6: 46e1 mov r9, ip 80004e8: e796 b.n 8000418 <__udivmoddi4+0x1e4> 80004ea: eba7 0909 sub.w r9, r7, r9 80004ee: 4449 add r1, r9 80004f0: f1a8 0c02 sub.w ip, r8, #2 80004f4: fbb1 f9fe udiv r9, r1, lr 80004f8: fb09 f804 mul.w r8, r9, r4 80004fc: e7db b.n 80004b6 <__udivmoddi4+0x282> 80004fe: 4673 mov r3, lr 8000500: e77f b.n 8000402 <__udivmoddi4+0x1ce> 8000502: 4650 mov r0, sl 8000504: e766 b.n 80003d4 <__udivmoddi4+0x1a0> 8000506: 4608 mov r0, r1 8000508: e6fd b.n 8000306 <__udivmoddi4+0xd2> 800050a: 443b add r3, r7 800050c: 3a02 subs r2, #2 800050e: e733 b.n 8000378 <__udivmoddi4+0x144> 8000510: f1ac 0c02 sub.w ip, ip, #2 8000514: 443b add r3, r7 8000516: e71c b.n 8000352 <__udivmoddi4+0x11e> 8000518: 4649 mov r1, r9 800051a: e79c b.n 8000456 <__udivmoddi4+0x222> 800051c: eba1 0109 sub.w r1, r1, r9 8000520: 46c4 mov ip, r8 8000522: fbb1 f9fe udiv r9, r1, lr 8000526: fb09 f804 mul.w r8, r9, r4 800052a: e7c4 b.n 80004b6 <__udivmoddi4+0x282> 0800052c <__aeabi_idiv0>: 800052c: 4770 bx lr 800052e: bf00 nop 08000530 : /** * Enable DMA controller clock */ void MX_DMA_Init(void) { 8000530: b580 push {r7, lr} 8000532: b082 sub sp, #8 8000534: af00 add r7, sp, #0 /* DMA controller clock enable */ __HAL_RCC_DMA1_CLK_ENABLE(); 8000536: 2300 movs r3, #0 8000538: 607b str r3, [r7, #4] 800053a: 4b2f ldr r3, [pc, #188] @ (80005f8 ) 800053c: 6b1b ldr r3, [r3, #48] @ 0x30 800053e: 4a2e ldr r2, [pc, #184] @ (80005f8 ) 8000540: f443 1300 orr.w r3, r3, #2097152 @ 0x200000 8000544: 6313 str r3, [r2, #48] @ 0x30 8000546: 4b2c ldr r3, [pc, #176] @ (80005f8 ) 8000548: 6b1b ldr r3, [r3, #48] @ 0x30 800054a: f403 1300 and.w r3, r3, #2097152 @ 0x200000 800054e: 607b str r3, [r7, #4] 8000550: 687b ldr r3, [r7, #4] __HAL_RCC_DMA2_CLK_ENABLE(); 8000552: 2300 movs r3, #0 8000554: 603b str r3, [r7, #0] 8000556: 4b28 ldr r3, [pc, #160] @ (80005f8 ) 8000558: 6b1b ldr r3, [r3, #48] @ 0x30 800055a: 4a27 ldr r2, [pc, #156] @ (80005f8 ) 800055c: f443 0380 orr.w r3, r3, #4194304 @ 0x400000 8000560: 6313 str r3, [r2, #48] @ 0x30 8000562: 4b25 ldr r3, [pc, #148] @ (80005f8 ) 8000564: 6b1b ldr r3, [r3, #48] @ 0x30 8000566: f403 0380 and.w r3, r3, #4194304 @ 0x400000 800056a: 603b str r3, [r7, #0] 800056c: 683b ldr r3, [r7, #0] /* DMA interrupt init */ /* DMA1_Stream0_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Stream0_IRQn, 0, 0); 800056e: 2200 movs r2, #0 8000570: 2100 movs r1, #0 8000572: 200b movs r0, #11 8000574: f001 fde3 bl 800213e HAL_NVIC_EnableIRQ(DMA1_Stream0_IRQn); 8000578: 200b movs r0, #11 800057a: f001 fdfc bl 8002176 /* DMA1_Stream2_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Stream2_IRQn, 0, 0); 800057e: 2200 movs r2, #0 8000580: 2100 movs r1, #0 8000582: 200d movs r0, #13 8000584: f001 fddb bl 800213e HAL_NVIC_EnableIRQ(DMA1_Stream2_IRQn); 8000588: 200d movs r0, #13 800058a: f001 fdf4 bl 8002176 /* DMA1_Stream4_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Stream4_IRQn, 0, 0); 800058e: 2200 movs r2, #0 8000590: 2100 movs r1, #0 8000592: 200f movs r0, #15 8000594: f001 fdd3 bl 800213e HAL_NVIC_EnableIRQ(DMA1_Stream4_IRQn); 8000598: 200f movs r0, #15 800059a: f001 fdec bl 8002176 /* DMA1_Stream5_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Stream5_IRQn, 0, 0); 800059e: 2200 movs r2, #0 80005a0: 2100 movs r1, #0 80005a2: 2010 movs r0, #16 80005a4: f001 fdcb bl 800213e HAL_NVIC_EnableIRQ(DMA1_Stream5_IRQn); 80005a8: 2010 movs r0, #16 80005aa: f001 fde4 bl 8002176 /* DMA1_Stream6_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Stream6_IRQn, 0, 0); 80005ae: 2200 movs r2, #0 80005b0: 2100 movs r1, #0 80005b2: 2011 movs r0, #17 80005b4: f001 fdc3 bl 800213e HAL_NVIC_EnableIRQ(DMA1_Stream6_IRQn); 80005b8: 2011 movs r0, #17 80005ba: f001 fddc bl 8002176 /* DMA1_Stream7_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA1_Stream7_IRQn, 0, 0); 80005be: 2200 movs r2, #0 80005c0: 2100 movs r1, #0 80005c2: 202f movs r0, #47 @ 0x2f 80005c4: f001 fdbb bl 800213e HAL_NVIC_EnableIRQ(DMA1_Stream7_IRQn); 80005c8: 202f movs r0, #47 @ 0x2f 80005ca: f001 fdd4 bl 8002176 /* DMA2_Stream2_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA2_Stream2_IRQn, 0, 0); 80005ce: 2200 movs r2, #0 80005d0: 2100 movs r1, #0 80005d2: 203a movs r0, #58 @ 0x3a 80005d4: f001 fdb3 bl 800213e HAL_NVIC_EnableIRQ(DMA2_Stream2_IRQn); 80005d8: 203a movs r0, #58 @ 0x3a 80005da: f001 fdcc bl 8002176 /* DMA2_Stream7_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA2_Stream7_IRQn, 0, 0); 80005de: 2200 movs r2, #0 80005e0: 2100 movs r1, #0 80005e2: 2046 movs r0, #70 @ 0x46 80005e4: f001 fdab bl 800213e HAL_NVIC_EnableIRQ(DMA2_Stream7_IRQn); 80005e8: 2046 movs r0, #70 @ 0x46 80005ea: f001 fdc4 bl 8002176 } 80005ee: bf00 nop 80005f0: 3708 adds r7, #8 80005f2: 46bd mov sp, r7 80005f4: bd80 pop {r7, pc} 80005f6: bf00 nop 80005f8: 40023800 .word 0x40023800 080005fc : * Output * EVENT_OUT * EXTI */ void MX_GPIO_Init(void) { 80005fc: b580 push {r7, lr} 80005fe: b08a sub sp, #40 @ 0x28 8000600: af00 add r7, sp, #0 GPIO_InitTypeDef GPIO_InitStruct = {0}; 8000602: f107 0314 add.w r3, r7, #20 8000606: 2200 movs r2, #0 8000608: 601a str r2, [r3, #0] 800060a: 605a str r2, [r3, #4] 800060c: 609a str r2, [r3, #8] 800060e: 60da str r2, [r3, #12] 8000610: 611a str r2, [r3, #16] /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOH_CLK_ENABLE(); 8000612: 2300 movs r3, #0 8000614: 613b str r3, [r7, #16] 8000616: 4b45 ldr r3, [pc, #276] @ (800072c ) 8000618: 6b1b ldr r3, [r3, #48] @ 0x30 800061a: 4a44 ldr r2, [pc, #272] @ (800072c ) 800061c: f043 0380 orr.w r3, r3, #128 @ 0x80 8000620: 6313 str r3, [r2, #48] @ 0x30 8000622: 4b42 ldr r3, [pc, #264] @ (800072c ) 8000624: 6b1b ldr r3, [r3, #48] @ 0x30 8000626: f003 0380 and.w r3, r3, #128 @ 0x80 800062a: 613b str r3, [r7, #16] 800062c: 693b ldr r3, [r7, #16] __HAL_RCC_GPIOA_CLK_ENABLE(); 800062e: 2300 movs r3, #0 8000630: 60fb str r3, [r7, #12] 8000632: 4b3e ldr r3, [pc, #248] @ (800072c ) 8000634: 6b1b ldr r3, [r3, #48] @ 0x30 8000636: 4a3d ldr r2, [pc, #244] @ (800072c ) 8000638: f043 0301 orr.w r3, r3, #1 800063c: 6313 str r3, [r2, #48] @ 0x30 800063e: 4b3b ldr r3, [pc, #236] @ (800072c ) 8000640: 6b1b ldr r3, [r3, #48] @ 0x30 8000642: f003 0301 and.w r3, r3, #1 8000646: 60fb str r3, [r7, #12] 8000648: 68fb ldr r3, [r7, #12] __HAL_RCC_GPIOC_CLK_ENABLE(); 800064a: 2300 movs r3, #0 800064c: 60bb str r3, [r7, #8] 800064e: 4b37 ldr r3, [pc, #220] @ (800072c ) 8000650: 6b1b ldr r3, [r3, #48] @ 0x30 8000652: 4a36 ldr r2, [pc, #216] @ (800072c ) 8000654: f043 0304 orr.w r3, r3, #4 8000658: 6313 str r3, [r2, #48] @ 0x30 800065a: 4b34 ldr r3, [pc, #208] @ (800072c ) 800065c: 6b1b ldr r3, [r3, #48] @ 0x30 800065e: f003 0304 and.w r3, r3, #4 8000662: 60bb str r3, [r7, #8] 8000664: 68bb ldr r3, [r7, #8] __HAL_RCC_GPIOB_CLK_ENABLE(); 8000666: 2300 movs r3, #0 8000668: 607b str r3, [r7, #4] 800066a: 4b30 ldr r3, [pc, #192] @ (800072c ) 800066c: 6b1b ldr r3, [r3, #48] @ 0x30 800066e: 4a2f ldr r2, [pc, #188] @ (800072c ) 8000670: f043 0302 orr.w r3, r3, #2 8000674: 6313 str r3, [r2, #48] @ 0x30 8000676: 4b2d ldr r3, [pc, #180] @ (800072c ) 8000678: 6b1b ldr r3, [r3, #48] @ 0x30 800067a: f003 0302 and.w r3, r3, #2 800067e: 607b str r3, [r7, #4] 8000680: 687b ldr r3, [r7, #4] __HAL_RCC_GPIOD_CLK_ENABLE(); 8000682: 2300 movs r3, #0 8000684: 603b str r3, [r7, #0] 8000686: 4b29 ldr r3, [pc, #164] @ (800072c ) 8000688: 6b1b ldr r3, [r3, #48] @ 0x30 800068a: 4a28 ldr r2, [pc, #160] @ (800072c ) 800068c: f043 0308 orr.w r3, r3, #8 8000690: 6313 str r3, [r2, #48] @ 0x30 8000692: 4b26 ldr r3, [pc, #152] @ (800072c ) 8000694: 6b1b ldr r3, [r3, #48] @ 0x30 8000696: f003 0308 and.w r3, r3, #8 800069a: 603b str r3, [r7, #0] 800069c: 683b ldr r3, [r7, #0] /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOC, GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_9, GPIO_PIN_RESET); 800069e: 2200 movs r2, #0 80006a0: f44f 7170 mov.w r1, #960 @ 0x3c0 80006a4: 4822 ldr r0, [pc, #136] @ (8000730 ) 80006a6: f002 fb2f bl 8002d08 /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_8, GPIO_PIN_RESET); 80006aa: 2200 movs r2, #0 80006ac: f44f 7180 mov.w r1, #256 @ 0x100 80006b0: 4820 ldr r0, [pc, #128] @ (8000734 ) 80006b2: f002 fb29 bl 8002d08 /*Configure GPIO pins : PC4 PC5 */ GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5; 80006b6: 2330 movs r3, #48 @ 0x30 80006b8: 617b str r3, [r7, #20] GPIO_InitStruct.Mode = GPIO_MODE_INPUT; 80006ba: 2300 movs r3, #0 80006bc: 61bb str r3, [r7, #24] GPIO_InitStruct.Pull = GPIO_PULLDOWN; 80006be: 2302 movs r3, #2 80006c0: 61fb str r3, [r7, #28] HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); 80006c2: f107 0314 add.w r3, r7, #20 80006c6: 4619 mov r1, r3 80006c8: 4819 ldr r0, [pc, #100] @ (8000730 ) 80006ca: f002 f971 bl 80029b0 /*Configure GPIO pins : PB0 PB1 PB2 PB10 */ GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_10; 80006ce: f240 4307 movw r3, #1031 @ 0x407 80006d2: 617b str r3, [r7, #20] GPIO_InitStruct.Mode = GPIO_MODE_INPUT; 80006d4: 2300 movs r3, #0 80006d6: 61bb str r3, [r7, #24] GPIO_InitStruct.Pull = GPIO_PULLDOWN; 80006d8: 2302 movs r3, #2 80006da: 61fb str r3, [r7, #28] HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); 80006dc: f107 0314 add.w r3, r7, #20 80006e0: 4619 mov r1, r3 80006e2: 4815 ldr r0, [pc, #84] @ (8000738 ) 80006e4: f002 f964 bl 80029b0 /*Configure GPIO pins : PC6 PC7 PC8 PC9 */ GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_9; 80006e8: f44f 7370 mov.w r3, #960 @ 0x3c0 80006ec: 617b str r3, [r7, #20] GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; 80006ee: 2301 movs r3, #1 80006f0: 61bb str r3, [r7, #24] GPIO_InitStruct.Pull = GPIO_NOPULL; 80006f2: 2300 movs r3, #0 80006f4: 61fb str r3, [r7, #28] GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; 80006f6: 2300 movs r3, #0 80006f8: 623b str r3, [r7, #32] HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); 80006fa: f107 0314 add.w r3, r7, #20 80006fe: 4619 mov r1, r3 8000700: 480b ldr r0, [pc, #44] @ (8000730 ) 8000702: f002 f955 bl 80029b0 /*Configure GPIO pin : PA8 */ GPIO_InitStruct.Pin = GPIO_PIN_8; 8000706: f44f 7380 mov.w r3, #256 @ 0x100 800070a: 617b str r3, [r7, #20] GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; 800070c: 2301 movs r3, #1 800070e: 61bb str r3, [r7, #24] GPIO_InitStruct.Pull = GPIO_NOPULL; 8000710: 2300 movs r3, #0 8000712: 61fb str r3, [r7, #28] GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; 8000714: 2300 movs r3, #0 8000716: 623b str r3, [r7, #32] HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 8000718: f107 0314 add.w r3, r7, #20 800071c: 4619 mov r1, r3 800071e: 4805 ldr r0, [pc, #20] @ (8000734 ) 8000720: f002 f946 bl 80029b0 } 8000724: bf00 nop 8000726: 3728 adds r7, #40 @ 0x28 8000728: 46bd mov sp, r7 800072a: bd80 pop {r7, pc} 800072c: 40023800 .word 0x40023800 8000730: 40020800 .word 0x40020800 8000734: 40020000 .word 0x40020000 8000738: 40020400 .word 0x40020400 0800073c : I2C_HandleTypeDef hi2c1; /* I2C1 init function */ void MX_I2C1_Init(void) { 800073c: b580 push {r7, lr} 800073e: af00 add r7, sp, #0 /* USER CODE END I2C1_Init 0 */ /* USER CODE BEGIN I2C1_Init 1 */ /* USER CODE END I2C1_Init 1 */ hi2c1.Instance = I2C1; 8000740: 4b12 ldr r3, [pc, #72] @ (800078c ) 8000742: 4a13 ldr r2, [pc, #76] @ (8000790 ) 8000744: 601a str r2, [r3, #0] hi2c1.Init.ClockSpeed = 100000; 8000746: 4b11 ldr r3, [pc, #68] @ (800078c ) 8000748: 4a12 ldr r2, [pc, #72] @ (8000794 ) 800074a: 605a str r2, [r3, #4] hi2c1.Init.DutyCycle = I2C_DUTYCYCLE_2; 800074c: 4b0f ldr r3, [pc, #60] @ (800078c ) 800074e: 2200 movs r2, #0 8000750: 609a str r2, [r3, #8] hi2c1.Init.OwnAddress1 = 0; 8000752: 4b0e ldr r3, [pc, #56] @ (800078c ) 8000754: 2200 movs r2, #0 8000756: 60da str r2, [r3, #12] hi2c1.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; 8000758: 4b0c ldr r3, [pc, #48] @ (800078c ) 800075a: f44f 4280 mov.w r2, #16384 @ 0x4000 800075e: 611a str r2, [r3, #16] hi2c1.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE; 8000760: 4b0a ldr r3, [pc, #40] @ (800078c ) 8000762: 2200 movs r2, #0 8000764: 615a str r2, [r3, #20] hi2c1.Init.OwnAddress2 = 0; 8000766: 4b09 ldr r3, [pc, #36] @ (800078c ) 8000768: 2200 movs r2, #0 800076a: 619a str r2, [r3, #24] hi2c1.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE; 800076c: 4b07 ldr r3, [pc, #28] @ (800078c ) 800076e: 2200 movs r2, #0 8000770: 61da str r2, [r3, #28] hi2c1.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE; 8000772: 4b06 ldr r3, [pc, #24] @ (800078c ) 8000774: 2200 movs r2, #0 8000776: 621a str r2, [r3, #32] if (HAL_I2C_Init(&hi2c1) != HAL_OK) 8000778: 4804 ldr r0, [pc, #16] @ (800078c ) 800077a: f002 fadf bl 8002d3c 800077e: 4603 mov r3, r0 8000780: 2b00 cmp r3, #0 8000782: d001 beq.n 8000788 { Error_Handler(); 8000784: f000 fd60 bl 8001248 } /* USER CODE BEGIN I2C1_Init 2 */ /* USER CODE END I2C1_Init 2 */ } 8000788: bf00 nop 800078a: bd80 pop {r7, pc} 800078c: 200001bc .word 0x200001bc 8000790: 40005400 .word 0x40005400 8000794: 000186a0 .word 0x000186a0 08000798 : void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle) { 8000798: b580 push {r7, lr} 800079a: b08a sub sp, #40 @ 0x28 800079c: af00 add r7, sp, #0 800079e: 6078 str r0, [r7, #4] GPIO_InitTypeDef GPIO_InitStruct = {0}; 80007a0: f107 0314 add.w r3, r7, #20 80007a4: 2200 movs r2, #0 80007a6: 601a str r2, [r3, #0] 80007a8: 605a str r2, [r3, #4] 80007aa: 609a str r2, [r3, #8] 80007ac: 60da str r2, [r3, #12] 80007ae: 611a str r2, [r3, #16] if(i2cHandle->Instance==I2C1) 80007b0: 687b ldr r3, [r7, #4] 80007b2: 681b ldr r3, [r3, #0] 80007b4: 4a19 ldr r2, [pc, #100] @ (800081c ) 80007b6: 4293 cmp r3, r2 80007b8: d12b bne.n 8000812 { /* USER CODE BEGIN I2C1_MspInit 0 */ /* USER CODE END I2C1_MspInit 0 */ __HAL_RCC_GPIOB_CLK_ENABLE(); 80007ba: 2300 movs r3, #0 80007bc: 613b str r3, [r7, #16] 80007be: 4b18 ldr r3, [pc, #96] @ (8000820 ) 80007c0: 6b1b ldr r3, [r3, #48] @ 0x30 80007c2: 4a17 ldr r2, [pc, #92] @ (8000820 ) 80007c4: f043 0302 orr.w r3, r3, #2 80007c8: 6313 str r3, [r2, #48] @ 0x30 80007ca: 4b15 ldr r3, [pc, #84] @ (8000820 ) 80007cc: 6b1b ldr r3, [r3, #48] @ 0x30 80007ce: f003 0302 and.w r3, r3, #2 80007d2: 613b str r3, [r7, #16] 80007d4: 693b ldr r3, [r7, #16] /**I2C1 GPIO Configuration PB6 ------> I2C1_SCL PB7 ------> I2C1_SDA */ GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7; 80007d6: 23c0 movs r3, #192 @ 0xc0 80007d8: 617b str r3, [r7, #20] GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; 80007da: 2312 movs r3, #18 80007dc: 61bb str r3, [r7, #24] GPIO_InitStruct.Pull = GPIO_NOPULL; 80007de: 2300 movs r3, #0 80007e0: 61fb str r3, [r7, #28] GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 80007e2: 2303 movs r3, #3 80007e4: 623b str r3, [r7, #32] GPIO_InitStruct.Alternate = GPIO_AF4_I2C1; 80007e6: 2304 movs r3, #4 80007e8: 627b str r3, [r7, #36] @ 0x24 HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); 80007ea: f107 0314 add.w r3, r7, #20 80007ee: 4619 mov r1, r3 80007f0: 480c ldr r0, [pc, #48] @ (8000824 ) 80007f2: f002 f8dd bl 80029b0 /* I2C1 clock enable */ __HAL_RCC_I2C1_CLK_ENABLE(); 80007f6: 2300 movs r3, #0 80007f8: 60fb str r3, [r7, #12] 80007fa: 4b09 ldr r3, [pc, #36] @ (8000820 ) 80007fc: 6c1b ldr r3, [r3, #64] @ 0x40 80007fe: 4a08 ldr r2, [pc, #32] @ (8000820 ) 8000800: f443 1300 orr.w r3, r3, #2097152 @ 0x200000 8000804: 6413 str r3, [r2, #64] @ 0x40 8000806: 4b06 ldr r3, [pc, #24] @ (8000820 ) 8000808: 6c1b ldr r3, [r3, #64] @ 0x40 800080a: f403 1300 and.w r3, r3, #2097152 @ 0x200000 800080e: 60fb str r3, [r7, #12] 8000810: 68fb ldr r3, [r7, #12] /* USER CODE BEGIN I2C1_MspInit 1 */ /* USER CODE END I2C1_MspInit 1 */ } } 8000812: bf00 nop 8000814: 3728 adds r7, #40 @ 0x28 8000816: 46bd mov sp, r7 8000818: bd80 pop {r7, pc} 800081a: bf00 nop 800081c: 40005400 .word 0x40005400 8000820: 40023800 .word 0x40023800 8000824: 40020400 .word 0x40020400 08000828 : volatile uint8_t tail; // accessed in ISR volatile uint8_t count; // optional, only if needed } PacketQueue; // Initialize void pq_init(PacketQueue *q){ 8000828: b480 push {r7} 800082a: b083 sub sp, #12 800082c: af00 add r7, sp, #0 800082e: 6078 str r0, [r7, #4] q->head = 0; 8000830: 687b ldr r3, [r7, #4] 8000832: 2200 movs r2, #0 8000834: f883 2180 strb.w r2, [r3, #384] @ 0x180 q->tail = 0; 8000838: 687b ldr r3, [r7, #4] 800083a: 2200 movs r2, #0 800083c: f883 2181 strb.w r2, [r3, #385] @ 0x181 q->count = 0; 8000840: 687b ldr r3, [r7, #4] 8000842: 2200 movs r2, #0 8000844: f883 2182 strb.w r2, [r3, #386] @ 0x182 } 8000848: bf00 nop 800084a: 370c adds r7, #12 800084c: 46bd mov sp, r7 800084e: f85d 7b04 ldr.w r7, [sp], #4 8000852: 4770 bx lr 08000854 : // Called from ISR bool pq_push(PacketQueue *q, const uint8_t packet[PACKET_SIZE]){ 8000854: b580 push {r7, lr} 8000856: b084 sub sp, #16 8000858: af00 add r7, sp, #0 800085a: 6078 str r0, [r7, #4] 800085c: 6039 str r1, [r7, #0] uint8_t nextTail = (q->tail + 1) % QUEUE_CAPACITY; 800085e: 687b ldr r3, [r7, #4] 8000860: f893 3181 ldrb.w r3, [r3, #385] @ 0x181 8000864: b2db uxtb r3, r3 8000866: 3301 adds r3, #1 8000868: 425a negs r2, r3 800086a: f003 031f and.w r3, r3, #31 800086e: f002 021f and.w r2, r2, #31 8000872: bf58 it pl 8000874: 4253 negpl r3, r2 8000876: 73fb strb r3, [r7, #15] if(nextTail == q->head) return false; // queue full 8000878: 687b ldr r3, [r7, #4] 800087a: f893 3180 ldrb.w r3, [r3, #384] @ 0x180 800087e: b2db uxtb r3, r3 8000880: 7bfa ldrb r2, [r7, #15] 8000882: 429a cmp r2, r3 8000884: d101 bne.n 800088a 8000886: 2300 movs r3, #0 8000888: e014 b.n 80008b4 memcpy(q->data[q->tail], packet, PACKET_SIZE); 800088a: 687b ldr r3, [r7, #4] 800088c: f893 3181 ldrb.w r3, [r3, #385] @ 0x181 8000890: b2db uxtb r3, r3 8000892: 461a mov r2, r3 8000894: 4613 mov r3, r2 8000896: 005b lsls r3, r3, #1 8000898: 4413 add r3, r2 800089a: 009b lsls r3, r3, #2 800089c: 687a ldr r2, [r7, #4] 800089e: 4413 add r3, r2 80008a0: 220c movs r2, #12 80008a2: 6839 ldr r1, [r7, #0] 80008a4: 4618 mov r0, r3 80008a6: f00a fd7f bl 800b3a8 q->tail = nextTail; 80008aa: 687b ldr r3, [r7, #4] 80008ac: 7bfa ldrb r2, [r7, #15] 80008ae: f883 2181 strb.w r2, [r3, #385] @ 0x181 return true; 80008b2: 2301 movs r3, #1 } 80008b4: 4618 mov r0, r3 80008b6: 3710 adds r7, #16 80008b8: 46bd mov sp, r7 80008ba: bd80 pop {r7, pc} 080008bc : // Called from main bool pq_pop(PacketQueue *q, uint8_t out_packet[PACKET_SIZE]){ 80008bc: b580 push {r7, lr} 80008be: b082 sub sp, #8 80008c0: af00 add r7, sp, #0 80008c2: 6078 str r0, [r7, #4] 80008c4: 6039 str r1, [r7, #0] if(q->head == q->tail) return false; // queue empty 80008c6: 687b ldr r3, [r7, #4] 80008c8: f893 3180 ldrb.w r3, [r3, #384] @ 0x180 80008cc: b2da uxtb r2, r3 80008ce: 687b ldr r3, [r7, #4] 80008d0: f893 3181 ldrb.w r3, [r3, #385] @ 0x181 80008d4: b2db uxtb r3, r3 80008d6: 429a cmp r2, r3 80008d8: d101 bne.n 80008de 80008da: 2300 movs r3, #0 80008dc: e020 b.n 8000920 memcpy(out_packet, q->data[q->head], PACKET_SIZE); 80008de: 687b ldr r3, [r7, #4] 80008e0: f893 3180 ldrb.w r3, [r3, #384] @ 0x180 80008e4: b2db uxtb r3, r3 80008e6: 461a mov r2, r3 80008e8: 4613 mov r3, r2 80008ea: 005b lsls r3, r3, #1 80008ec: 4413 add r3, r2 80008ee: 009b lsls r3, r3, #2 80008f0: 687a ldr r2, [r7, #4] 80008f2: 4413 add r3, r2 80008f4: 220c movs r2, #12 80008f6: 4619 mov r1, r3 80008f8: 6838 ldr r0, [r7, #0] 80008fa: f00a fd55 bl 800b3a8 q->head = (q->head + 1) % QUEUE_CAPACITY; 80008fe: 687b ldr r3, [r7, #4] 8000900: f893 3180 ldrb.w r3, [r3, #384] @ 0x180 8000904: b2db uxtb r3, r3 8000906: 3301 adds r3, #1 8000908: 425a negs r2, r3 800090a: f003 031f and.w r3, r3, #31 800090e: f002 021f and.w r2, r2, #31 8000912: bf58 it pl 8000914: 4253 negpl r3, r2 8000916: b2da uxtb r2, r3 8000918: 687b ldr r3, [r7, #4] 800091a: f883 2180 strb.w r2, [r3, #384] @ 0x180 return true; 800091e: 2301 movs r3, #1 } 8000920: 4618 mov r0, r3 8000922: 3708 adds r7, #8 8000924: 46bd mov sp, r7 8000926: bd80 pop {r7, pc} 08000928
: /** * @brief The application entry point. * @retval int */ int main(void) { 8000928: b580 push {r7, lr} 800092a: b088 sub sp, #32 800092c: af00 add r7, sp, #0 /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ HAL_Init(); 800092e: f001 fa95 bl 8001e5c /* USER CODE BEGIN Init */ /* USER CODE END Init */ /* Configure the system clock */ SystemClock_Config(); 8000932: f000 f97b bl 8000c2c /* USER CODE BEGIN SysInit */ /* USER CODE END SysInit */ /* Initialize all configured peripherals */ MX_GPIO_Init(); 8000936: f7ff fe61 bl 80005fc MX_DMA_Init();MX_PWM_Init(); 800093a: f7ff fdf9 bl 8000530 800093e: f000 fc89 bl 8001254 MX_TIM2_Init(); 8000942: f000 fdab bl 800149c MX_TIM3_Init(); 8000946: f000 fe01 bl 800154c MX_UART4_Init(); 800094a: f000 fef3 bl 8001734 MX_UART5_Init(); 800094e: f000 ff1b bl 8001788 MX_USART1_UART_Init(); 8000952: f000 ff43 bl 80017dc MX_USART2_UART_Init(); 8000956: f000 ff6b bl 8001830 MX_I2C1_Init(); 800095a: f7ff feef bl 800073c MX_USB_DEVICE_Init(); 800095e: f00a f849 bl 800a9f4 MX_PWM_Init(); 8000962: f000 fc77 bl 8001254 /* USER CODE BEGIN 2 */ //Enable UART RX DMA for all ports HAL_UART_Receive_DMA(&huart1, (uint8_t*)&RX1Msg, sizeof(UARTMessage)); 8000966: 2210 movs r2, #16 8000968: 4958 ldr r1, [pc, #352] @ (8000acc ) 800096a: 4859 ldr r0, [pc, #356] @ (8000ad0 ) 800096c: f005 fe48 bl 8006600 HAL_UART_Receive_DMA(&huart2, (uint8_t*)&RX2Msg, sizeof(UARTMessage)); 8000970: 2210 movs r2, #16 8000972: 4958 ldr r1, [pc, #352] @ (8000ad4 ) 8000974: 4858 ldr r0, [pc, #352] @ (8000ad8 ) 8000976: f005 fe43 bl 8006600 HAL_UART_Receive_DMA(&huart4, (uint8_t*)&RX4Msg, sizeof(UARTMessage)); 800097a: 2210 movs r2, #16 800097c: 4957 ldr r1, [pc, #348] @ (8000adc ) 800097e: 4858 ldr r0, [pc, #352] @ (8000ae0 ) 8000980: f005 fe3e bl 8006600 HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage)); 8000984: 2210 movs r2, #16 8000986: 4957 ldr r1, [pc, #348] @ (8000ae4 ) 8000988: 4857 ldr r0, [pc, #348] @ (8000ae8 ) 800098a: f005 fe39 bl 8006600 // Start TIM3 encoder (PA6/PA7) so we can read encoder delta HAL_TIM_Encoder_Start(&htim3, TIM_CHANNEL_ALL); 800098e: 213c movs r1, #60 @ 0x3c 8000990: 4856 ldr r0, [pc, #344] @ (8000aec ) 8000992: f005 f8c5 bl 8005b20 LAST_ENCODER_COUNT = __HAL_TIM_GET_COUNTER(&htim3); 8000996: 4b55 ldr r3, [pc, #340] @ (8000aec ) 8000998: 681b ldr r3, [r3, #0] 800099a: 6a5b ldr r3, [r3, #36] @ 0x24 800099c: 461a mov r2, r3 800099e: 4b54 ldr r3, [pc, #336] @ (8000af0 ) 80009a0: 601a str r2, [r3, #0] //Prealloc Kestate matrix memset(KEYSTATE, 0, sizeof(KEYSTATE)); 80009a2: 221e movs r2, #30 80009a4: 2100 movs r1, #0 80009a6: 4853 ldr r0, [pc, #332] @ (8000af4 ) 80009a8: f00a fcd2 bl 800b350 pq_init(&huart1q); 80009ac: 4852 ldr r0, [pc, #328] @ (8000af8 ) 80009ae: f7ff ff3b bl 8000828 pq_init(&huart2q); 80009b2: 4852 ldr r0, [pc, #328] @ (8000afc ) 80009b4: f7ff ff38 bl 8000828 pq_init(&huart4q); 80009b8: 4851 ldr r0, [pc, #324] @ (8000b00 ) 80009ba: f7ff ff35 bl 8000828 pq_init(&huart5q); 80009be: 4851 ldr r0, [pc, #324] @ (8000b04 ) 80009c0: f7ff ff32 bl 8000828 PWM_Start(); 80009c4: f000 fc74 bl 80012b0 /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_1, 67); 80009c8: 4b4f ldr r3, [pc, #316] @ (8000b08 ) 80009ca: 681b ldr r3, [r3, #0] 80009cc: 2243 movs r2, #67 @ 0x43 80009ce: 635a str r2, [r3, #52] @ 0x34 switch (MODE){ 80009d0: 4b4e ldr r3, [pc, #312] @ (8000b0c ) 80009d2: 781b ldrb r3, [r3, #0] 80009d4: b2db uxtb r3, r3 80009d6: 2b02 cmp r3, #2 80009d8: d006 beq.n 80009e8 80009da: 2b02 cmp r3, #2 80009dc: dc6e bgt.n 8000abc 80009de: 2b00 cmp r3, #0 80009e0: d027 beq.n 8000a32 80009e2: 2b01 cmp r3, #1 80009e4: d05c beq.n 8000aa0 encoderProcess(); USBD_HID_SendReport(&hUsbDeviceFS, (uint8_t*)&REPORT, sizeof(REPORT)); break; default: break; 80009e6: e069 b.n 8000abc KEYSTATE_CHANGED_FLAG = 1; 80009e8: 4b49 ldr r3, [pc, #292] @ (8000b10 ) 80009ea: 2201 movs r2, #1 80009ec: 701a strb r2, [r3, #0] resetReport(); 80009ee: f000 fc1f bl 8001230 matrixScan(); 80009f2: f000 fb47 bl 8001084 mergeChild(); 80009f6: f000 f895 bl 8000b24 encoderProcess(); 80009fa: f000 fbbb bl 8001174 if(KEYSTATE_CHANGED_FLAG == 1){ 80009fe: 4b44 ldr r3, [pc, #272] @ (8000b10 ) 8000a00: 781b ldrb r3, [r3, #0] 8000a02: 2b01 cmp r3, #1 8000a04: d15c bne.n 8000ac0 UARTREPORT.DEPTH = DEPTH; 8000a06: 4b43 ldr r3, [pc, #268] @ (8000b14 ) 8000a08: 881b ldrh r3, [r3, #0] 8000a0a: 823b strh r3, [r7, #16] UARTREPORT.TYPE = 0xEE; 8000a0c: 23ee movs r3, #238 @ 0xee 8000a0e: 827b strh r3, [r7, #18] memcpy(UARTREPORT.KEYPRESS, REPORT.KEYPRESS, sizeof(UARTREPORT.KEYPRESS)); 8000a10: 4a41 ldr r2, [pc, #260] @ (8000b18 ) 8000a12: f107 0314 add.w r3, r7, #20 8000a16: 3202 adds r2, #2 8000a18: 6810 ldr r0, [r2, #0] 8000a1a: 6851 ldr r1, [r2, #4] 8000a1c: 6892 ldr r2, [r2, #8] 8000a1e: c307 stmia r3!, {r0, r1, r2} HAL_UART_Transmit_DMA(PARENT, (uint8_t*)&UARTREPORT, sizeof(UARTREPORT)); 8000a20: 4b3e ldr r3, [pc, #248] @ (8000b1c ) 8000a22: 681b ldr r3, [r3, #0] 8000a24: f107 0110 add.w r1, r7, #16 8000a28: 2210 movs r2, #16 8000a2a: 4618 mov r0, r3 8000a2c: f005 fd6c bl 8006508 break; 8000a30: e046 b.n 8000ac0 if(hUsbDeviceFS.dev_state == USBD_STATE_CONFIGURED){ 8000a32: 4b3b ldr r3, [pc, #236] @ (8000b20 ) 8000a34: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8000a38: b2db uxtb r3, r3 8000a3a: 2b03 cmp r3, #3 8000a3c: d106 bne.n 8000a4c MODE = MODE_MAINBOARD; 8000a3e: 4b33 ldr r3, [pc, #204] @ (8000b0c ) 8000a40: 2201 movs r2, #1 8000a42: 701a strb r2, [r3, #0] DEPTH = 0; 8000a44: 4b33 ldr r3, [pc, #204] @ (8000b14 ) 8000a46: 2200 movs r2, #0 8000a48: 801a strh r2, [r3, #0] break; 8000a4a: e03a b.n 8000ac2 REQ.DEPTH = 0; 8000a4c: 2300 movs r3, #0 8000a4e: 803b strh r3, [r7, #0] REQ.TYPE = 0xFF; //Message code for request is 0xFF 8000a50: 23ff movs r3, #255 @ 0xff 8000a52: 807b strh r3, [r7, #2] memset(REQ.KEYPRESS, 0, sizeof(REQ.KEYPRESS)); 8000a54: 463b mov r3, r7 8000a56: 3304 adds r3, #4 8000a58: 220c movs r2, #12 8000a5a: 2100 movs r1, #0 8000a5c: 4618 mov r0, r3 8000a5e: f00a fc77 bl 800b350 HAL_UART_Transmit_DMA(&huart1, (uint8_t*)&REQ, sizeof(REQ)); 8000a62: 463b mov r3, r7 8000a64: 2210 movs r2, #16 8000a66: 4619 mov r1, r3 8000a68: 4819 ldr r0, [pc, #100] @ (8000ad0 ) 8000a6a: f005 fd4d bl 8006508 HAL_UART_Transmit_DMA(&huart2, (uint8_t*)&REQ, sizeof(REQ)); 8000a6e: 463b mov r3, r7 8000a70: 2210 movs r2, #16 8000a72: 4619 mov r1, r3 8000a74: 4818 ldr r0, [pc, #96] @ (8000ad8 ) 8000a76: f005 fd47 bl 8006508 HAL_UART_Transmit_DMA(&huart4, (uint8_t*)&REQ, sizeof(REQ)); 8000a7a: 463b mov r3, r7 8000a7c: 2210 movs r2, #16 8000a7e: 4619 mov r1, r3 8000a80: 4817 ldr r0, [pc, #92] @ (8000ae0 ) 8000a82: f005 fd41 bl 8006508 HAL_UART_Transmit_DMA(&huart5, (uint8_t*)&REQ, sizeof(REQ)); 8000a86: 463b mov r3, r7 8000a88: 2210 movs r2, #16 8000a8a: 4619 mov r1, r3 8000a8c: 4816 ldr r0, [pc, #88] @ (8000ae8 ) 8000a8e: f005 fd3b bl 8006508 HAL_Delay(500); 8000a92: f44f 70fa mov.w r0, #500 @ 0x1f4 8000a96: f001 fa53 bl 8001f40 findBestParent(); //So true... 8000a9a: f000 f9db bl 8000e54 break; 8000a9e: e010 b.n 8000ac2 resetReport(); 8000aa0: f000 fbc6 bl 8001230 matrixScan();//Something related to this making the key stick. Likely due to race conditions 8000aa4: f000 faee bl 8001084 mergeChild(); 8000aa8: f000 f83c bl 8000b24 encoderProcess(); 8000aac: f000 fb62 bl 8001174 USBD_HID_SendReport(&hUsbDeviceFS, (uint8_t*)&REPORT, sizeof(REPORT)); 8000ab0: 220e movs r2, #14 8000ab2: 4919 ldr r1, [pc, #100] @ (8000b18 ) 8000ab4: 481a ldr r0, [pc, #104] @ (8000b20 ) 8000ab6: f008 fbd1 bl 800925c break; 8000aba: e002 b.n 8000ac2 break; 8000abc: bf00 nop 8000abe: e000 b.n 8000ac2 break; 8000ac0: bf00 nop } HAL_Delay(20); 8000ac2: 2014 movs r0, #20 8000ac4: f001 fa3c bl 8001f40 __HAL_TIM_SET_COMPARE(&htim2, TIM_CHANNEL_1, 67); 8000ac8: e77e b.n 80009c8 8000aca: bf00 nop 8000acc: 20000230 .word 0x20000230 8000ad0: 200009f0 .word 0x200009f0 8000ad4: 20000240 .word 0x20000240 8000ad8: 20000a38 .word 0x20000a38 8000adc: 20000250 .word 0x20000250 8000ae0: 20000960 .word 0x20000960 8000ae4: 20000220 .word 0x20000220 8000ae8: 200009a8 .word 0x200009a8 8000aec: 20000918 .word 0x20000918 8000af0: 2000028c .word 0x2000028c 8000af4: 2000026c .word 0x2000026c 8000af8: 200002c0 .word 0x200002c0 8000afc: 20000444 .word 0x20000444 8000b00: 200005c8 .word 0x200005c8 8000b04: 2000074c .word 0x2000074c 8000b08: 200008d0 .word 0x200008d0 8000b0c: 2000028a .word 0x2000028a 8000b10: 20000268 .word 0x20000268 8000b14: 20000260 .word 0x20000260 8000b18: 20000210 .word 0x20000210 8000b1c: 20000264 .word 0x20000264 8000b20: 20000d88 .word 0x20000d88 08000b24 : /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */ } void mergeChild(){ 8000b24: b590 push {r4, r7, lr} 8000b26: b087 sub sp, #28 8000b28: af00 add r7, sp, #0 uint8_t packet[12]; if (pq_pop(&huart1q, packet)) { 8000b2a: 1d3b adds r3, r7, #4 8000b2c: 4619 mov r1, r3 8000b2e: 4838 ldr r0, [pc, #224] @ (8000c10 ) 8000b30: f7ff fec4 bl 80008bc 8000b34: 4603 mov r3, r0 8000b36: 2b00 cmp r3, #0 8000b38: d008 beq.n 8000b4c memcpy(UART_KEYSTATE[1], packet, 12); 8000b3a: 4b36 ldr r3, [pc, #216] @ (8000c14 ) 8000b3c: 330c adds r3, #12 8000b3e: 1d3a adds r2, r7, #4 8000b40: ca07 ldmia r2, {r0, r1, r2} 8000b42: e883 0007 stmia.w r3, {r0, r1, r2} KEYSTATE_CHANGED_FLAG = 1; 8000b46: 4b34 ldr r3, [pc, #208] @ (8000c18 ) 8000b48: 2201 movs r2, #1 8000b4a: 701a strb r2, [r3, #0] } if (pq_pop(&huart2q, packet)) { 8000b4c: 1d3b adds r3, r7, #4 8000b4e: 4619 mov r1, r3 8000b50: 4832 ldr r0, [pc, #200] @ (8000c1c ) 8000b52: f7ff feb3 bl 80008bc 8000b56: 4603 mov r3, r0 8000b58: 2b00 cmp r3, #0 8000b5a: d008 beq.n 8000b6e memcpy(UART_KEYSTATE[2], packet, 12); 8000b5c: 4b2d ldr r3, [pc, #180] @ (8000c14 ) 8000b5e: 3318 adds r3, #24 8000b60: 1d3a adds r2, r7, #4 8000b62: ca07 ldmia r2, {r0, r1, r2} 8000b64: e883 0007 stmia.w r3, {r0, r1, r2} KEYSTATE_CHANGED_FLAG = 1; 8000b68: 4b2b ldr r3, [pc, #172] @ (8000c18 ) 8000b6a: 2201 movs r2, #1 8000b6c: 701a strb r2, [r3, #0] } if (pq_pop(&huart4q, packet)) { 8000b6e: 1d3b adds r3, r7, #4 8000b70: 4619 mov r1, r3 8000b72: 482b ldr r0, [pc, #172] @ (8000c20 ) 8000b74: f7ff fea2 bl 80008bc 8000b78: 4603 mov r3, r0 8000b7a: 2b00 cmp r3, #0 8000b7c: d008 beq.n 8000b90 memcpy(UART_KEYSTATE[3], packet, 12); 8000b7e: 4b25 ldr r3, [pc, #148] @ (8000c14 ) 8000b80: 3324 adds r3, #36 @ 0x24 8000b82: 1d3a adds r2, r7, #4 8000b84: ca07 ldmia r2, {r0, r1, r2} 8000b86: e883 0007 stmia.w r3, {r0, r1, r2} KEYSTATE_CHANGED_FLAG = 1; 8000b8a: 4b23 ldr r3, [pc, #140] @ (8000c18 ) 8000b8c: 2201 movs r2, #1 8000b8e: 701a strb r2, [r3, #0] } if (pq_pop(&huart5q, packet)) { 8000b90: 1d3b adds r3, r7, #4 8000b92: 4619 mov r1, r3 8000b94: 4823 ldr r0, [pc, #140] @ (8000c24 ) 8000b96: f7ff fe91 bl 80008bc 8000b9a: 4603 mov r3, r0 8000b9c: 2b00 cmp r3, #0 8000b9e: d009 beq.n 8000bb4 memcpy(UART_KEYSTATE[0], packet, 12); 8000ba0: 4b1c ldr r3, [pc, #112] @ (8000c14 ) 8000ba2: 461c mov r4, r3 8000ba4: 1d3b adds r3, r7, #4 8000ba6: e893 0007 ldmia.w r3, {r0, r1, r2} 8000baa: e884 0007 stmia.w r4, {r0, r1, r2} KEYSTATE_CHANGED_FLAG = 1; 8000bae: 4b1a ldr r3, [pc, #104] @ (8000c18 ) 8000bb0: 2201 movs r2, #1 8000bb2: 701a strb r2, [r3, #0] } for(int i = 0; i < 4; i++){ 8000bb4: 2300 movs r3, #0 8000bb6: 617b str r3, [r7, #20] 8000bb8: e022 b.n 8000c00 for(int j = 0; j < 12; j++){ 8000bba: 2300 movs r3, #0 8000bbc: 613b str r3, [r7, #16] 8000bbe: e019 b.n 8000bf4 REPORT.KEYPRESS[j] |= UART_KEYSTATE[i][j]; 8000bc0: 4a19 ldr r2, [pc, #100] @ (8000c28 ) 8000bc2: 693b ldr r3, [r7, #16] 8000bc4: 4413 add r3, r2 8000bc6: 3302 adds r3, #2 8000bc8: 7819 ldrb r1, [r3, #0] 8000bca: 4812 ldr r0, [pc, #72] @ (8000c14 ) 8000bcc: 697a ldr r2, [r7, #20] 8000bce: 4613 mov r3, r2 8000bd0: 005b lsls r3, r3, #1 8000bd2: 4413 add r3, r2 8000bd4: 009b lsls r3, r3, #2 8000bd6: 18c2 adds r2, r0, r3 8000bd8: 693b ldr r3, [r7, #16] 8000bda: 4413 add r3, r2 8000bdc: 781b ldrb r3, [r3, #0] 8000bde: 430b orrs r3, r1 8000be0: b2d9 uxtb r1, r3 8000be2: 4a11 ldr r2, [pc, #68] @ (8000c28 ) 8000be4: 693b ldr r3, [r7, #16] 8000be6: 4413 add r3, r2 8000be8: 3302 adds r3, #2 8000bea: 460a mov r2, r1 8000bec: 701a strb r2, [r3, #0] for(int j = 0; j < 12; j++){ 8000bee: 693b ldr r3, [r7, #16] 8000bf0: 3301 adds r3, #1 8000bf2: 613b str r3, [r7, #16] 8000bf4: 693b ldr r3, [r7, #16] 8000bf6: 2b0b cmp r3, #11 8000bf8: dde2 ble.n 8000bc0 for(int i = 0; i < 4; i++){ 8000bfa: 697b ldr r3, [r7, #20] 8000bfc: 3301 adds r3, #1 8000bfe: 617b str r3, [r7, #20] 8000c00: 697b ldr r3, [r7, #20] 8000c02: 2b03 cmp r3, #3 8000c04: ddd9 ble.n 8000bba } } } 8000c06: bf00 nop 8000c08: bf00 nop 8000c0a: 371c adds r7, #28 8000c0c: 46bd mov sp, r7 8000c0e: bd90 pop {r4, r7, pc} 8000c10: 200002c0 .word 0x200002c0 8000c14: 20000290 .word 0x20000290 8000c18: 20000268 .word 0x20000268 8000c1c: 20000444 .word 0x20000444 8000c20: 200005c8 .word 0x200005c8 8000c24: 2000074c .word 0x2000074c 8000c28: 20000210 .word 0x20000210 08000c2c : /** * @brief System Clock Configuration * @retval None */ void SystemClock_Config(void) { 8000c2c: b580 push {r7, lr} 8000c2e: b094 sub sp, #80 @ 0x50 8000c30: af00 add r7, sp, #0 RCC_OscInitTypeDef RCC_OscInitStruct = {0}; 8000c32: f107 031c add.w r3, r7, #28 8000c36: 2234 movs r2, #52 @ 0x34 8000c38: 2100 movs r1, #0 8000c3a: 4618 mov r0, r3 8000c3c: f00a fb88 bl 800b350 RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; 8000c40: f107 0308 add.w r3, r7, #8 8000c44: 2200 movs r2, #0 8000c46: 601a str r2, [r3, #0] 8000c48: 605a str r2, [r3, #4] 8000c4a: 609a str r2, [r3, #8] 8000c4c: 60da str r2, [r3, #12] 8000c4e: 611a str r2, [r3, #16] /** Configure the main internal regulator out put voltage */ __HAL_RCC_PWR_CLK_ENABLE(); 8000c50: 2300 movs r3, #0 8000c52: 607b str r3, [r7, #4] 8000c54: 4b29 ldr r3, [pc, #164] @ (8000cfc ) 8000c56: 6c1b ldr r3, [r3, #64] @ 0x40 8000c58: 4a28 ldr r2, [pc, #160] @ (8000cfc ) 8000c5a: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8000c5e: 6413 str r3, [r2, #64] @ 0x40 8000c60: 4b26 ldr r3, [pc, #152] @ (8000cfc ) 8000c62: 6c1b ldr r3, [r3, #64] @ 0x40 8000c64: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 8000c68: 607b str r3, [r7, #4] 8000c6a: 687b ldr r3, [r7, #4] __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE3); 8000c6c: 2300 movs r3, #0 8000c6e: 603b str r3, [r7, #0] 8000c70: 4b23 ldr r3, [pc, #140] @ (8000d00 ) 8000c72: 681b ldr r3, [r3, #0] 8000c74: f423 4340 bic.w r3, r3, #49152 @ 0xc000 8000c78: 4a21 ldr r2, [pc, #132] @ (8000d00 ) 8000c7a: f443 4380 orr.w r3, r3, #16384 @ 0x4000 8000c7e: 6013 str r3, [r2, #0] 8000c80: 4b1f ldr r3, [pc, #124] @ (8000d00 ) 8000c82: 681b ldr r3, [r3, #0] 8000c84: f403 4340 and.w r3, r3, #49152 @ 0xc000 8000c88: 603b str r3, [r7, #0] 8000c8a: 683b ldr r3, [r7, #0] /** Initializes the RCC Oscillators according to the specified parameters * in the RCC_OscInitTypeDef structure. */ RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; 8000c8c: 2301 movs r3, #1 8000c8e: 61fb str r3, [r7, #28] RCC_OscInitStruct.HSEState = RCC_HSE_ON; 8000c90: f44f 3380 mov.w r3, #65536 @ 0x10000 8000c94: 623b str r3, [r7, #32] RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; 8000c96: 2302 movs r3, #2 8000c98: 637b str r3, [r7, #52] @ 0x34 RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; 8000c9a: f44f 0380 mov.w r3, #4194304 @ 0x400000 8000c9e: 63bb str r3, [r7, #56] @ 0x38 RCC_OscInitStruct.PLL.PLLM = 4; 8000ca0: 2304 movs r3, #4 8000ca2: 63fb str r3, [r7, #60] @ 0x3c RCC_OscInitStruct.PLL.PLLN = 96; 8000ca4: 2360 movs r3, #96 @ 0x60 8000ca6: 643b str r3, [r7, #64] @ 0x40 RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; 8000ca8: 2302 movs r3, #2 8000caa: 647b str r3, [r7, #68] @ 0x44 RCC_OscInitStruct.PLL.PLLQ = 4; 8000cac: 2304 movs r3, #4 8000cae: 64bb str r3, [r7, #72] @ 0x48 RCC_OscInitStruct.PLL.PLLR = 2; 8000cb0: 2302 movs r3, #2 8000cb2: 64fb str r3, [r7, #76] @ 0x4c if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) 8000cb4: f107 031c add.w r3, r7, #28 8000cb8: 4618 mov r0, r3 8000cba: f004 fa7d bl 80051b8 8000cbe: 4603 mov r3, r0 8000cc0: 2b00 cmp r3, #0 8000cc2: d001 beq.n 8000cc8 { Error_Handler(); 8000cc4: f000 fac0 bl 8001248 } /** Initializes the CPU, AHB and APB buses clocks */ RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK 8000cc8: 230f movs r3, #15 8000cca: 60bb str r3, [r7, #8] |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; 8000ccc: 2302 movs r3, #2 8000cce: 60fb str r3, [r7, #12] RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV2; 8000cd0: 2380 movs r3, #128 @ 0x80 8000cd2: 613b str r3, [r7, #16] RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; 8000cd4: f44f 5380 mov.w r3, #4096 @ 0x1000 8000cd8: 617b str r3, [r7, #20] RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; 8000cda: 2300 movs r3, #0 8000cdc: 61bb str r3, [r7, #24] if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1) != HAL_OK) 8000cde: f107 0308 add.w r3, r7, #8 8000ce2: 2101 movs r1, #1 8000ce4: 4618 mov r0, r3 8000ce6: f003 fbf3 bl 80044d0 8000cea: 4603 mov r3, r0 8000cec: 2b00 cmp r3, #0 8000cee: d001 beq.n 8000cf4 { Error_Handler(); 8000cf0: f000 faaa bl 8001248 } } 8000cf4: bf00 nop 8000cf6: 3750 adds r7, #80 @ 0x50 8000cf8: 46bd mov sp, r7 8000cfa: bd80 pop {r7, pc} 8000cfc: 40023800 .word 0x40023800 8000d00: 40007000 .word 0x40007000 08000d04 : /* USER CODE BEGIN 4 */ // UART Message Requests Goes Here void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { 8000d04: b580 push {r7, lr} 8000d06: b082 sub sp, #8 8000d08: af00 add r7, sp, #0 8000d0a: 6078 str r0, [r7, #4] if (huart->Instance == USART1) { 8000d0c: 687b ldr r3, [r7, #4] 8000d0e: 681b ldr r3, [r3, #0] 8000d10: 4a1e ldr r2, [pc, #120] @ (8000d8c ) 8000d12: 4293 cmp r3, r2 8000d14: d109 bne.n 8000d2a handleUARTMessages((uint8_t*)&RX1Msg, &huart1); 8000d16: 491e ldr r1, [pc, #120] @ (8000d90 ) 8000d18: 481e ldr r0, [pc, #120] @ (8000d94 ) 8000d1a: f000 f8dd bl 8000ed8 HAL_UART_Receive_DMA(&huart1, (uint8_t*)&RX1Msg, sizeof(UARTMessage)); 8000d1e: 2210 movs r2, #16 8000d20: 491c ldr r1, [pc, #112] @ (8000d94 ) 8000d22: 481b ldr r0, [pc, #108] @ (8000d90 ) 8000d24: f005 fc6c bl 8006600 } else if (huart->Instance == UART5) { handleUARTMessages((uint8_t*)&RX5Msg, &huart5); HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage)); } } 8000d28: e02b b.n 8000d82 else if (huart->Instance == USART2) { 8000d2a: 687b ldr r3, [r7, #4] 8000d2c: 681b ldr r3, [r3, #0] 8000d2e: 4a1a ldr r2, [pc, #104] @ (8000d98 ) 8000d30: 4293 cmp r3, r2 8000d32: d109 bne.n 8000d48 handleUARTMessages((uint8_t*)&RX2Msg, &huart2); 8000d34: 4919 ldr r1, [pc, #100] @ (8000d9c ) 8000d36: 481a ldr r0, [pc, #104] @ (8000da0 ) 8000d38: f000 f8ce bl 8000ed8 HAL_UART_Receive_DMA(&huart2, (uint8_t*)&RX2Msg, sizeof(UARTMessage)); 8000d3c: 2210 movs r2, #16 8000d3e: 4918 ldr r1, [pc, #96] @ (8000da0 ) 8000d40: 4816 ldr r0, [pc, #88] @ (8000d9c ) 8000d42: f005 fc5d bl 8006600 } 8000d46: e01c b.n 8000d82 else if (huart->Instance == UART4) { 8000d48: 687b ldr r3, [r7, #4] 8000d4a: 681b ldr r3, [r3, #0] 8000d4c: 4a15 ldr r2, [pc, #84] @ (8000da4 ) 8000d4e: 4293 cmp r3, r2 8000d50: d109 bne.n 8000d66 handleUARTMessages((uint8_t*)&RX4Msg, &huart4); 8000d52: 4915 ldr r1, [pc, #84] @ (8000da8 ) 8000d54: 4815 ldr r0, [pc, #84] @ (8000dac ) 8000d56: f000 f8bf bl 8000ed8 HAL_UART_Receive_DMA(&huart4, (uint8_t*)&RX4Msg, sizeof(UARTMessage)); 8000d5a: 2210 movs r2, #16 8000d5c: 4913 ldr r1, [pc, #76] @ (8000dac ) 8000d5e: 4812 ldr r0, [pc, #72] @ (8000da8 ) 8000d60: f005 fc4e bl 8006600 } 8000d64: e00d b.n 8000d82 else if (huart->Instance == UART5) { 8000d66: 687b ldr r3, [r7, #4] 8000d68: 681b ldr r3, [r3, #0] 8000d6a: 4a11 ldr r2, [pc, #68] @ (8000db0 ) 8000d6c: 4293 cmp r3, r2 8000d6e: d108 bne.n 8000d82 handleUARTMessages((uint8_t*)&RX5Msg, &huart5); 8000d70: 4910 ldr r1, [pc, #64] @ (8000db4 ) 8000d72: 4811 ldr r0, [pc, #68] @ (8000db8 ) 8000d74: f000 f8b0 bl 8000ed8 HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage)); 8000d78: 2210 movs r2, #16 8000d7a: 490f ldr r1, [pc, #60] @ (8000db8 ) 8000d7c: 480d ldr r0, [pc, #52] @ (8000db4 ) 8000d7e: f005 fc3f bl 8006600 } 8000d82: bf00 nop 8000d84: 3708 adds r7, #8 8000d86: 46bd mov sp, r7 8000d88: bd80 pop {r7, pc} 8000d8a: bf00 nop 8000d8c: 40011000 .word 0x40011000 8000d90: 200009f0 .word 0x200009f0 8000d94: 20000230 .word 0x20000230 8000d98: 40004400 .word 0x40004400 8000d9c: 20000a38 .word 0x20000a38 8000da0: 20000240 .word 0x20000240 8000da4: 40004c00 .word 0x40004c00 8000da8: 20000960 .word 0x20000960 8000dac: 20000250 .word 0x20000250 8000db0: 40005000 .word 0x40005000 8000db4: 200009a8 .word 0x200009a8 8000db8: 20000220 .word 0x20000220 08000dbc : void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart) { 8000dbc: b580 push {r7, lr} 8000dbe: b082 sub sp, #8 8000dc0: af00 add r7, sp, #0 8000dc2: 6078 str r0, [r7, #4] // Restart DMA on error if (huart->Instance == USART1) { 8000dc4: 687b ldr r3, [r7, #4] 8000dc6: 681b ldr r3, [r3, #0] 8000dc8: 4a16 ldr r2, [pc, #88] @ (8000e24 ) 8000dca: 4293 cmp r3, r2 8000dcc: d105 bne.n 8000dda HAL_UART_Receive_DMA(&huart1, (uint8_t*)&RX1Msg, sizeof(UARTMessage)); 8000dce: 2210 movs r2, #16 8000dd0: 4915 ldr r1, [pc, #84] @ (8000e28 ) 8000dd2: 4816 ldr r0, [pc, #88] @ (8000e2c ) 8000dd4: f005 fc14 bl 8006600 HAL_UART_Receive_DMA(&huart4, (uint8_t*)&RX4Msg, sizeof(UARTMessage)); } else if (huart->Instance == UART5) { HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage)); } } 8000dd8: e01f b.n 8000e1a else if (huart->Instance == USART2) { 8000dda: 687b ldr r3, [r7, #4] 8000ddc: 681b ldr r3, [r3, #0] 8000dde: 4a14 ldr r2, [pc, #80] @ (8000e30 ) 8000de0: 4293 cmp r3, r2 8000de2: d105 bne.n 8000df0 HAL_UART_Receive_DMA(&huart2, (uint8_t*)&RX2Msg, sizeof(UARTMessage)); 8000de4: 2210 movs r2, #16 8000de6: 4913 ldr r1, [pc, #76] @ (8000e34 ) 8000de8: 4813 ldr r0, [pc, #76] @ (8000e38 ) 8000dea: f005 fc09 bl 8006600 } 8000dee: e014 b.n 8000e1a else if (huart->Instance == UART4) { 8000df0: 687b ldr r3, [r7, #4] 8000df2: 681b ldr r3, [r3, #0] 8000df4: 4a11 ldr r2, [pc, #68] @ (8000e3c ) 8000df6: 4293 cmp r3, r2 8000df8: d105 bne.n 8000e06 HAL_UART_Receive_DMA(&huart4, (uint8_t*)&RX4Msg, sizeof(UARTMessage)); 8000dfa: 2210 movs r2, #16 8000dfc: 4910 ldr r1, [pc, #64] @ (8000e40 ) 8000dfe: 4811 ldr r0, [pc, #68] @ (8000e44 ) 8000e00: f005 fbfe bl 8006600 } 8000e04: e009 b.n 8000e1a else if (huart->Instance == UART5) { 8000e06: 687b ldr r3, [r7, #4] 8000e08: 681b ldr r3, [r3, #0] 8000e0a: 4a0f ldr r2, [pc, #60] @ (8000e48 ) 8000e0c: 4293 cmp r3, r2 8000e0e: d104 bne.n 8000e1a HAL_UART_Receive_DMA(&huart5, (uint8_t*)&RX5Msg, sizeof(UARTMessage)); 8000e10: 2210 movs r2, #16 8000e12: 490e ldr r1, [pc, #56] @ (8000e4c ) 8000e14: 480e ldr r0, [pc, #56] @ (8000e50 ) 8000e16: f005 fbf3 bl 8006600 } 8000e1a: bf00 nop 8000e1c: 3708 adds r7, #8 8000e1e: 46bd mov sp, r7 8000e20: bd80 pop {r7, pc} 8000e22: bf00 nop 8000e24: 40011000 .word 0x40011000 8000e28: 20000230 .word 0x20000230 8000e2c: 200009f0 .word 0x200009f0 8000e30: 40004400 .word 0x40004400 8000e34: 20000240 .word 0x20000240 8000e38: 20000a38 .word 0x20000a38 8000e3c: 40004c00 .word 0x40004c00 8000e40: 20000250 .word 0x20000250 8000e44: 20000960 .word 0x20000960 8000e48: 40005000 .word 0x40005000 8000e4c: 20000220 .word 0x20000220 8000e50: 200009a8 .word 0x200009a8 08000e54 : void findBestParent(){ 8000e54: b580 push {r7, lr} 8000e56: b084 sub sp, #16 8000e58: af00 add r7, sp, #0 //Find least depth parent uint16_t least_val = 0xFF; 8000e5a: 23ff movs r3, #255 @ 0xff 8000e5c: 81fb strh r3, [r7, #14] UART_HandleTypeDef* least_port = NULL; 8000e5e: 2300 movs r3, #0 8000e60: 60bb str r3, [r7, #8] for(uint8_t i = 0; i < 4; i++){ 8000e62: 2300 movs r3, #0 8000e64: 71fb strb r3, [r7, #7] 8000e66: e013 b.n 8000e90 if(PORT_DEPTH[i]) 8000e6c: f832 3013 ldrh.w r3, [r2, r3, lsl #1] 8000e70: 89fa ldrh r2, [r7, #14] 8000e72: 429a cmp r2, r3 8000e74: d909 bls.n 8000e8a least_port = PORTS[i]; 8000e76: 79fb ldrb r3, [r7, #7] 8000e78: 4a13 ldr r2, [pc, #76] @ (8000ec8 ) 8000e7a: f852 3023 ldr.w r3, [r2, r3, lsl #2] 8000e7e: 60bb str r3, [r7, #8] least_val = PORT_DEPTH[i]; 8000e80: 79fb ldrb r3, [r7, #7] 8000e82: 4a10 ldr r2, [pc, #64] @ (8000ec4 ) 8000e84: f832 3013 ldrh.w r3, [r2, r3, lsl #1] 8000e88: 81fb strh r3, [r7, #14] for(uint8_t i = 0; i < 4; i++){ 8000e8a: 79fb ldrb r3, [r7, #7] 8000e8c: 3301 adds r3, #1 8000e8e: 71fb strb r3, [r7, #7] 8000e90: 79fb ldrb r3, [r7, #7] 8000e92: 2b03 cmp r3, #3 8000e94: d9e8 bls.n 8000e68 } } //Assign if valid if(least_val < 0xFF){ 8000e96: 89fb ldrh r3, [r7, #14] 8000e98: 2bfe cmp r3, #254 @ 0xfe 8000e9a: d80e bhi.n 8000eba PARENT = least_port; 8000e9c: 4a0b ldr r2, [pc, #44] @ (8000ecc ) 8000e9e: 68bb ldr r3, [r7, #8] 8000ea0: 6013 str r3, [r2, #0] DEPTH = least_val + 1; 8000ea2: 89fb ldrh r3, [r7, #14] 8000ea4: 3301 adds r3, #1 8000ea6: b29a uxth r2, r3 8000ea8: 4b09 ldr r3, [pc, #36] @ (8000ed0 ) 8000eaa: 801a strh r2, [r3, #0] MODE = MODE_ACTIVE; 8000eac: 4b09 ldr r3, [pc, #36] @ (8000ed4 ) 8000eae: 2202 movs r2, #2 8000eb0: 701a strb r2, [r3, #0] HAL_Delay(500); 8000eb2: f44f 70fa mov.w r0, #500 @ 0x1f4 8000eb6: f001 f843 bl 8001f40 } } 8000eba: bf00 nop 8000ebc: 3710 adds r7, #16 8000ebe: 46bd mov sp, r7 8000ec0: bd80 pop {r7, pc} 8000ec2: bf00 nop 8000ec4: 20000078 .word 0x20000078 8000ec8: 20000080 .word 0x20000080 8000ecc: 20000264 .word 0x20000264 8000ed0: 20000260 .word 0x20000260 8000ed4: 2000028a .word 0x2000028a 08000ed8 : // Called when UART RX interrupt completes void handleUARTMessages(uint8_t *data, UART_HandleTypeDef *sender) { 8000ed8: b590 push {r4, r7, lr} 8000eda: b08b sub sp, #44 @ 0x2c 8000edc: af00 add r7, sp, #0 8000ede: 6078 str r0, [r7, #4] 8000ee0: 6039 str r1, [r7, #0] UARTMessage msg; UARTMessage reply; // Parse incoming message into struct memcpy(&msg, data, sizeof(UARTMessage)); 8000ee2: 687b ldr r3, [r7, #4] 8000ee4: f107 0418 add.w r4, r7, #24 8000ee8: 6818 ldr r0, [r3, #0] 8000eea: 6859 ldr r1, [r3, #4] 8000eec: 689a ldr r2, [r3, #8] 8000eee: 68db ldr r3, [r3, #12] 8000ef0: c40f stmia r4!, {r0, r1, r2, r3} switch(msg.TYPE) { 8000ef2: 8b7b ldrh r3, [r7, #26] 8000ef4: 2bff cmp r3, #255 @ 0xff 8000ef6: d026 beq.n 8000f46 8000ef8: 2bff cmp r3, #255 @ 0xff 8000efa: dc6e bgt.n 8000fda 8000efc: 2baa cmp r3, #170 @ 0xaa 8000efe: d002 beq.n 8000f06 8000f00: 2bee cmp r3, #238 @ 0xee 8000f02: d03a beq.n 8000f7a } break; default: break; 8000f04: e069 b.n 8000fda if(sender == &huart5) { 8000f06: 683b ldr r3, [r7, #0] 8000f08: 4a39 ldr r2, [pc, #228] @ (8000ff0 ) 8000f0a: 4293 cmp r3, r2 8000f0c: d103 bne.n 8000f16 PORT_DEPTH[0] = msg.DEPTH; 8000f0e: 8b3a ldrh r2, [r7, #24] 8000f10: 4b38 ldr r3, [pc, #224] @ (8000ff4 ) 8000f12: 801a strh r2, [r3, #0] break; 8000f14: e063 b.n 8000fde } else if(sender == &huart1) { 8000f16: 683b ldr r3, [r7, #0] 8000f18: 4a37 ldr r2, [pc, #220] @ (8000ff8 ) 8000f1a: 4293 cmp r3, r2 8000f1c: d103 bne.n 8000f26 PORT_DEPTH[1] = msg.DEPTH; 8000f1e: 8b3a ldrh r2, [r7, #24] 8000f20: 4b34 ldr r3, [pc, #208] @ (8000ff4 ) 8000f22: 805a strh r2, [r3, #2] break; 8000f24: e05b b.n 8000fde } else if(sender == &huart2) { 8000f26: 683b ldr r3, [r7, #0] 8000f28: 4a34 ldr r2, [pc, #208] @ (8000ffc ) 8000f2a: 4293 cmp r3, r2 8000f2c: d103 bne.n 8000f36 PORT_DEPTH[2] = msg.DEPTH; 8000f2e: 8b3a ldrh r2, [r7, #24] 8000f30: 4b30 ldr r3, [pc, #192] @ (8000ff4 ) 8000f32: 809a strh r2, [r3, #4] break; 8000f34: e053 b.n 8000fde } else if(sender == &huart4) { 8000f36: 683b ldr r3, [r7, #0] 8000f38: 4a31 ldr r2, [pc, #196] @ (8001000 ) 8000f3a: 4293 cmp r3, r2 8000f3c: d14f bne.n 8000fde PORT_DEPTH[3] = msg.DEPTH; 8000f3e: 8b3a ldrh r2, [r7, #24] 8000f40: 4b2c ldr r3, [pc, #176] @ (8000ff4 ) 8000f42: 80da strh r2, [r3, #6] break; 8000f44: e04b b.n 8000fde if(MODE!=MODE_INACTIVE){ 8000f46: 4b2f ldr r3, [pc, #188] @ (8001004 ) 8000f48: 781b ldrb r3, [r3, #0] 8000f4a: b2db uxtb r3, r3 8000f4c: 2b00 cmp r3, #0 8000f4e: d048 beq.n 8000fe2 reply.TYPE = 0xAA; 8000f50: 23aa movs r3, #170 @ 0xaa 8000f52: 817b strh r3, [r7, #10] reply.DEPTH = DEPTH; // use your local DEPTH 8000f54: 4b2c ldr r3, [pc, #176] @ (8001008 ) 8000f56: 881b ldrh r3, [r3, #0] 8000f58: 813b strh r3, [r7, #8] memset(reply.KEYPRESS, 0, sizeof(reply.KEYPRESS)); 8000f5a: f107 0308 add.w r3, r7, #8 8000f5e: 3304 adds r3, #4 8000f60: 220c movs r2, #12 8000f62: 2100 movs r1, #0 8000f64: 4618 mov r0, r3 8000f66: f00a f9f3 bl 800b350 HAL_UART_Transmit_DMA(sender, (uint8_t*)&reply, sizeof(reply)); 8000f6a: f107 0308 add.w r3, r7, #8 8000f6e: 2210 movs r2, #16 8000f70: 4619 mov r1, r3 8000f72: 6838 ldr r0, [r7, #0] 8000f74: f005 fac8 bl 8006508 break; 8000f78: e033 b.n 8000fe2 if(sender == &huart5) { 8000f7a: 683b ldr r3, [r7, #0] 8000f7c: 4a1c ldr r2, [pc, #112] @ (8000ff0 ) 8000f7e: 4293 cmp r3, r2 8000f80: d107 bne.n 8000f92 pq_push(&huart5q, msg.KEYPRESS); 8000f82: f107 0318 add.w r3, r7, #24 8000f86: 3304 adds r3, #4 8000f88: 4619 mov r1, r3 8000f8a: 4820 ldr r0, [pc, #128] @ (800100c ) 8000f8c: f7ff fc62 bl 8000854 break; 8000f90: e029 b.n 8000fe6 } else if(sender == &huart1) { 8000f92: 683b ldr r3, [r7, #0] 8000f94: 4a18 ldr r2, [pc, #96] @ (8000ff8 ) 8000f96: 4293 cmp r3, r2 8000f98: d107 bne.n 8000faa pq_push(&huart1q, msg.KEYPRESS); 8000f9a: f107 0318 add.w r3, r7, #24 8000f9e: 3304 adds r3, #4 8000fa0: 4619 mov r1, r3 8000fa2: 481b ldr r0, [pc, #108] @ (8001010 ) 8000fa4: f7ff fc56 bl 8000854 break; 8000fa8: e01d b.n 8000fe6 } else if(sender == &huart2) { 8000faa: 683b ldr r3, [r7, #0] 8000fac: 4a13 ldr r2, [pc, #76] @ (8000ffc ) 8000fae: 4293 cmp r3, r2 8000fb0: d107 bne.n 8000fc2 pq_push(&huart2q, msg.KEYPRESS); 8000fb2: f107 0318 add.w r3, r7, #24 8000fb6: 3304 adds r3, #4 8000fb8: 4619 mov r1, r3 8000fba: 4816 ldr r0, [pc, #88] @ (8001014 ) 8000fbc: f7ff fc4a bl 8000854 break; 8000fc0: e011 b.n 8000fe6 } else if(sender == &huart4) { 8000fc2: 683b ldr r3, [r7, #0] 8000fc4: 4a0e ldr r2, [pc, #56] @ (8001000 ) 8000fc6: 4293 cmp r3, r2 8000fc8: d10d bne.n 8000fe6 pq_push(&huart4q, msg.KEYPRESS); 8000fca: f107 0318 add.w r3, r7, #24 8000fce: 3304 adds r3, #4 8000fd0: 4619 mov r1, r3 8000fd2: 4811 ldr r0, [pc, #68] @ (8001018 ) 8000fd4: f7ff fc3e bl 8000854 break; 8000fd8: e005 b.n 8000fe6 break; 8000fda: bf00 nop 8000fdc: e004 b.n 8000fe8 break; 8000fde: bf00 nop 8000fe0: e002 b.n 8000fe8 break; 8000fe2: bf00 nop 8000fe4: e000 b.n 8000fe8 break; 8000fe6: bf00 nop } } 8000fe8: bf00 nop 8000fea: 372c adds r7, #44 @ 0x2c 8000fec: 46bd mov sp, r7 8000fee: bd90 pop {r4, r7, pc} 8000ff0: 200009a8 .word 0x200009a8 8000ff4: 20000078 .word 0x20000078 8000ff8: 200009f0 .word 0x200009f0 8000ffc: 20000a38 .word 0x20000a38 8001000: 20000960 .word 0x20000960 8001004: 2000028a .word 0x2000028a 8001008: 20000260 .word 0x20000260 800100c: 2000074c .word 0x2000074c 8001010: 200002c0 .word 0x200002c0 8001014: 20000444 .word 0x20000444 8001018: 200005c8 .word 0x200005c8 0800101c : void addUSBReport(uint8_t usageID){ 800101c: b480 push {r7} 800101e: b085 sub sp, #20 8001020: af00 add r7, sp, #0 8001022: 4603 mov r3, r0 8001024: 71fb strb r3, [r7, #7] if(usageID < 0x04 || usageID > 0x73) return; //Usage ID is out of bounds 8001026: 79fb ldrb r3, [r7, #7] 8001028: 2b03 cmp r3, #3 800102a: d922 bls.n 8001072 800102c: 79fb ldrb r3, [r7, #7] 800102e: 2b73 cmp r3, #115 @ 0x73 8001030: d81f bhi.n 8001072 uint16_t bit_index = usageID - 0x04; //Offset, UsageID starts with 0x04. Gives us the actual value of the bit 8001032: 79fb ldrb r3, [r7, #7] 8001034: b29b uxth r3, r3 8001036: 3b04 subs r3, #4 8001038: 81fb strh r3, [r7, #14] uint8_t byte_index = bit_index/8; //Calculates which byte in the REPORT array 800103a: 89fb ldrh r3, [r7, #14] 800103c: 08db lsrs r3, r3, #3 800103e: b29b uxth r3, r3 8001040: 737b strb r3, [r7, #13] uint8_t bit_offset = bit_index%8; //Calculates which bits in the REPORT[byte_index] should be set/unset 8001042: 89fb ldrh r3, [r7, #14] 8001044: b2db uxtb r3, r3 8001046: f003 0307 and.w r3, r3, #7 800104a: 733b strb r3, [r7, #12] REPORT.KEYPRESS[byte_index] |= (1 << bit_offset); 800104c: 7b7b ldrb r3, [r7, #13] 800104e: 4a0c ldr r2, [pc, #48] @ (8001080 ) 8001050: 4413 add r3, r2 8001052: 789b ldrb r3, [r3, #2] 8001054: b25a sxtb r2, r3 8001056: 7b3b ldrb r3, [r7, #12] 8001058: 2101 movs r1, #1 800105a: fa01 f303 lsl.w r3, r1, r3 800105e: b25b sxtb r3, r3 8001060: 4313 orrs r3, r2 8001062: b25a sxtb r2, r3 8001064: 7b7b ldrb r3, [r7, #13] 8001066: b2d1 uxtb r1, r2 8001068: 4a05 ldr r2, [pc, #20] @ (8001080 ) 800106a: 4413 add r3, r2 800106c: 460a mov r2, r1 800106e: 709a strb r2, [r3, #2] 8001070: e000 b.n 8001074 if(usageID < 0x04 || usageID > 0x73) return; //Usage ID is out of bounds 8001072: bf00 nop } 8001074: 3714 adds r7, #20 8001076: 46bd mov sp, r7 8001078: f85d 7b04 ldr.w r7, [sp], #4 800107c: 4770 bx lr 800107e: bf00 nop 8001080: 20000210 .word 0x20000210 08001084 : void matrixScan(void){ 8001084: b580 push {r7, lr} 8001086: b082 sub sp, #8 8001088: af00 add r7, sp, #0 for (uint8_t col = 0; col < COL; col++){ 800108a: 2300 movs r3, #0 800108c: 71fb strb r3, [r7, #7] 800108e: e05f b.n 8001150 HAL_GPIO_WritePin(COLUMN_PINS[col].GPIOx, COLUMN_PINS[col].PIN, GPIO_PIN_SET); 8001090: 79fb ldrb r3, [r7, #7] 8001092: 4a33 ldr r2, [pc, #204] @ (8001160 ) 8001094: f852 0033 ldr.w r0, [r2, r3, lsl #3] 8001098: 79fb ldrb r3, [r7, #7] 800109a: 4a31 ldr r2, [pc, #196] @ (8001160 ) 800109c: 00db lsls r3, r3, #3 800109e: 4413 add r3, r2 80010a0: 889b ldrh r3, [r3, #4] 80010a2: 2201 movs r2, #1 80010a4: 4619 mov r1, r3 80010a6: f001 fe2f bl 8002d08 HAL_Delay(1); 80010aa: 2001 movs r0, #1 80010ac: f000 ff48 bl 8001f40 for(uint8_t row = 0; row < ROW; row++){ 80010b0: 2300 movs r3, #0 80010b2: 71bb strb r3, [r7, #6] 80010b4: e039 b.n 800112a uint8_t new_key = HAL_GPIO_ReadPin(ROW_PINS[row].GPIOx, ROW_PINS[row].PIN); 80010b6: 79bb ldrb r3, [r7, #6] 80010b8: 4a2a ldr r2, [pc, #168] @ (8001164 ) 80010ba: f852 2033 ldr.w r2, [r2, r3, lsl #3] 80010be: 79bb ldrb r3, [r7, #6] 80010c0: 4928 ldr r1, [pc, #160] @ (8001164 ) 80010c2: 00db lsls r3, r3, #3 80010c4: 440b add r3, r1 80010c6: 889b ldrh r3, [r3, #4] 80010c8: 4619 mov r1, r3 80010ca: 4610 mov r0, r2 80010cc: f001 fe04 bl 8002cd8 80010d0: 4603 mov r3, r0 80010d2: 717b strb r3, [r7, #5] if(new_key != KEYSTATE[row][col]){ 80010d4: 79ba ldrb r2, [r7, #6] 80010d6: 79f9 ldrb r1, [r7, #7] 80010d8: 4823 ldr r0, [pc, #140] @ (8001168 ) 80010da: 4613 mov r3, r2 80010dc: 009b lsls r3, r3, #2 80010de: 4413 add r3, r2 80010e0: 4403 add r3, r0 80010e2: 440b add r3, r1 80010e4: 781b ldrb r3, [r3, #0] 80010e6: 797a ldrb r2, [r7, #5] 80010e8: 429a cmp r2, r3 80010ea: d00c beq.n 8001106 KEYSTATE_CHANGED_FLAG = 1; 80010ec: 4b1f ldr r3, [pc, #124] @ (800116c ) 80010ee: 2201 movs r2, #1 80010f0: 701a strb r2, [r3, #0] KEYSTATE[row][col] = new_key; 80010f2: 79ba ldrb r2, [r7, #6] 80010f4: 79f9 ldrb r1, [r7, #7] 80010f6: 481c ldr r0, [pc, #112] @ (8001168 ) 80010f8: 4613 mov r3, r2 80010fa: 009b lsls r3, r3, #2 80010fc: 4413 add r3, r2 80010fe: 4403 add r3, r0 8001100: 440b add r3, r1 8001102: 797a ldrb r2, [r7, #5] 8001104: 701a strb r2, [r3, #0] } if(new_key){ 8001106: 797b ldrb r3, [r7, #5] 8001108: 2b00 cmp r3, #0 800110a: d00b beq.n 8001124 addUSBReport(KEYCODES[row][col]); 800110c: 79ba ldrb r2, [r7, #6] 800110e: 79f9 ldrb r1, [r7, #7] 8001110: 4817 ldr r0, [pc, #92] @ (8001170 ) 8001112: 4613 mov r3, r2 8001114: 009b lsls r3, r3, #2 8001116: 4413 add r3, r2 8001118: 4403 add r3, r0 800111a: 440b add r3, r1 800111c: 781b ldrb r3, [r3, #0] 800111e: 4618 mov r0, r3 8001120: f7ff ff7c bl 800101c for(uint8_t row = 0; row < ROW; row++){ 8001124: 79bb ldrb r3, [r7, #6] 8001126: 3301 adds r3, #1 8001128: 71bb strb r3, [r7, #6] 800112a: 79bb ldrb r3, [r7, #6] 800112c: 2b05 cmp r3, #5 800112e: d9c2 bls.n 80010b6 } } HAL_GPIO_WritePin(COLUMN_PINS[col].GPIOx, COLUMN_PINS[col].PIN, GPIO_PIN_RESET); 8001130: 79fb ldrb r3, [r7, #7] 8001132: 4a0b ldr r2, [pc, #44] @ (8001160 ) 8001134: f852 0033 ldr.w r0, [r2, r3, lsl #3] 8001138: 79fb ldrb r3, [r7, #7] 800113a: 4a09 ldr r2, [pc, #36] @ (8001160 ) 800113c: 00db lsls r3, r3, #3 800113e: 4413 add r3, r2 8001140: 889b ldrh r3, [r3, #4] 8001142: 2200 movs r2, #0 8001144: 4619 mov r1, r3 8001146: f001 fddf bl 8002d08 for (uint8_t col = 0; col < COL; col++){ 800114a: 79fb ldrb r3, [r7, #7] 800114c: 3301 adds r3, #1 800114e: 71fb strb r3, [r7, #7] 8001150: 79fb ldrb r3, [r7, #7] 8001152: 2b04 cmp r3, #4 8001154: d99c bls.n 8001090 } } 8001156: bf00 nop 8001158: bf00 nop 800115a: 3708 adds r7, #8 800115c: 46bd mov sp, r7 800115e: bd80 pop {r7, pc} 8001160: 20000030 .word 0x20000030 8001164: 20000000 .word 0x20000000 8001168: 2000026c .word 0x2000026c 800116c: 20000268 .word 0x20000268 8001170: 20000058 .word 0x20000058 08001174 : // Read TIM3 encoder counter, calculate delta and add corresponding keycodes void encoderProcess(void){ 8001174: b580 push {r7, lr} 8001176: b086 sub sp, #24 8001178: af00 add r7, sp, #0 int32_t cnt = (int32_t)__HAL_TIM_GET_COUNTER(&htim3); 800117a: 4b2a ldr r3, [pc, #168] @ (8001224 ) 800117c: 681b ldr r3, [r3, #0] 800117e: 6a5b ldr r3, [r3, #36] @ 0x24 8001180: 603b str r3, [r7, #0] int32_t diff = cnt - LAST_ENCODER_COUNT; 8001182: 4b29 ldr r3, [pc, #164] @ (8001228 ) 8001184: 681b ldr r3, [r3, #0] 8001186: 683a ldr r2, [r7, #0] 8001188: 1ad3 subs r3, r2, r3 800118a: 617b str r3, [r7, #20] // TIM3 configured as 16-bit counter (period 65535). Fix wrap-around. if(diff > 32767) diff -= 65536; 800118c: 697b ldr r3, [r7, #20] 800118e: f5b3 4f00 cmp.w r3, #32768 @ 0x8000 8001192: db03 blt.n 800119c 8001194: 697b ldr r3, [r7, #20] 8001196: f5a3 3380 sub.w r3, r3, #65536 @ 0x10000 800119a: 617b str r3, [r7, #20] if(diff < -32768) diff += 65536; 800119c: 697b ldr r3, [r7, #20] 800119e: f513 4f00 cmn.w r3, #32768 @ 0x8000 80011a2: da03 bge.n 80011ac 80011a4: 697b ldr r3, [r7, #20] 80011a6: f503 3380 add.w r3, r3, #65536 @ 0x10000 80011aa: 617b str r3, [r7, #20] if(diff > 0){ 80011ac: 697b ldr r3, [r7, #20] 80011ae: 2b00 cmp r3, #0 80011b0: dd16 ble.n 80011e0 int steps = diff; 80011b2: 697b ldr r3, [r7, #20] 80011b4: 613b str r3, [r7, #16] if(steps > 10) steps = 10; // cap bursts 80011b6: 693b ldr r3, [r7, #16] 80011b8: 2b0a cmp r3, #10 80011ba: dd01 ble.n 80011c0 80011bc: 230a movs r3, #10 80011be: 613b str r3, [r7, #16] for(int i = 0; i < steps; i++){ 80011c0: 2300 movs r3, #0 80011c2: 60fb str r3, [r7, #12] 80011c4: e007 b.n 80011d6 // CW -> KEYCODES[0][0] addUSBReport(KEYCODES[3][3]); 80011c6: 4b19 ldr r3, [pc, #100] @ (800122c ) 80011c8: 7c9b ldrb r3, [r3, #18] 80011ca: 4618 mov r0, r3 80011cc: f7ff ff26 bl 800101c for(int i = 0; i < steps; i++){ 80011d0: 68fb ldr r3, [r7, #12] 80011d2: 3301 adds r3, #1 80011d4: 60fb str r3, [r7, #12] 80011d6: 68fa ldr r2, [r7, #12] 80011d8: 693b ldr r3, [r7, #16] 80011da: 429a cmp r2, r3 80011dc: dbf3 blt.n 80011c6 80011de: e019 b.n 8001214 } }else if(diff < 0){ 80011e0: 697b ldr r3, [r7, #20] 80011e2: 2b00 cmp r3, #0 80011e4: da16 bge.n 8001214 int steps = -diff; 80011e6: 697b ldr r3, [r7, #20] 80011e8: 425b negs r3, r3 80011ea: 60bb str r3, [r7, #8] if(steps > 10) steps = 10; 80011ec: 68bb ldr r3, [r7, #8] 80011ee: 2b0a cmp r3, #10 80011f0: dd01 ble.n 80011f6 80011f2: 230a movs r3, #10 80011f4: 60bb str r3, [r7, #8] for(int i = 0; i < steps; i++){ 80011f6: 2300 movs r3, #0 80011f8: 607b str r3, [r7, #4] 80011fa: e007 b.n 800120c // CCW -> KEYCODES[0][1] addUSBReport(KEYCODES[2][1]); 80011fc: 4b0b ldr r3, [pc, #44] @ (800122c ) 80011fe: 7adb ldrb r3, [r3, #11] 8001200: 4618 mov r0, r3 8001202: f7ff ff0b bl 800101c for(int i = 0; i < steps; i++){ 8001206: 687b ldr r3, [r7, #4] 8001208: 3301 adds r3, #1 800120a: 607b str r3, [r7, #4] 800120c: 687a ldr r2, [r7, #4] 800120e: 68bb ldr r3, [r7, #8] 8001210: 429a cmp r2, r3 8001212: dbf3 blt.n 80011fc } } LAST_ENCODER_COUNT = cnt; 8001214: 4a04 ldr r2, [pc, #16] @ (8001228 ) 8001216: 683b ldr r3, [r7, #0] 8001218: 6013 str r3, [r2, #0] } 800121a: bf00 nop 800121c: 3718 adds r7, #24 800121e: 46bd mov sp, r7 8001220: bd80 pop {r7, pc} 8001222: bf00 nop 8001224: 20000918 .word 0x20000918 8001228: 2000028c .word 0x2000028c 800122c: 20000058 .word 0x20000058 08001230 : void resetReport(void){ 8001230: b580 push {r7, lr} 8001232: af00 add r7, sp, #0 memset(REPORT.KEYPRESS, 0, sizeof(REPORT.KEYPRESS)); 8001234: 220c movs r2, #12 8001236: 2100 movs r1, #0 8001238: 4802 ldr r0, [pc, #8] @ (8001244 ) 800123a: f00a f889 bl 800b350 } 800123e: bf00 nop 8001240: bd80 pop {r7, pc} 8001242: bf00 nop 8001244: 20000212 .word 0x20000212 08001248 : /** * @brief This function is executed in case of error occurrence. * @retval None */ void Error_Handler(void) { 8001248: b480 push {r7} 800124a: af00 add r7, sp, #0 \details Disables IRQ interrupts by setting special-purpose register PRIMASK. Can only be executed in Privileged modes. */ __STATIC_FORCEINLINE void __disable_irq(void) { __ASM volatile ("cpsid i" : : : "memory"); 800124c: b672 cpsid i } 800124e: bf00 nop /* USER CODE BEGIN Error_Handler_Debug */ /* User can add his own implementation to report the HAL error return state */ __disable_irq(); while (1) 8001250: bf00 nop 8001252: e7fd b.n 8001250 08001254 : #include "pwm.h" #include "tim.h" void MX_PWM_Init(void){ 8001254: b580 push {r7, lr} 8001256: b088 sub sp, #32 8001258: af00 add r7, sp, #0 TIM_OC_InitTypeDef sConfigOC = {0}; 800125a: 1d3b adds r3, r7, #4 800125c: 2200 movs r2, #0 800125e: 601a str r2, [r3, #0] 8001260: 605a str r2, [r3, #4] 8001262: 609a str r2, [r3, #8] 8001264: 60da str r2, [r3, #12] 8001266: 611a str r2, [r3, #16] 8001268: 615a str r2, [r3, #20] 800126a: 619a str r2, [r3, #24] // Initialize TIM2 for PWM (safe to call even if TIM2 was previously initialized for OC) if (HAL_TIM_PWM_Init(&htim2) != HAL_OK){ 800126c: 480f ldr r0, [pc, #60] @ (80012ac ) 800126e: f004 fa90 bl 8005792 8001272: 4603 mov r3, r0 8001274: 2b00 cmp r3, #0 8001276: d001 beq.n 800127c Error_Handler(); 8001278: f7ff ffe6 bl 8001248 } sConfigOC.OCMode = TIM_OCMODE_PWM1; 800127c: 2360 movs r3, #96 @ 0x60 800127e: 607b str r3, [r7, #4] sConfigOC.Pulse = 0; 8001280: 2300 movs r3, #0 8001282: 60bb str r3, [r7, #8] sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; 8001284: 2300 movs r3, #0 8001286: 60fb str r3, [r7, #12] sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; 8001288: 2300 movs r3, #0 800128a: 617b str r3, [r7, #20] if (HAL_TIM_PWM_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1) != HAL_OK){ 800128c: 1d3b adds r3, r7, #4 800128e: 2200 movs r2, #0 8001290: 4619 mov r1, r3 8001292: 4806 ldr r0, [pc, #24] @ (80012ac ) 8001294: f004 fd2e bl 8005cf4 8001298: 4603 mov r3, r0 800129a: 2b00 cmp r3, #0 800129c: d001 beq.n 80012a2 Error_Handler(); 800129e: f7ff ffd3 bl 8001248 } } 80012a2: bf00 nop 80012a4: 3720 adds r7, #32 80012a6: 46bd mov sp, r7 80012a8: bd80 pop {r7, pc} 80012aa: bf00 nop 80012ac: 200008d0 .word 0x200008d0 080012b0 : void PWM_Start(void){ 80012b0: b580 push {r7, lr} 80012b2: af00 add r7, sp, #0 HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_1); 80012b4: 2100 movs r1, #0 80012b6: 4802 ldr r0, [pc, #8] @ (80012c0 ) 80012b8: f004 fac4 bl 8005844 } 80012bc: bf00 nop 80012be: bd80 pop {r7, pc} 80012c0: 200008d0 .word 0x200008d0 080012c4 : /* USER CODE END 0 */ /** * Initializes the Global MSP. */ void HAL_MspInit(void) { 80012c4: b480 push {r7} 80012c6: b083 sub sp, #12 80012c8: af00 add r7, sp, #0 /* USER CODE BEGIN MspInit 0 */ /* USER CODE END MspInit 0 */ __HAL_RCC_SYSCFG_CLK_ENABLE(); 80012ca: 2300 movs r3, #0 80012cc: 607b str r3, [r7, #4] 80012ce: 4b10 ldr r3, [pc, #64] @ (8001310 ) 80012d0: 6c5b ldr r3, [r3, #68] @ 0x44 80012d2: 4a0f ldr r2, [pc, #60] @ (8001310 ) 80012d4: f443 4380 orr.w r3, r3, #16384 @ 0x4000 80012d8: 6453 str r3, [r2, #68] @ 0x44 80012da: 4b0d ldr r3, [pc, #52] @ (8001310 ) 80012dc: 6c5b ldr r3, [r3, #68] @ 0x44 80012de: f403 4380 and.w r3, r3, #16384 @ 0x4000 80012e2: 607b str r3, [r7, #4] 80012e4: 687b ldr r3, [r7, #4] __HAL_RCC_PWR_CLK_ENABLE(); 80012e6: 2300 movs r3, #0 80012e8: 603b str r3, [r7, #0] 80012ea: 4b09 ldr r3, [pc, #36] @ (8001310 ) 80012ec: 6c1b ldr r3, [r3, #64] @ 0x40 80012ee: 4a08 ldr r2, [pc, #32] @ (8001310 ) 80012f0: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 80012f4: 6413 str r3, [r2, #64] @ 0x40 80012f6: 4b06 ldr r3, [pc, #24] @ (8001310 ) 80012f8: 6c1b ldr r3, [r3, #64] @ 0x40 80012fa: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 80012fe: 603b str r3, [r7, #0] 8001300: 683b ldr r3, [r7, #0] /* System interrupt init*/ /* USER CODE BEGIN MspInit 1 */ /* USER CODE END MspInit 1 */ } 8001302: bf00 nop 8001304: 370c adds r7, #12 8001306: 46bd mov sp, r7 8001308: f85d 7b04 ldr.w r7, [sp], #4 800130c: 4770 bx lr 800130e: bf00 nop 8001310: 40023800 .word 0x40023800 08001314 : /******************************************************************************/ /** * @brief This function handles Non maskable interrupt. */ void NMI_Handler(void) { 8001314: b480 push {r7} 8001316: af00 add r7, sp, #0 /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ /* USER CODE END NonMaskableInt_IRQn 0 */ /* USER CODE BEGIN NonMaskableInt_IRQn 1 */ while (1) 8001318: bf00 nop 800131a: e7fd b.n 8001318 0800131c : /** * @brief This function handles Hard fault interrupt. */ void HardFault_Handler(void) { 800131c: b480 push {r7} 800131e: af00 add r7, sp, #0 /* USER CODE BEGIN HardFault_IRQn 0 */ /* USER CODE END HardFault_IRQn 0 */ while (1) 8001320: bf00 nop 8001322: e7fd b.n 8001320 08001324 : /** * @brief This function handles Memory management fault. */ void MemManage_Handler(void) { 8001324: b480 push {r7} 8001326: af00 add r7, sp, #0 /* USER CODE BEGIN MemoryManagement_IRQn 0 */ /* USER CODE END MemoryManagement_IRQn 0 */ while (1) 8001328: bf00 nop 800132a: e7fd b.n 8001328 0800132c : /** * @brief This function handles Pre-fetch fault, memory access fault. */ void BusFault_Handler(void) { 800132c: b480 push {r7} 800132e: af00 add r7, sp, #0 /* USER CODE BEGIN BusFault_IRQn 0 */ /* USER CODE END BusFault_IRQn 0 */ while (1) 8001330: bf00 nop 8001332: e7fd b.n 8001330 08001334 : /** * @brief This function handles Undefined instruction or illegal state. */ void UsageFault_Handler(void) { 8001334: b480 push {r7} 8001336: af00 add r7, sp, #0 /* USER CODE BEGIN UsageFault_IRQn 0 */ /* USER CODE END UsageFault_IRQn 0 */ while (1) 8001338: bf00 nop 800133a: e7fd b.n 8001338 0800133c : /** * @brief This function handles System service call via SWI instruction. */ void SVC_Handler(void) { 800133c: b480 push {r7} 800133e: af00 add r7, sp, #0 /* USER CODE END SVCall_IRQn 0 */ /* USER CODE BEGIN SVCall_IRQn 1 */ /* USER CODE END SVCall_IRQn 1 */ } 8001340: bf00 nop 8001342: 46bd mov sp, r7 8001344: f85d 7b04 ldr.w r7, [sp], #4 8001348: 4770 bx lr 0800134a : /** * @brief This function handles Debug monitor. */ void DebugMon_Handler(void) { 800134a: b480 push {r7} 800134c: af00 add r7, sp, #0 /* USER CODE END DebugMonitor_IRQn 0 */ /* USER CODE BEGIN DebugMonitor_IRQn 1 */ /* USER CODE END DebugMonitor_IRQn 1 */ } 800134e: bf00 nop 8001350: 46bd mov sp, r7 8001352: f85d 7b04 ldr.w r7, [sp], #4 8001356: 4770 bx lr 08001358 : /** * @brief This function handles Pendable request for system service. */ void PendSV_Handler(void) { 8001358: b480 push {r7} 800135a: af00 add r7, sp, #0 /* USER CODE END PendSV_IRQn 0 */ /* USER CODE BEGIN PendSV_IRQn 1 */ /* USER CODE END PendSV_IRQn 1 */ } 800135c: bf00 nop 800135e: 46bd mov sp, r7 8001360: f85d 7b04 ldr.w r7, [sp], #4 8001364: 4770 bx lr 08001366 : /** * @brief This function handles System tick timer. */ void SysTick_Handler(void) { 8001366: b580 push {r7, lr} 8001368: af00 add r7, sp, #0 /* USER CODE BEGIN SysTick_IRQn 0 */ /* USER CODE END SysTick_IRQn 0 */ HAL_IncTick(); 800136a: f000 fdc9 bl 8001f00 /* USER CODE BEGIN SysTick_IRQn 1 */ /* USER CODE END SysTick_IRQn 1 */ } 800136e: bf00 nop 8001370: bd80 pop {r7, pc} ... 08001374 : /** * @brief This function handles DMA1 stream0 global interrupt. */ void DMA1_Stream0_IRQHandler(void) { 8001374: b580 push {r7, lr} 8001376: af00 add r7, sp, #0 /* USER CODE BEGIN DMA1_Stream0_IRQn 0 */ /* USER CODE END DMA1_Stream0_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_uart5_rx); 8001378: 4802 ldr r0, [pc, #8] @ (8001384 ) 800137a: f001 f8af bl 80024dc /* USER CODE BEGIN DMA1_Stream0_IRQn 1 */ /* USER CODE END DMA1_Stream0_IRQn 1 */ } 800137e: bf00 nop 8001380: bd80 pop {r7, pc} 8001382: bf00 nop 8001384: 20000b40 .word 0x20000b40 08001388 : /** * @brief This function handles DMA1 stream2 global interrupt. */ void DMA1_Stream2_IRQHandler(void) { 8001388: b580 push {r7, lr} 800138a: af00 add r7, sp, #0 /* USER CODE BEGIN DMA1_Stream2_IRQn 0 */ /* USER CODE END DMA1_Stream2_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_uart4_rx); 800138c: 4802 ldr r0, [pc, #8] @ (8001398 ) 800138e: f001 f8a5 bl 80024dc /* USER CODE BEGIN DMA1_Stream2_IRQn 1 */ /* USER CODE END DMA1_Stream2_IRQn 1 */ } 8001392: bf00 nop 8001394: bd80 pop {r7, pc} 8001396: bf00 nop 8001398: 20000a80 .word 0x20000a80 0800139c : /** * @brief This function handles DMA1 stream4 global interrupt. */ void DMA1_Stream4_IRQHandler(void) { 800139c: b580 push {r7, lr} 800139e: af00 add r7, sp, #0 /* USER CODE BEGIN DMA1_Stream4_IRQn 0 */ /* USER CODE END DMA1_Stream4_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_uart4_tx); 80013a0: 4802 ldr r0, [pc, #8] @ (80013ac ) 80013a2: f001 f89b bl 80024dc /* USER CODE BEGIN DMA1_Stream4_IRQn 1 */ /* USER CODE END DMA1_Stream4_IRQn 1 */ } 80013a6: bf00 nop 80013a8: bd80 pop {r7, pc} 80013aa: bf00 nop 80013ac: 20000ae0 .word 0x20000ae0 080013b0 : /** * @brief This function handles DMA1 stream5 global interrupt. */ void DMA1_Stream5_IRQHandler(void) { 80013b0: b580 push {r7, lr} 80013b2: af00 add r7, sp, #0 /* USER CODE BEGIN DMA1_Stream5_IRQn 0 */ /* USER CODE END DMA1_Stream5_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_usart2_rx); 80013b4: 4802 ldr r0, [pc, #8] @ (80013c0 ) 80013b6: f001 f891 bl 80024dc /* USER CODE BEGIN DMA1_Stream5_IRQn 1 */ /* USER CODE END DMA1_Stream5_IRQn 1 */ } 80013ba: bf00 nop 80013bc: bd80 pop {r7, pc} 80013be: bf00 nop 80013c0: 20000cc0 .word 0x20000cc0 080013c4 : /** * @brief This function handles DMA1 stream6 global interrupt. */ void DMA1_Stream6_IRQHandler(void) { 80013c4: b580 push {r7, lr} 80013c6: af00 add r7, sp, #0 /* USER CODE BEGIN DMA1_Stream6_IRQn 0 */ /* USER CODE END DMA1_Stream6_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_usart2_tx); 80013c8: 4802 ldr r0, [pc, #8] @ (80013d4 ) 80013ca: f001 f887 bl 80024dc /* USER CODE BEGIN DMA1_Stream6_IRQn 1 */ /* USER CODE END DMA1_Stream6_IRQn 1 */ } 80013ce: bf00 nop 80013d0: bd80 pop {r7, pc} 80013d2: bf00 nop 80013d4: 20000d20 .word 0x20000d20 080013d8 : /** * @brief This function handles USART1 global interrupt. */ void USART1_IRQHandler(void) { 80013d8: b580 push {r7, lr} 80013da: af00 add r7, sp, #0 /* USER CODE BEGIN USART1_IRQn 0 */ /* USER CODE END USART1_IRQn 0 */ HAL_UART_IRQHandler(&huart1); 80013dc: 4802 ldr r0, [pc, #8] @ (80013e8 ) 80013de: f005 f935 bl 800664c /* USER CODE BEGIN USART1_IRQn 1 */ /* USER CODE END USART1_IRQn 1 */ } 80013e2: bf00 nop 80013e4: bd80 pop {r7, pc} 80013e6: bf00 nop 80013e8: 200009f0 .word 0x200009f0 080013ec : /** * @brief This function handles USART2 global interrupt. */ void USART2_IRQHandler(void) { 80013ec: b580 push {r7, lr} 80013ee: af00 add r7, sp, #0 /* USER CODE BEGIN USART2_IRQn 0 */ /* USER CODE END USART2_IRQn 0 */ HAL_UART_IRQHandler(&huart2); 80013f0: 4802 ldr r0, [pc, #8] @ (80013fc ) 80013f2: f005 f92b bl 800664c /* USER CODE BEGIN USART2_IRQn 1 */ /* USER CODE END USART2_IRQn 1 */ } 80013f6: bf00 nop 80013f8: bd80 pop {r7, pc} 80013fa: bf00 nop 80013fc: 20000a38 .word 0x20000a38 08001400 : /** * @brief This function handles DMA1 stream7 global interrupt. */ void DMA1_Stream7_IRQHandler(void) { 8001400: b580 push {r7, lr} 8001402: af00 add r7, sp, #0 /* USER CODE BEGIN DMA1_Stream7_IRQn 0 */ /* USER CODE END DMA1_Stream7_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_uart5_tx); 8001404: 4802 ldr r0, [pc, #8] @ (8001410 ) 8001406: f001 f869 bl 80024dc /* USER CODE BEGIN DMA1_Stream7_IRQn 1 */ /* USER CODE END DMA1_Stream7_IRQn 1 */ } 800140a: bf00 nop 800140c: bd80 pop {r7, pc} 800140e: bf00 nop 8001410: 20000ba0 .word 0x20000ba0 08001414 : /** * @brief This function handles UART4 global interrupt. */ void UART4_IRQHandler(void) { 8001414: b580 push {r7, lr} 8001416: af00 add r7, sp, #0 /* USER CODE BEGIN UART4_IRQn 0 */ /* USER CODE END UART4_IRQn 0 */ HAL_UART_IRQHandler(&huart4); 8001418: 4802 ldr r0, [pc, #8] @ (8001424 ) 800141a: f005 f917 bl 800664c /* USER CODE BEGIN UART4_IRQn 1 */ /* USER CODE END UART4_IRQn 1 */ } 800141e: bf00 nop 8001420: bd80 pop {r7, pc} 8001422: bf00 nop 8001424: 20000960 .word 0x20000960 08001428 : /** * @brief This function handles UART5 global interrupt. */ void UART5_IRQHandler(void) { 8001428: b580 push {r7, lr} 800142a: af00 add r7, sp, #0 /* USER CODE BEGIN UART5_IRQn 0 */ /* USER CODE END UART5_IRQn 0 */ HAL_UART_IRQHandler(&huart5); 800142c: 4802 ldr r0, [pc, #8] @ (8001438 ) 800142e: f005 f90d bl 800664c /* USER CODE BEGIN UART5_IRQn 1 */ /* USER CODE END UART5_IRQn 1 */ } 8001432: bf00 nop 8001434: bd80 pop {r7, pc} 8001436: bf00 nop 8001438: 200009a8 .word 0x200009a8 0800143c : /** * @brief This function handles DMA2 stream2 global interrupt. */ void DMA2_Stream2_IRQHandler(void) { 800143c: b580 push {r7, lr} 800143e: af00 add r7, sp, #0 /* USER CODE BEGIN DMA2_Stream2_IRQn 0 */ /* USER CODE END DMA2_Stream2_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_usart1_rx); 8001440: 4802 ldr r0, [pc, #8] @ (800144c ) 8001442: f001 f84b bl 80024dc /* USER CODE BEGIN DMA2_Stream2_IRQn 1 */ /* USER CODE END DMA2_Stream2_IRQn 1 */ } 8001446: bf00 nop 8001448: bd80 pop {r7, pc} 800144a: bf00 nop 800144c: 20000c00 .word 0x20000c00 08001450 : /** * @brief This function handles USB On The Go FS global interrupt. */ void OTG_FS_IRQHandler(void) { 8001450: b580 push {r7, lr} 8001452: af00 add r7, sp, #0 /* USER CODE BEGIN OTG_FS_IRQn 0 */ /* USER CODE END OTG_FS_IRQn 0 */ HAL_PCD_IRQHandler(&hpcd_USB_OTG_FS); 8001454: 4802 ldr r0, [pc, #8] @ (8001460 ) 8001456: f001 ff00 bl 800325a /* USER CODE BEGIN OTG_FS_IRQn 1 */ /* USER CODE END OTG_FS_IRQn 1 */ } 800145a: bf00 nop 800145c: bd80 pop {r7, pc} 800145e: bf00 nop 8001460: 20001264 .word 0x20001264 08001464 : /** * @brief This function handles DMA2 stream7 global interrupt. */ void DMA2_Stream7_IRQHandler(void) { 8001464: b580 push {r7, lr} 8001466: af00 add r7, sp, #0 /* USER CODE BEGIN DMA2_Stream7_IRQn 0 */ /* USER CODE END DMA2_Stream7_IRQn 0 */ HAL_DMA_IRQHandler(&hdma_usart1_tx); 8001468: 4802 ldr r0, [pc, #8] @ (8001474 ) 800146a: f001 f837 bl 80024dc /* USER CODE BEGIN DMA2_Stream7_IRQn 1 */ /* USER CODE END DMA2_Stream7_IRQn 1 */ } 800146e: bf00 nop 8001470: bd80 pop {r7, pc} 8001472: bf00 nop 8001474: 20000c60 .word 0x20000c60 08001478 : * configuration. * @param None * @retval None */ void SystemInit(void) { 8001478: b480 push {r7} 800147a: af00 add r7, sp, #0 /* FPU settings ------------------------------------------------------------*/ #if (__FPU_PRESENT == 1) && (__FPU_USED == 1) SCB->CPACR |= ((3UL << 10*2)|(3UL << 11*2)); /* set CP10 and CP11 Full Access */ 800147c: 4b06 ldr r3, [pc, #24] @ (8001498 ) 800147e: f8d3 3088 ldr.w r3, [r3, #136] @ 0x88 8001482: 4a05 ldr r2, [pc, #20] @ (8001498 ) 8001484: f443 0370 orr.w r3, r3, #15728640 @ 0xf00000 8001488: f8c2 3088 str.w r3, [r2, #136] @ 0x88 /* Configure the Vector Table location -------------------------------------*/ #if defined(USER_VECT_TAB_ADDRESS) SCB->VTOR = VECT_TAB_BASE_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM */ #endif /* USER_VECT_TAB_ADDRESS */ } 800148c: bf00 nop 800148e: 46bd mov sp, r7 8001490: f85d 7b04 ldr.w r7, [sp], #4 8001494: 4770 bx lr 8001496: bf00 nop 8001498: e000ed00 .word 0xe000ed00 0800149c : TIM_HandleTypeDef htim2; TIM_HandleTypeDef htim3; /* TIM2 init function */ void MX_TIM2_Init(void) { 800149c: b580 push {r7, lr} 800149e: b08a sub sp, #40 @ 0x28 80014a0: af00 add r7, sp, #0 /* USER CODE BEGIN TIM2_Init 0 */ /* USER CODE END TIM2_Init 0 */ TIM_MasterConfigTypeDef sMasterConfig = {0}; 80014a2: f107 0320 add.w r3, r7, #32 80014a6: 2200 movs r2, #0 80014a8: 601a str r2, [r3, #0] 80014aa: 605a str r2, [r3, #4] TIM_OC_InitTypeDef sConfigOC = {0}; 80014ac: 1d3b adds r3, r7, #4 80014ae: 2200 movs r2, #0 80014b0: 601a str r2, [r3, #0] 80014b2: 605a str r2, [r3, #4] 80014b4: 609a str r2, [r3, #8] 80014b6: 60da str r2, [r3, #12] 80014b8: 611a str r2, [r3, #16] 80014ba: 615a str r2, [r3, #20] 80014bc: 619a str r2, [r3, #24] /* USER CODE BEGIN TIM2_Init 1 */ /* USER CODE END TIM2_Init 1 */ htim2.Instance = TIM2; 80014be: 4b22 ldr r3, [pc, #136] @ (8001548 ) 80014c0: f04f 4280 mov.w r2, #1073741824 @ 0x40000000 80014c4: 601a str r2, [r3, #0] htim2.Init.Prescaler = 0; 80014c6: 4b20 ldr r3, [pc, #128] @ (8001548 ) 80014c8: 2200 movs r2, #0 80014ca: 605a str r2, [r3, #4] htim2.Init.CounterMode = TIM_COUNTERMODE_UP; 80014cc: 4b1e ldr r3, [pc, #120] @ (8001548 ) 80014ce: 2200 movs r2, #0 80014d0: 609a str r2, [r3, #8] htim2.Init.Period = 4294967295; 80014d2: 4b1d ldr r3, [pc, #116] @ (8001548 ) 80014d4: f04f 32ff mov.w r2, #4294967295 @ 0xffffffff 80014d8: 60da str r2, [r3, #12] htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; 80014da: 4b1b ldr r3, [pc, #108] @ (8001548 ) 80014dc: 2200 movs r2, #0 80014de: 611a str r2, [r3, #16] htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; 80014e0: 4b19 ldr r3, [pc, #100] @ (8001548 ) 80014e2: 2200 movs r2, #0 80014e4: 619a str r2, [r3, #24] if (HAL_TIM_OC_Init(&htim2) != HAL_OK) 80014e6: 4818 ldr r0, [pc, #96] @ (8001548 ) 80014e8: f004 f904 bl 80056f4 80014ec: 4603 mov r3, r0 80014ee: 2b00 cmp r3, #0 80014f0: d001 beq.n 80014f6 { Error_Handler(); 80014f2: f7ff fea9 bl 8001248 } sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; 80014f6: 2300 movs r3, #0 80014f8: 623b str r3, [r7, #32] sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; 80014fa: 2300 movs r3, #0 80014fc: 627b str r3, [r7, #36] @ 0x24 if (HAL_TIMEx_MasterConfigSynchronization(&htim2, &sMasterConfig) != HAL_OK) 80014fe: f107 0320 add.w r3, r7, #32 8001502: 4619 mov r1, r3 8001504: 4810 ldr r0, [pc, #64] @ (8001548 ) 8001506: f004 ff33 bl 8006370 800150a: 4603 mov r3, r0 800150c: 2b00 cmp r3, #0 800150e: d001 beq.n 8001514 { Error_Handler(); 8001510: f7ff fe9a bl 8001248 } sConfigOC.OCMode = TIM_OCMODE_FORCED_ACTIVE; 8001514: 2350 movs r3, #80 @ 0x50 8001516: 607b str r3, [r7, #4] sConfigOC.Pulse = 0; 8001518: 2300 movs r3, #0 800151a: 60bb str r3, [r7, #8] sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; 800151c: 2300 movs r3, #0 800151e: 60fb str r3, [r7, #12] sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; 8001520: 2300 movs r3, #0 8001522: 617b str r3, [r7, #20] if (HAL_TIM_OC_ConfigChannel(&htim2, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) 8001524: 1d3b adds r3, r7, #4 8001526: 2200 movs r2, #0 8001528: 4619 mov r1, r3 800152a: 4807 ldr r0, [pc, #28] @ (8001548 ) 800152c: f004 fb86 bl 8005c3c 8001530: 4603 mov r3, r0 8001532: 2b00 cmp r3, #0 8001534: d001 beq.n 800153a { Error_Handler(); 8001536: f7ff fe87 bl 8001248 } /* USER CODE BEGIN TIM2_Init 2 */ /* USER CODE END TIM2_Init 2 */ HAL_TIM_MspPostInit(&htim2); 800153a: 4803 ldr r0, [pc, #12] @ (8001548 ) 800153c: f000 f8c2 bl 80016c4 } 8001540: bf00 nop 8001542: 3728 adds r7, #40 @ 0x28 8001544: 46bd mov sp, r7 8001546: bd80 pop {r7, pc} 8001548: 200008d0 .word 0x200008d0 0800154c : /* TIM3 init function */ void MX_TIM3_Init(void) { 800154c: b580 push {r7, lr} 800154e: b08c sub sp, #48 @ 0x30 8001550: af00 add r7, sp, #0 /* USER CODE BEGIN TIM3_Init 0 */ /* USER CODE END TIM3_Init 0 */ TIM_Encoder_InitTypeDef sConfig = {0}; 8001552: f107 030c add.w r3, r7, #12 8001556: 2224 movs r2, #36 @ 0x24 8001558: 2100 movs r1, #0 800155a: 4618 mov r0, r3 800155c: f009 fef8 bl 800b350 TIM_MasterConfigTypeDef sMasterConfig = {0}; 8001560: 1d3b adds r3, r7, #4 8001562: 2200 movs r2, #0 8001564: 601a str r2, [r3, #0] 8001566: 605a str r2, [r3, #4] /* USER CODE BEGIN TIM3_Init 1 */ /* USER CODE END TIM3_Init 1 */ htim3.Instance = TIM3; 8001568: 4b20 ldr r3, [pc, #128] @ (80015ec ) 800156a: 4a21 ldr r2, [pc, #132] @ (80015f0 ) 800156c: 601a str r2, [r3, #0] htim3.Init.Prescaler = 0; 800156e: 4b1f ldr r3, [pc, #124] @ (80015ec ) 8001570: 2200 movs r2, #0 8001572: 605a str r2, [r3, #4] htim3.Init.CounterMode = TIM_COUNTERMODE_UP; 8001574: 4b1d ldr r3, [pc, #116] @ (80015ec ) 8001576: 2200 movs r2, #0 8001578: 609a str r2, [r3, #8] htim3.Init.Period = 65535; 800157a: 4b1c ldr r3, [pc, #112] @ (80015ec ) 800157c: f64f 72ff movw r2, #65535 @ 0xffff 8001580: 60da str r2, [r3, #12] htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; 8001582: 4b1a ldr r3, [pc, #104] @ (80015ec ) 8001584: 2200 movs r2, #0 8001586: 611a str r2, [r3, #16] htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; 8001588: 4b18 ldr r3, [pc, #96] @ (80015ec ) 800158a: 2200 movs r2, #0 800158c: 619a str r2, [r3, #24] sConfig.EncoderMode = TIM_ENCODERMODE_TI1; 800158e: 2301 movs r3, #1 8001590: 60fb str r3, [r7, #12] sConfig.IC1Polarity = TIM_ICPOLARITY_RISING; 8001592: 2300 movs r3, #0 8001594: 613b str r3, [r7, #16] sConfig.IC1Selection = TIM_ICSELECTION_DIRECTTI; 8001596: 2301 movs r3, #1 8001598: 617b str r3, [r7, #20] sConfig.IC1Prescaler = TIM_ICPSC_DIV1; 800159a: 2300 movs r3, #0 800159c: 61bb str r3, [r7, #24] sConfig.IC1Filter = 0; 800159e: 2300 movs r3, #0 80015a0: 61fb str r3, [r7, #28] sConfig.IC2Polarity = TIM_ICPOLARITY_RISING; 80015a2: 2300 movs r3, #0 80015a4: 623b str r3, [r7, #32] sConfig.IC2Selection = TIM_ICSELECTION_DIRECTTI; 80015a6: 2301 movs r3, #1 80015a8: 627b str r3, [r7, #36] @ 0x24 sConfig.IC2Prescaler = TIM_ICPSC_DIV1; 80015aa: 2300 movs r3, #0 80015ac: 62bb str r3, [r7, #40] @ 0x28 sConfig.IC2Filter = 0; 80015ae: 2300 movs r3, #0 80015b0: 62fb str r3, [r7, #44] @ 0x2c if (HAL_TIM_Encoder_Init(&htim3, &sConfig) != HAL_OK) 80015b2: f107 030c add.w r3, r7, #12 80015b6: 4619 mov r1, r3 80015b8: 480c ldr r0, [pc, #48] @ (80015ec ) 80015ba: f004 fa0b bl 80059d4 80015be: 4603 mov r3, r0 80015c0: 2b00 cmp r3, #0 80015c2: d001 beq.n 80015c8 { Error_Handler(); 80015c4: f7ff fe40 bl 8001248 } sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; 80015c8: 2300 movs r3, #0 80015ca: 607b str r3, [r7, #4] sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; 80015cc: 2300 movs r3, #0 80015ce: 60bb str r3, [r7, #8] if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK) 80015d0: 1d3b adds r3, r7, #4 80015d2: 4619 mov r1, r3 80015d4: 4805 ldr r0, [pc, #20] @ (80015ec ) 80015d6: f004 fecb bl 8006370 80015da: 4603 mov r3, r0 80015dc: 2b00 cmp r3, #0 80015de: d001 beq.n 80015e4 { Error_Handler(); 80015e0: f7ff fe32 bl 8001248 } /* USER CODE BEGIN TIM3_Init 2 */ /* USER CODE END TIM3_Init 2 */ } 80015e4: bf00 nop 80015e6: 3730 adds r7, #48 @ 0x30 80015e8: 46bd mov sp, r7 80015ea: bd80 pop {r7, pc} 80015ec: 20000918 .word 0x20000918 80015f0: 40000400 .word 0x40000400 080015f4 : void HAL_TIM_OC_MspInit(TIM_HandleTypeDef* tim_ocHandle) { 80015f4: b480 push {r7} 80015f6: b085 sub sp, #20 80015f8: af00 add r7, sp, #0 80015fa: 6078 str r0, [r7, #4] if(tim_ocHandle->Instance==TIM2) 80015fc: 687b ldr r3, [r7, #4] 80015fe: 681b ldr r3, [r3, #0] 8001600: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 8001604: d10d bne.n 8001622 { /* USER CODE BEGIN TIM2_MspInit 0 */ /* USER CODE END TIM2_MspInit 0 */ /* TIM2 clock enable */ __HAL_RCC_TIM2_CLK_ENABLE(); 8001606: 2300 movs r3, #0 8001608: 60fb str r3, [r7, #12] 800160a: 4b09 ldr r3, [pc, #36] @ (8001630 ) 800160c: 6c1b ldr r3, [r3, #64] @ 0x40 800160e: 4a08 ldr r2, [pc, #32] @ (8001630 ) 8001610: f043 0301 orr.w r3, r3, #1 8001614: 6413 str r3, [r2, #64] @ 0x40 8001616: 4b06 ldr r3, [pc, #24] @ (8001630 ) 8001618: 6c1b ldr r3, [r3, #64] @ 0x40 800161a: f003 0301 and.w r3, r3, #1 800161e: 60fb str r3, [r7, #12] 8001620: 68fb ldr r3, [r7, #12] /* USER CODE BEGIN TIM2_MspInit 1 */ /* USER CODE END TIM2_MspInit 1 */ } } 8001622: bf00 nop 8001624: 3714 adds r7, #20 8001626: 46bd mov sp, r7 8001628: f85d 7b04 ldr.w r7, [sp], #4 800162c: 4770 bx lr 800162e: bf00 nop 8001630: 40023800 .word 0x40023800 08001634 : void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef* tim_encoderHandle) { 8001634: b580 push {r7, lr} 8001636: b08a sub sp, #40 @ 0x28 8001638: af00 add r7, sp, #0 800163a: 6078 str r0, [r7, #4] GPIO_InitTypeDef GPIO_InitStruct = {0}; 800163c: f107 0314 add.w r3, r7, #20 8001640: 2200 movs r2, #0 8001642: 601a str r2, [r3, #0] 8001644: 605a str r2, [r3, #4] 8001646: 609a str r2, [r3, #8] 8001648: 60da str r2, [r3, #12] 800164a: 611a str r2, [r3, #16] if(tim_encoderHandle->Instance==TIM3) 800164c: 687b ldr r3, [r7, #4] 800164e: 681b ldr r3, [r3, #0] 8001650: 4a19 ldr r2, [pc, #100] @ (80016b8 ) 8001652: 4293 cmp r3, r2 8001654: d12b bne.n 80016ae { /* USER CODE BEGIN TIM3_MspInit 0 */ /* USER CODE END TIM3_MspInit 0 */ /* TIM3 clock enable */ __HAL_RCC_TIM3_CLK_ENABLE(); 8001656: 2300 movs r3, #0 8001658: 613b str r3, [r7, #16] 800165a: 4b18 ldr r3, [pc, #96] @ (80016bc ) 800165c: 6c1b ldr r3, [r3, #64] @ 0x40 800165e: 4a17 ldr r2, [pc, #92] @ (80016bc ) 8001660: f043 0302 orr.w r3, r3, #2 8001664: 6413 str r3, [r2, #64] @ 0x40 8001666: 4b15 ldr r3, [pc, #84] @ (80016bc ) 8001668: 6c1b ldr r3, [r3, #64] @ 0x40 800166a: f003 0302 and.w r3, r3, #2 800166e: 613b str r3, [r7, #16] 8001670: 693b ldr r3, [r7, #16] __HAL_RCC_GPIOA_CLK_ENABLE(); 8001672: 2300 movs r3, #0 8001674: 60fb str r3, [r7, #12] 8001676: 4b11 ldr r3, [pc, #68] @ (80016bc ) 8001678: 6b1b ldr r3, [r3, #48] @ 0x30 800167a: 4a10 ldr r2, [pc, #64] @ (80016bc ) 800167c: f043 0301 orr.w r3, r3, #1 8001680: 6313 str r3, [r2, #48] @ 0x30 8001682: 4b0e ldr r3, [pc, #56] @ (80016bc ) 8001684: 6b1b ldr r3, [r3, #48] @ 0x30 8001686: f003 0301 and.w r3, r3, #1 800168a: 60fb str r3, [r7, #12] 800168c: 68fb ldr r3, [r7, #12] /**TIM3 GPIO Configuration PA6 ------> TIM3_CH1 PA7 ------> TIM3_CH2 */ GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7; 800168e: 23c0 movs r3, #192 @ 0xc0 8001690: 617b str r3, [r7, #20] GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 8001692: 2302 movs r3, #2 8001694: 61bb str r3, [r7, #24] GPIO_InitStruct.Pull = GPIO_NOPULL; 8001696: 2300 movs r3, #0 8001698: 61fb str r3, [r7, #28] GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; 800169a: 2300 movs r3, #0 800169c: 623b str r3, [r7, #32] GPIO_InitStruct.Alternate = GPIO_AF2_TIM3; 800169e: 2302 movs r3, #2 80016a0: 627b str r3, [r7, #36] @ 0x24 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 80016a2: f107 0314 add.w r3, r7, #20 80016a6: 4619 mov r1, r3 80016a8: 4805 ldr r0, [pc, #20] @ (80016c0 ) 80016aa: f001 f981 bl 80029b0 /* USER CODE BEGIN TIM3_MspInit 1 */ /* USER CODE END TIM3_MspInit 1 */ } } 80016ae: bf00 nop 80016b0: 3728 adds r7, #40 @ 0x28 80016b2: 46bd mov sp, r7 80016b4: bd80 pop {r7, pc} 80016b6: bf00 nop 80016b8: 40000400 .word 0x40000400 80016bc: 40023800 .word 0x40023800 80016c0: 40020000 .word 0x40020000 080016c4 : void HAL_TIM_MspPostInit(TIM_HandleTypeDef* timHandle) { 80016c4: b580 push {r7, lr} 80016c6: b088 sub sp, #32 80016c8: af00 add r7, sp, #0 80016ca: 6078 str r0, [r7, #4] GPIO_InitTypeDef GPIO_InitStruct = {0}; 80016cc: f107 030c add.w r3, r7, #12 80016d0: 2200 movs r2, #0 80016d2: 601a str r2, [r3, #0] 80016d4: 605a str r2, [r3, #4] 80016d6: 609a str r2, [r3, #8] 80016d8: 60da str r2, [r3, #12] 80016da: 611a str r2, [r3, #16] if(timHandle->Instance==TIM2) 80016dc: 687b ldr r3, [r7, #4] 80016de: 681b ldr r3, [r3, #0] 80016e0: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 80016e4: d11d bne.n 8001722 { /* USER CODE BEGIN TIM2_MspPostInit 0 */ /* USER CODE END TIM2_MspPostInit 0 */ __HAL_RCC_GPIOA_CLK_ENABLE(); 80016e6: 2300 movs r3, #0 80016e8: 60bb str r3, [r7, #8] 80016ea: 4b10 ldr r3, [pc, #64] @ (800172c ) 80016ec: 6b1b ldr r3, [r3, #48] @ 0x30 80016ee: 4a0f ldr r2, [pc, #60] @ (800172c ) 80016f0: f043 0301 orr.w r3, r3, #1 80016f4: 6313 str r3, [r2, #48] @ 0x30 80016f6: 4b0d ldr r3, [pc, #52] @ (800172c ) 80016f8: 6b1b ldr r3, [r3, #48] @ 0x30 80016fa: f003 0301 and.w r3, r3, #1 80016fe: 60bb str r3, [r7, #8] 8001700: 68bb ldr r3, [r7, #8] /**TIM2 GPIO Configuration PA5 ------> TIM2_CH1 */ GPIO_InitStruct.Pin = GPIO_PIN_5; 8001702: 2320 movs r3, #32 8001704: 60fb str r3, [r7, #12] GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 8001706: 2302 movs r3, #2 8001708: 613b str r3, [r7, #16] GPIO_InitStruct.Pull = GPIO_NOPULL; 800170a: 2300 movs r3, #0 800170c: 617b str r3, [r7, #20] GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; 800170e: 2300 movs r3, #0 8001710: 61bb str r3, [r7, #24] GPIO_InitStruct.Alternate = GPIO_AF1_TIM2; 8001712: 2301 movs r3, #1 8001714: 61fb str r3, [r7, #28] HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 8001716: f107 030c add.w r3, r7, #12 800171a: 4619 mov r1, r3 800171c: 4804 ldr r0, [pc, #16] @ (8001730 ) 800171e: f001 f947 bl 80029b0 /* USER CODE BEGIN TIM2_MspPostInit 1 */ /* USER CODE END TIM2_MspPostInit 1 */ } } 8001722: bf00 nop 8001724: 3720 adds r7, #32 8001726: 46bd mov sp, r7 8001728: bd80 pop {r7, pc} 800172a: bf00 nop 800172c: 40023800 .word 0x40023800 8001730: 40020000 .word 0x40020000 08001734 : DMA_HandleTypeDef hdma_usart2_rx; DMA_HandleTypeDef hdma_usart2_tx; /* UART4 init function */ void MX_UART4_Init(void) { 8001734: b580 push {r7, lr} 8001736: af00 add r7, sp, #0 /* USER CODE END UART4_Init 0 */ /* USER CODE BEGIN UART4_Init 1 */ /* USER CODE END UART4_Init 1 */ huart4.Instance = UART4; 8001738: 4b11 ldr r3, [pc, #68] @ (8001780 ) 800173a: 4a12 ldr r2, [pc, #72] @ (8001784 ) 800173c: 601a str r2, [r3, #0] huart4.Init.BaudRate = 115200; 800173e: 4b10 ldr r3, [pc, #64] @ (8001780 ) 8001740: f44f 32e1 mov.w r2, #115200 @ 0x1c200 8001744: 605a str r2, [r3, #4] huart4.Init.WordLength = UART_WORDLENGTH_8B; 8001746: 4b0e ldr r3, [pc, #56] @ (8001780 ) 8001748: 2200 movs r2, #0 800174a: 609a str r2, [r3, #8] huart4.Init.StopBits = UART_STOPBITS_1; 800174c: 4b0c ldr r3, [pc, #48] @ (8001780 ) 800174e: 2200 movs r2, #0 8001750: 60da str r2, [r3, #12] huart4.Init.Parity = UART_PARITY_NONE; 8001752: 4b0b ldr r3, [pc, #44] @ (8001780 ) 8001754: 2200 movs r2, #0 8001756: 611a str r2, [r3, #16] huart4.Init.Mode = UART_MODE_TX_RX; 8001758: 4b09 ldr r3, [pc, #36] @ (8001780 ) 800175a: 220c movs r2, #12 800175c: 615a str r2, [r3, #20] huart4.Init.HwFlowCtl = UART_HWCONTROL_NONE; 800175e: 4b08 ldr r3, [pc, #32] @ (8001780 ) 8001760: 2200 movs r2, #0 8001762: 619a str r2, [r3, #24] huart4.Init.OverSampling = UART_OVERSAMPLING_16; 8001764: 4b06 ldr r3, [pc, #24] @ (8001780 ) 8001766: 2200 movs r2, #0 8001768: 61da str r2, [r3, #28] if (HAL_UART_Init(&huart4) != HAL_OK) 800176a: 4805 ldr r0, [pc, #20] @ (8001780 ) 800176c: f004 fe7c bl 8006468 8001770: 4603 mov r3, r0 8001772: 2b00 cmp r3, #0 8001774: d001 beq.n 800177a { Error_Handler(); 8001776: f7ff fd67 bl 8001248 } /* USER CODE BEGIN UART4_Init 2 */ /* USER CODE END UART4_Init 2 */ } 800177a: bf00 nop 800177c: bd80 pop {r7, pc} 800177e: bf00 nop 8001780: 20000960 .word 0x20000960 8001784: 40004c00 .word 0x40004c00 08001788 : /* UART5 init function */ void MX_UART5_Init(void) { 8001788: b580 push {r7, lr} 800178a: af00 add r7, sp, #0 /* USER CODE END UART5_Init 0 */ /* USER CODE BEGIN UART5_Init 1 */ /* USER CODE END UART5_Init 1 */ huart5.Instance = UART5; 800178c: 4b11 ldr r3, [pc, #68] @ (80017d4 ) 800178e: 4a12 ldr r2, [pc, #72] @ (80017d8 ) 8001790: 601a str r2, [r3, #0] huart5.Init.BaudRate = 115200; 8001792: 4b10 ldr r3, [pc, #64] @ (80017d4 ) 8001794: f44f 32e1 mov.w r2, #115200 @ 0x1c200 8001798: 605a str r2, [r3, #4] huart5.Init.WordLength = UART_WORDLENGTH_8B; 800179a: 4b0e ldr r3, [pc, #56] @ (80017d4 ) 800179c: 2200 movs r2, #0 800179e: 609a str r2, [r3, #8] huart5.Init.StopBits = UART_STOPBITS_1; 80017a0: 4b0c ldr r3, [pc, #48] @ (80017d4 ) 80017a2: 2200 movs r2, #0 80017a4: 60da str r2, [r3, #12] huart5.Init.Parity = UART_PARITY_NONE; 80017a6: 4b0b ldr r3, [pc, #44] @ (80017d4 ) 80017a8: 2200 movs r2, #0 80017aa: 611a str r2, [r3, #16] huart5.Init.Mode = UART_MODE_TX_RX; 80017ac: 4b09 ldr r3, [pc, #36] @ (80017d4 ) 80017ae: 220c movs r2, #12 80017b0: 615a str r2, [r3, #20] huart5.Init.HwFlowCtl = UART_HWCONTROL_NONE; 80017b2: 4b08 ldr r3, [pc, #32] @ (80017d4 ) 80017b4: 2200 movs r2, #0 80017b6: 619a str r2, [r3, #24] huart5.Init.OverSampling = UART_OVERSAMPLING_16; 80017b8: 4b06 ldr r3, [pc, #24] @ (80017d4 ) 80017ba: 2200 movs r2, #0 80017bc: 61da str r2, [r3, #28] if (HAL_UART_Init(&huart5) != HAL_OK) 80017be: 4805 ldr r0, [pc, #20] @ (80017d4 ) 80017c0: f004 fe52 bl 8006468 80017c4: 4603 mov r3, r0 80017c6: 2b00 cmp r3, #0 80017c8: d001 beq.n 80017ce { Error_Handler(); 80017ca: f7ff fd3d bl 8001248 } /* USER CODE BEGIN UART5_Init 2 */ /* USER CODE END UART5_Init 2 */ } 80017ce: bf00 nop 80017d0: bd80 pop {r7, pc} 80017d2: bf00 nop 80017d4: 200009a8 .word 0x200009a8 80017d8: 40005000 .word 0x40005000 080017dc : /* USART1 init function */ void MX_USART1_UART_Init(void) { 80017dc: b580 push {r7, lr} 80017de: af00 add r7, sp, #0 /* USER CODE END USART1_Init 0 */ /* USER CODE BEGIN USART1_Init 1 */ /* USER CODE END USART1_Init 1 */ huart1.Instance = USART1; 80017e0: 4b11 ldr r3, [pc, #68] @ (8001828 ) 80017e2: 4a12 ldr r2, [pc, #72] @ (800182c ) 80017e4: 601a str r2, [r3, #0] huart1.Init.BaudRate = 115200; 80017e6: 4b10 ldr r3, [pc, #64] @ (8001828 ) 80017e8: f44f 32e1 mov.w r2, #115200 @ 0x1c200 80017ec: 605a str r2, [r3, #4] huart1.Init.WordLength = UART_WORDLENGTH_8B; 80017ee: 4b0e ldr r3, [pc, #56] @ (8001828 ) 80017f0: 2200 movs r2, #0 80017f2: 609a str r2, [r3, #8] huart1.Init.StopBits = UART_STOPBITS_1; 80017f4: 4b0c ldr r3, [pc, #48] @ (8001828 ) 80017f6: 2200 movs r2, #0 80017f8: 60da str r2, [r3, #12] huart1.Init.Parity = UART_PARITY_NONE; 80017fa: 4b0b ldr r3, [pc, #44] @ (8001828 ) 80017fc: 2200 movs r2, #0 80017fe: 611a str r2, [r3, #16] huart1.Init.Mode = UART_MODE_TX_RX; 8001800: 4b09 ldr r3, [pc, #36] @ (8001828 ) 8001802: 220c movs r2, #12 8001804: 615a str r2, [r3, #20] huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE; 8001806: 4b08 ldr r3, [pc, #32] @ (8001828 ) 8001808: 2200 movs r2, #0 800180a: 619a str r2, [r3, #24] huart1.Init.OverSampling = UART_OVERSAMPLING_16; 800180c: 4b06 ldr r3, [pc, #24] @ (8001828 ) 800180e: 2200 movs r2, #0 8001810: 61da str r2, [r3, #28] if (HAL_UART_Init(&huart1) != HAL_OK) 8001812: 4805 ldr r0, [pc, #20] @ (8001828 ) 8001814: f004 fe28 bl 8006468 8001818: 4603 mov r3, r0 800181a: 2b00 cmp r3, #0 800181c: d001 beq.n 8001822 { Error_Handler(); 800181e: f7ff fd13 bl 8001248 } /* USER CODE BEGIN USART1_Init 2 */ /* USER CODE END USART1_Init 2 */ } 8001822: bf00 nop 8001824: bd80 pop {r7, pc} 8001826: bf00 nop 8001828: 200009f0 .word 0x200009f0 800182c: 40011000 .word 0x40011000 08001830 : /* USART2 init function */ void MX_USART2_UART_Init(void) { 8001830: b580 push {r7, lr} 8001832: af00 add r7, sp, #0 /* USER CODE END USART2_Init 0 */ /* USER CODE BEGIN USART2_Init 1 */ /* USER CODE END USART2_Init 1 */ huart2.Instance = USART2; 8001834: 4b11 ldr r3, [pc, #68] @ (800187c ) 8001836: 4a12 ldr r2, [pc, #72] @ (8001880 ) 8001838: 601a str r2, [r3, #0] huart2.Init.BaudRate = 115200; 800183a: 4b10 ldr r3, [pc, #64] @ (800187c ) 800183c: f44f 32e1 mov.w r2, #115200 @ 0x1c200 8001840: 605a str r2, [r3, #4] huart2.Init.WordLength = UART_WORDLENGTH_8B; 8001842: 4b0e ldr r3, [pc, #56] @ (800187c ) 8001844: 2200 movs r2, #0 8001846: 609a str r2, [r3, #8] huart2.Init.StopBits = UART_STOPBITS_1; 8001848: 4b0c ldr r3, [pc, #48] @ (800187c ) 800184a: 2200 movs r2, #0 800184c: 60da str r2, [r3, #12] huart2.Init.Parity = UART_PARITY_NONE; 800184e: 4b0b ldr r3, [pc, #44] @ (800187c ) 8001850: 2200 movs r2, #0 8001852: 611a str r2, [r3, #16] huart2.Init.Mode = UART_MODE_TX_RX; 8001854: 4b09 ldr r3, [pc, #36] @ (800187c ) 8001856: 220c movs r2, #12 8001858: 615a str r2, [r3, #20] huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE; 800185a: 4b08 ldr r3, [pc, #32] @ (800187c ) 800185c: 2200 movs r2, #0 800185e: 619a str r2, [r3, #24] huart2.Init.OverSampling = UART_OVERSAMPLING_16; 8001860: 4b06 ldr r3, [pc, #24] @ (800187c ) 8001862: 2200 movs r2, #0 8001864: 61da str r2, [r3, #28] if (HAL_UART_Init(&huart2) != HAL_OK) 8001866: 4805 ldr r0, [pc, #20] @ (800187c ) 8001868: f004 fdfe bl 8006468 800186c: 4603 mov r3, r0 800186e: 2b00 cmp r3, #0 8001870: d001 beq.n 8001876 { Error_Handler(); 8001872: f7ff fce9 bl 8001248 } /* USER CODE BEGIN USART2_Init 2 */ /* USER CODE END USART2_Init 2 */ } 8001876: bf00 nop 8001878: bd80 pop {r7, pc} 800187a: bf00 nop 800187c: 20000a38 .word 0x20000a38 8001880: 40004400 .word 0x40004400 08001884 : void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle) { 8001884: b580 push {r7, lr} 8001886: b090 sub sp, #64 @ 0x40 8001888: af00 add r7, sp, #0 800188a: 6078 str r0, [r7, #4] GPIO_InitTypeDef GPIO_InitStruct = {0}; 800188c: f107 032c add.w r3, r7, #44 @ 0x2c 8001890: 2200 movs r2, #0 8001892: 601a str r2, [r3, #0] 8001894: 605a str r2, [r3, #4] 8001896: 609a str r2, [r3, #8] 8001898: 60da str r2, [r3, #12] 800189a: 611a str r2, [r3, #16] if(uartHandle->Instance==UART4) 800189c: 687b ldr r3, [r7, #4] 800189e: 681b ldr r3, [r3, #0] 80018a0: 4a4a ldr r2, [pc, #296] @ (80019cc ) 80018a2: 4293 cmp r3, r2 80018a4: f040 80a0 bne.w 80019e8 { /* USER CODE BEGIN UART4_MspInit 0 */ /* USER CODE END UART4_MspInit 0 */ /* UART4 clock enable */ __HAL_RCC_UART4_CLK_ENABLE(); 80018a8: 2300 movs r3, #0 80018aa: 62bb str r3, [r7, #40] @ 0x28 80018ac: 4b48 ldr r3, [pc, #288] @ (80019d0 ) 80018ae: 6c1b ldr r3, [r3, #64] @ 0x40 80018b0: 4a47 ldr r2, [pc, #284] @ (80019d0 ) 80018b2: f443 2300 orr.w r3, r3, #524288 @ 0x80000 80018b6: 6413 str r3, [r2, #64] @ 0x40 80018b8: 4b45 ldr r3, [pc, #276] @ (80019d0 ) 80018ba: 6c1b ldr r3, [r3, #64] @ 0x40 80018bc: f403 2300 and.w r3, r3, #524288 @ 0x80000 80018c0: 62bb str r3, [r7, #40] @ 0x28 80018c2: 6abb ldr r3, [r7, #40] @ 0x28 __HAL_RCC_GPIOA_CLK_ENABLE(); 80018c4: 2300 movs r3, #0 80018c6: 627b str r3, [r7, #36] @ 0x24 80018c8: 4b41 ldr r3, [pc, #260] @ (80019d0 ) 80018ca: 6b1b ldr r3, [r3, #48] @ 0x30 80018cc: 4a40 ldr r2, [pc, #256] @ (80019d0 ) 80018ce: f043 0301 orr.w r3, r3, #1 80018d2: 6313 str r3, [r2, #48] @ 0x30 80018d4: 4b3e ldr r3, [pc, #248] @ (80019d0 ) 80018d6: 6b1b ldr r3, [r3, #48] @ 0x30 80018d8: f003 0301 and.w r3, r3, #1 80018dc: 627b str r3, [r7, #36] @ 0x24 80018de: 6a7b ldr r3, [r7, #36] @ 0x24 /**UART4 GPIO Configuration PA0-WKUP ------> UART4_TX PA1 ------> UART4_RX */ GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1; 80018e0: 2303 movs r3, #3 80018e2: 62fb str r3, [r7, #44] @ 0x2c GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 80018e4: 2302 movs r3, #2 80018e6: 633b str r3, [r7, #48] @ 0x30 GPIO_InitStruct.Pull = GPIO_NOPULL; 80018e8: 2300 movs r3, #0 80018ea: 637b str r3, [r7, #52] @ 0x34 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 80018ec: 2303 movs r3, #3 80018ee: 63bb str r3, [r7, #56] @ 0x38 GPIO_InitStruct.Alternate = GPIO_AF8_UART4; 80018f0: 2308 movs r3, #8 80018f2: 63fb str r3, [r7, #60] @ 0x3c HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 80018f4: f107 032c add.w r3, r7, #44 @ 0x2c 80018f8: 4619 mov r1, r3 80018fa: 4836 ldr r0, [pc, #216] @ (80019d4 ) 80018fc: f001 f858 bl 80029b0 /* UART4 DMA Init */ /* UART4_RX Init */ hdma_uart4_rx.Instance = DMA1_Stream2; 8001900: 4b35 ldr r3, [pc, #212] @ (80019d8 ) 8001902: 4a36 ldr r2, [pc, #216] @ (80019dc ) 8001904: 601a str r2, [r3, #0] hdma_uart4_rx.Init.Channel = DMA_CHANNEL_4; 8001906: 4b34 ldr r3, [pc, #208] @ (80019d8 ) 8001908: f04f 6200 mov.w r2, #134217728 @ 0x8000000 800190c: 605a str r2, [r3, #4] hdma_uart4_rx.Init.Direction = DMA_PERIPH_TO_MEMORY; 800190e: 4b32 ldr r3, [pc, #200] @ (80019d8 ) 8001910: 2200 movs r2, #0 8001912: 609a str r2, [r3, #8] hdma_uart4_rx.Init.PeriphInc = DMA_PINC_DISABLE; 8001914: 4b30 ldr r3, [pc, #192] @ (80019d8 ) 8001916: 2200 movs r2, #0 8001918: 60da str r2, [r3, #12] hdma_uart4_rx.Init.MemInc = DMA_MINC_ENABLE; 800191a: 4b2f ldr r3, [pc, #188] @ (80019d8 ) 800191c: f44f 6280 mov.w r2, #1024 @ 0x400 8001920: 611a str r2, [r3, #16] hdma_uart4_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001922: 4b2d ldr r3, [pc, #180] @ (80019d8 ) 8001924: 2200 movs r2, #0 8001926: 615a str r2, [r3, #20] hdma_uart4_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001928: 4b2b ldr r3, [pc, #172] @ (80019d8 ) 800192a: 2200 movs r2, #0 800192c: 619a str r2, [r3, #24] hdma_uart4_rx.Init.Mode = DMA_NORMAL; 800192e: 4b2a ldr r3, [pc, #168] @ (80019d8 ) 8001930: 2200 movs r2, #0 8001932: 61da str r2, [r3, #28] hdma_uart4_rx.Init.Priority = DMA_PRIORITY_LOW; 8001934: 4b28 ldr r3, [pc, #160] @ (80019d8 ) 8001936: 2200 movs r2, #0 8001938: 621a str r2, [r3, #32] hdma_uart4_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 800193a: 4b27 ldr r3, [pc, #156] @ (80019d8 ) 800193c: 2200 movs r2, #0 800193e: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_uart4_rx) != HAL_OK) 8001940: 4825 ldr r0, [pc, #148] @ (80019d8 ) 8001942: f000 fc33 bl 80021ac 8001946: 4603 mov r3, r0 8001948: 2b00 cmp r3, #0 800194a: d001 beq.n 8001950 { Error_Handler(); 800194c: f7ff fc7c bl 8001248 } __HAL_LINKDMA(uartHandle,hdmarx,hdma_uart4_rx); 8001950: 687b ldr r3, [r7, #4] 8001952: 4a21 ldr r2, [pc, #132] @ (80019d8 ) 8001954: 63da str r2, [r3, #60] @ 0x3c 8001956: 4a20 ldr r2, [pc, #128] @ (80019d8 ) 8001958: 687b ldr r3, [r7, #4] 800195a: 6393 str r3, [r2, #56] @ 0x38 /* UART4_TX Init */ hdma_uart4_tx.Instance = DMA1_Stream4; 800195c: 4b20 ldr r3, [pc, #128] @ (80019e0 ) 800195e: 4a21 ldr r2, [pc, #132] @ (80019e4 ) 8001960: 601a str r2, [r3, #0] hdma_uart4_tx.Init.Channel = DMA_CHANNEL_4; 8001962: 4b1f ldr r3, [pc, #124] @ (80019e0 ) 8001964: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001968: 605a str r2, [r3, #4] hdma_uart4_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; 800196a: 4b1d ldr r3, [pc, #116] @ (80019e0 ) 800196c: 2240 movs r2, #64 @ 0x40 800196e: 609a str r2, [r3, #8] hdma_uart4_tx.Init.PeriphInc = DMA_PINC_DISABLE; 8001970: 4b1b ldr r3, [pc, #108] @ (80019e0 ) 8001972: 2200 movs r2, #0 8001974: 60da str r2, [r3, #12] hdma_uart4_tx.Init.MemInc = DMA_MINC_ENABLE; 8001976: 4b1a ldr r3, [pc, #104] @ (80019e0 ) 8001978: f44f 6280 mov.w r2, #1024 @ 0x400 800197c: 611a str r2, [r3, #16] hdma_uart4_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 800197e: 4b18 ldr r3, [pc, #96] @ (80019e0 ) 8001980: 2200 movs r2, #0 8001982: 615a str r2, [r3, #20] hdma_uart4_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001984: 4b16 ldr r3, [pc, #88] @ (80019e0 ) 8001986: 2200 movs r2, #0 8001988: 619a str r2, [r3, #24] hdma_uart4_tx.Init.Mode = DMA_NORMAL; 800198a: 4b15 ldr r3, [pc, #84] @ (80019e0 ) 800198c: 2200 movs r2, #0 800198e: 61da str r2, [r3, #28] hdma_uart4_tx.Init.Priority = DMA_PRIORITY_LOW; 8001990: 4b13 ldr r3, [pc, #76] @ (80019e0 ) 8001992: 2200 movs r2, #0 8001994: 621a str r2, [r3, #32] hdma_uart4_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001996: 4b12 ldr r3, [pc, #72] @ (80019e0 ) 8001998: 2200 movs r2, #0 800199a: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_uart4_tx) != HAL_OK) 800199c: 4810 ldr r0, [pc, #64] @ (80019e0 ) 800199e: f000 fc05 bl 80021ac 80019a2: 4603 mov r3, r0 80019a4: 2b00 cmp r3, #0 80019a6: d001 beq.n 80019ac { Error_Handler(); 80019a8: f7ff fc4e bl 8001248 } __HAL_LINKDMA(uartHandle,hdmatx,hdma_uart4_tx); 80019ac: 687b ldr r3, [r7, #4] 80019ae: 4a0c ldr r2, [pc, #48] @ (80019e0 ) 80019b0: 639a str r2, [r3, #56] @ 0x38 80019b2: 4a0b ldr r2, [pc, #44] @ (80019e0 ) 80019b4: 687b ldr r3, [r7, #4] 80019b6: 6393 str r3, [r2, #56] @ 0x38 /* UART4 interrupt Init */ HAL_NVIC_SetPriority(UART4_IRQn, 5, 0); 80019b8: 2200 movs r2, #0 80019ba: 2105 movs r1, #5 80019bc: 2034 movs r0, #52 @ 0x34 80019be: f000 fbbe bl 800213e HAL_NVIC_EnableIRQ(UART4_IRQn); 80019c2: 2034 movs r0, #52 @ 0x34 80019c4: f000 fbd7 bl 8002176 HAL_NVIC_EnableIRQ(USART2_IRQn); /* USER CODE BEGIN USART2_MspInit 1 */ /* USER CODE END USART2_MspInit 1 */ } } 80019c8: e202 b.n 8001dd0 80019ca: bf00 nop 80019cc: 40004c00 .word 0x40004c00 80019d0: 40023800 .word 0x40023800 80019d4: 40020000 .word 0x40020000 80019d8: 20000a80 .word 0x20000a80 80019dc: 40026040 .word 0x40026040 80019e0: 20000ae0 .word 0x20000ae0 80019e4: 40026070 .word 0x40026070 else if(uartHandle->Instance==UART5) 80019e8: 687b ldr r3, [r7, #4] 80019ea: 681b ldr r3, [r3, #0] 80019ec: 4a59 ldr r2, [pc, #356] @ (8001b54 ) 80019ee: 4293 cmp r3, r2 80019f0: f040 80c0 bne.w 8001b74 __HAL_RCC_UART5_CLK_ENABLE(); 80019f4: 2300 movs r3, #0 80019f6: 623b str r3, [r7, #32] 80019f8: 4b57 ldr r3, [pc, #348] @ (8001b58 ) 80019fa: 6c1b ldr r3, [r3, #64] @ 0x40 80019fc: 4a56 ldr r2, [pc, #344] @ (8001b58 ) 80019fe: f443 1380 orr.w r3, r3, #1048576 @ 0x100000 8001a02: 6413 str r3, [r2, #64] @ 0x40 8001a04: 4b54 ldr r3, [pc, #336] @ (8001b58 ) 8001a06: 6c1b ldr r3, [r3, #64] @ 0x40 8001a08: f403 1380 and.w r3, r3, #1048576 @ 0x100000 8001a0c: 623b str r3, [r7, #32] 8001a0e: 6a3b ldr r3, [r7, #32] __HAL_RCC_GPIOC_CLK_ENABLE(); 8001a10: 2300 movs r3, #0 8001a12: 61fb str r3, [r7, #28] 8001a14: 4b50 ldr r3, [pc, #320] @ (8001b58 ) 8001a16: 6b1b ldr r3, [r3, #48] @ 0x30 8001a18: 4a4f ldr r2, [pc, #316] @ (8001b58 ) 8001a1a: f043 0304 orr.w r3, r3, #4 8001a1e: 6313 str r3, [r2, #48] @ 0x30 8001a20: 4b4d ldr r3, [pc, #308] @ (8001b58 ) 8001a22: 6b1b ldr r3, [r3, #48] @ 0x30 8001a24: f003 0304 and.w r3, r3, #4 8001a28: 61fb str r3, [r7, #28] 8001a2a: 69fb ldr r3, [r7, #28] __HAL_RCC_GPIOD_CLK_ENABLE(); 8001a2c: 2300 movs r3, #0 8001a2e: 61bb str r3, [r7, #24] 8001a30: 4b49 ldr r3, [pc, #292] @ (8001b58 ) 8001a32: 6b1b ldr r3, [r3, #48] @ 0x30 8001a34: 4a48 ldr r2, [pc, #288] @ (8001b58 ) 8001a36: f043 0308 orr.w r3, r3, #8 8001a3a: 6313 str r3, [r2, #48] @ 0x30 8001a3c: 4b46 ldr r3, [pc, #280] @ (8001b58 ) 8001a3e: 6b1b ldr r3, [r3, #48] @ 0x30 8001a40: f003 0308 and.w r3, r3, #8 8001a44: 61bb str r3, [r7, #24] 8001a46: 69bb ldr r3, [r7, #24] GPIO_InitStruct.Pin = GPIO_PIN_12; 8001a48: f44f 5380 mov.w r3, #4096 @ 0x1000 8001a4c: 62fb str r3, [r7, #44] @ 0x2c GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 8001a4e: 2302 movs r3, #2 8001a50: 633b str r3, [r7, #48] @ 0x30 GPIO_InitStruct.Pull = GPIO_NOPULL; 8001a52: 2300 movs r3, #0 8001a54: 637b str r3, [r7, #52] @ 0x34 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 8001a56: 2303 movs r3, #3 8001a58: 63bb str r3, [r7, #56] @ 0x38 GPIO_InitStruct.Alternate = GPIO_AF8_UART5; 8001a5a: 2308 movs r3, #8 8001a5c: 63fb str r3, [r7, #60] @ 0x3c HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); 8001a5e: f107 032c add.w r3, r7, #44 @ 0x2c 8001a62: 4619 mov r1, r3 8001a64: 483d ldr r0, [pc, #244] @ (8001b5c ) 8001a66: f000 ffa3 bl 80029b0 GPIO_InitStruct.Pin = GPIO_PIN_2; 8001a6a: 2304 movs r3, #4 8001a6c: 62fb str r3, [r7, #44] @ 0x2c GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 8001a6e: 2302 movs r3, #2 8001a70: 633b str r3, [r7, #48] @ 0x30 GPIO_InitStruct.Pull = GPIO_NOPULL; 8001a72: 2300 movs r3, #0 8001a74: 637b str r3, [r7, #52] @ 0x34 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 8001a76: 2303 movs r3, #3 8001a78: 63bb str r3, [r7, #56] @ 0x38 GPIO_InitStruct.Alternate = GPIO_AF8_UART5; 8001a7a: 2308 movs r3, #8 8001a7c: 63fb str r3, [r7, #60] @ 0x3c HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); 8001a7e: f107 032c add.w r3, r7, #44 @ 0x2c 8001a82: 4619 mov r1, r3 8001a84: 4836 ldr r0, [pc, #216] @ (8001b60 ) 8001a86: f000 ff93 bl 80029b0 hdma_uart5_rx.Instance = DMA1_Stream0; 8001a8a: 4b36 ldr r3, [pc, #216] @ (8001b64 ) 8001a8c: 4a36 ldr r2, [pc, #216] @ (8001b68 ) 8001a8e: 601a str r2, [r3, #0] hdma_uart5_rx.Init.Channel = DMA_CHANNEL_4; 8001a90: 4b34 ldr r3, [pc, #208] @ (8001b64 ) 8001a92: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001a96: 605a str r2, [r3, #4] hdma_uart5_rx.Init.Direction = DMA_PERIPH_TO_MEMORY; 8001a98: 4b32 ldr r3, [pc, #200] @ (8001b64 ) 8001a9a: 2200 movs r2, #0 8001a9c: 609a str r2, [r3, #8] hdma_uart5_rx.Init.PeriphInc = DMA_PINC_DISABLE; 8001a9e: 4b31 ldr r3, [pc, #196] @ (8001b64 ) 8001aa0: 2200 movs r2, #0 8001aa2: 60da str r2, [r3, #12] hdma_uart5_rx.Init.MemInc = DMA_MINC_ENABLE; 8001aa4: 4b2f ldr r3, [pc, #188] @ (8001b64 ) 8001aa6: f44f 6280 mov.w r2, #1024 @ 0x400 8001aaa: 611a str r2, [r3, #16] hdma_uart5_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001aac: 4b2d ldr r3, [pc, #180] @ (8001b64 ) 8001aae: 2200 movs r2, #0 8001ab0: 615a str r2, [r3, #20] hdma_uart5_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001ab2: 4b2c ldr r3, [pc, #176] @ (8001b64 ) 8001ab4: 2200 movs r2, #0 8001ab6: 619a str r2, [r3, #24] hdma_uart5_rx.Init.Mode = DMA_NORMAL; 8001ab8: 4b2a ldr r3, [pc, #168] @ (8001b64 ) 8001aba: 2200 movs r2, #0 8001abc: 61da str r2, [r3, #28] hdma_uart5_rx.Init.Priority = DMA_PRIORITY_LOW; 8001abe: 4b29 ldr r3, [pc, #164] @ (8001b64 ) 8001ac0: 2200 movs r2, #0 8001ac2: 621a str r2, [r3, #32] hdma_uart5_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001ac4: 4b27 ldr r3, [pc, #156] @ (8001b64 ) 8001ac6: 2200 movs r2, #0 8001ac8: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_uart5_rx) != HAL_OK) 8001aca: 4826 ldr r0, [pc, #152] @ (8001b64 ) 8001acc: f000 fb6e bl 80021ac 8001ad0: 4603 mov r3, r0 8001ad2: 2b00 cmp r3, #0 8001ad4: d001 beq.n 8001ada Error_Handler(); 8001ad6: f7ff fbb7 bl 8001248 __HAL_LINKDMA(uartHandle,hdmarx,hdma_uart5_rx); 8001ada: 687b ldr r3, [r7, #4] 8001adc: 4a21 ldr r2, [pc, #132] @ (8001b64 ) 8001ade: 63da str r2, [r3, #60] @ 0x3c 8001ae0: 4a20 ldr r2, [pc, #128] @ (8001b64 ) 8001ae2: 687b ldr r3, [r7, #4] 8001ae4: 6393 str r3, [r2, #56] @ 0x38 hdma_uart5_tx.Instance = DMA1_Stream7; 8001ae6: 4b21 ldr r3, [pc, #132] @ (8001b6c ) 8001ae8: 4a21 ldr r2, [pc, #132] @ (8001b70 ) 8001aea: 601a str r2, [r3, #0] hdma_uart5_tx.Init.Channel = DMA_CHANNEL_4; 8001aec: 4b1f ldr r3, [pc, #124] @ (8001b6c ) 8001aee: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001af2: 605a str r2, [r3, #4] hdma_uart5_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; 8001af4: 4b1d ldr r3, [pc, #116] @ (8001b6c ) 8001af6: 2240 movs r2, #64 @ 0x40 8001af8: 609a str r2, [r3, #8] hdma_uart5_tx.Init.PeriphInc = DMA_PINC_DISABLE; 8001afa: 4b1c ldr r3, [pc, #112] @ (8001b6c ) 8001afc: 2200 movs r2, #0 8001afe: 60da str r2, [r3, #12] hdma_uart5_tx.Init.MemInc = DMA_MINC_ENABLE; 8001b00: 4b1a ldr r3, [pc, #104] @ (8001b6c ) 8001b02: f44f 6280 mov.w r2, #1024 @ 0x400 8001b06: 611a str r2, [r3, #16] hdma_uart5_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001b08: 4b18 ldr r3, [pc, #96] @ (8001b6c ) 8001b0a: 2200 movs r2, #0 8001b0c: 615a str r2, [r3, #20] hdma_uart5_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001b0e: 4b17 ldr r3, [pc, #92] @ (8001b6c ) 8001b10: 2200 movs r2, #0 8001b12: 619a str r2, [r3, #24] hdma_uart5_tx.Init.Mode = DMA_NORMAL; 8001b14: 4b15 ldr r3, [pc, #84] @ (8001b6c ) 8001b16: 2200 movs r2, #0 8001b18: 61da str r2, [r3, #28] hdma_uart5_tx.Init.Priority = DMA_PRIORITY_LOW; 8001b1a: 4b14 ldr r3, [pc, #80] @ (8001b6c ) 8001b1c: 2200 movs r2, #0 8001b1e: 621a str r2, [r3, #32] hdma_uart5_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001b20: 4b12 ldr r3, [pc, #72] @ (8001b6c ) 8001b22: 2200 movs r2, #0 8001b24: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_uart5_tx) != HAL_OK) 8001b26: 4811 ldr r0, [pc, #68] @ (8001b6c ) 8001b28: f000 fb40 bl 80021ac 8001b2c: 4603 mov r3, r0 8001b2e: 2b00 cmp r3, #0 8001b30: d001 beq.n 8001b36 Error_Handler(); 8001b32: f7ff fb89 bl 8001248 __HAL_LINKDMA(uartHandle,hdmatx,hdma_uart5_tx); 8001b36: 687b ldr r3, [r7, #4] 8001b38: 4a0c ldr r2, [pc, #48] @ (8001b6c ) 8001b3a: 639a str r2, [r3, #56] @ 0x38 8001b3c: 4a0b ldr r2, [pc, #44] @ (8001b6c ) 8001b3e: 687b ldr r3, [r7, #4] 8001b40: 6393 str r3, [r2, #56] @ 0x38 HAL_NVIC_SetPriority(UART5_IRQn, 5, 0); 8001b42: 2200 movs r2, #0 8001b44: 2105 movs r1, #5 8001b46: 2035 movs r0, #53 @ 0x35 8001b48: f000 faf9 bl 800213e HAL_NVIC_EnableIRQ(UART5_IRQn); 8001b4c: 2035 movs r0, #53 @ 0x35 8001b4e: f000 fb12 bl 8002176 } 8001b52: e13d b.n 8001dd0 8001b54: 40005000 .word 0x40005000 8001b58: 40023800 .word 0x40023800 8001b5c: 40020800 .word 0x40020800 8001b60: 40020c00 .word 0x40020c00 8001b64: 20000b40 .word 0x20000b40 8001b68: 40026010 .word 0x40026010 8001b6c: 20000ba0 .word 0x20000ba0 8001b70: 400260b8 .word 0x400260b8 else if(uartHandle->Instance==USART1) 8001b74: 687b ldr r3, [r7, #4] 8001b76: 681b ldr r3, [r3, #0] 8001b78: 4a97 ldr r2, [pc, #604] @ (8001dd8 ) 8001b7a: 4293 cmp r3, r2 8001b7c: f040 8092 bne.w 8001ca4 __HAL_RCC_USART1_CLK_ENABLE(); 8001b80: 2300 movs r3, #0 8001b82: 617b str r3, [r7, #20] 8001b84: 4b95 ldr r3, [pc, #596] @ (8001ddc ) 8001b86: 6c5b ldr r3, [r3, #68] @ 0x44 8001b88: 4a94 ldr r2, [pc, #592] @ (8001ddc ) 8001b8a: f043 0310 orr.w r3, r3, #16 8001b8e: 6453 str r3, [r2, #68] @ 0x44 8001b90: 4b92 ldr r3, [pc, #584] @ (8001ddc ) 8001b92: 6c5b ldr r3, [r3, #68] @ 0x44 8001b94: f003 0310 and.w r3, r3, #16 8001b98: 617b str r3, [r7, #20] 8001b9a: 697b ldr r3, [r7, #20] __HAL_RCC_GPIOA_CLK_ENABLE(); 8001b9c: 2300 movs r3, #0 8001b9e: 613b str r3, [r7, #16] 8001ba0: 4b8e ldr r3, [pc, #568] @ (8001ddc ) 8001ba2: 6b1b ldr r3, [r3, #48] @ 0x30 8001ba4: 4a8d ldr r2, [pc, #564] @ (8001ddc ) 8001ba6: f043 0301 orr.w r3, r3, #1 8001baa: 6313 str r3, [r2, #48] @ 0x30 8001bac: 4b8b ldr r3, [pc, #556] @ (8001ddc ) 8001bae: 6b1b ldr r3, [r3, #48] @ 0x30 8001bb0: f003 0301 and.w r3, r3, #1 8001bb4: 613b str r3, [r7, #16] 8001bb6: 693b ldr r3, [r7, #16] GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10; 8001bb8: f44f 63c0 mov.w r3, #1536 @ 0x600 8001bbc: 62fb str r3, [r7, #44] @ 0x2c GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 8001bbe: 2302 movs r3, #2 8001bc0: 633b str r3, [r7, #48] @ 0x30 GPIO_InitStruct.Pull = GPIO_NOPULL; 8001bc2: 2300 movs r3, #0 8001bc4: 637b str r3, [r7, #52] @ 0x34 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 8001bc6: 2303 movs r3, #3 8001bc8: 63bb str r3, [r7, #56] @ 0x38 GPIO_InitStruct.Alternate = GPIO_AF7_USART1; 8001bca: 2307 movs r3, #7 8001bcc: 63fb str r3, [r7, #60] @ 0x3c HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 8001bce: f107 032c add.w r3, r7, #44 @ 0x2c 8001bd2: 4619 mov r1, r3 8001bd4: 4882 ldr r0, [pc, #520] @ (8001de0 ) 8001bd6: f000 feeb bl 80029b0 hdma_usart1_rx.Instance = DMA2_Stream2; 8001bda: 4b82 ldr r3, [pc, #520] @ (8001de4 ) 8001bdc: 4a82 ldr r2, [pc, #520] @ (8001de8 ) 8001bde: 601a str r2, [r3, #0] hdma_usart1_rx.Init.Channel = DMA_CHANNEL_4; 8001be0: 4b80 ldr r3, [pc, #512] @ (8001de4 ) 8001be2: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001be6: 605a str r2, [r3, #4] hdma_usart1_rx.Init.Direction = DMA_PERIPH_TO_MEMORY; 8001be8: 4b7e ldr r3, [pc, #504] @ (8001de4 ) 8001bea: 2200 movs r2, #0 8001bec: 609a str r2, [r3, #8] hdma_usart1_rx.Init.PeriphInc = DMA_PINC_DISABLE; 8001bee: 4b7d ldr r3, [pc, #500] @ (8001de4 ) 8001bf0: 2200 movs r2, #0 8001bf2: 60da str r2, [r3, #12] hdma_usart1_rx.Init.MemInc = DMA_MINC_ENABLE; 8001bf4: 4b7b ldr r3, [pc, #492] @ (8001de4 ) 8001bf6: f44f 6280 mov.w r2, #1024 @ 0x400 8001bfa: 611a str r2, [r3, #16] hdma_usart1_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001bfc: 4b79 ldr r3, [pc, #484] @ (8001de4 ) 8001bfe: 2200 movs r2, #0 8001c00: 615a str r2, [r3, #20] hdma_usart1_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001c02: 4b78 ldr r3, [pc, #480] @ (8001de4 ) 8001c04: 2200 movs r2, #0 8001c06: 619a str r2, [r3, #24] hdma_usart1_rx.Init.Mode = DMA_NORMAL; 8001c08: 4b76 ldr r3, [pc, #472] @ (8001de4 ) 8001c0a: 2200 movs r2, #0 8001c0c: 61da str r2, [r3, #28] hdma_usart1_rx.Init.Priority = DMA_PRIORITY_LOW; 8001c0e: 4b75 ldr r3, [pc, #468] @ (8001de4 ) 8001c10: 2200 movs r2, #0 8001c12: 621a str r2, [r3, #32] hdma_usart1_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001c14: 4b73 ldr r3, [pc, #460] @ (8001de4 ) 8001c16: 2200 movs r2, #0 8001c18: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_usart1_rx) != HAL_OK) 8001c1a: 4872 ldr r0, [pc, #456] @ (8001de4 ) 8001c1c: f000 fac6 bl 80021ac 8001c20: 4603 mov r3, r0 8001c22: 2b00 cmp r3, #0 8001c24: d001 beq.n 8001c2a Error_Handler(); 8001c26: f7ff fb0f bl 8001248 __HAL_LINKDMA(uartHandle,hdmarx,hdma_usart1_rx); 8001c2a: 687b ldr r3, [r7, #4] 8001c2c: 4a6d ldr r2, [pc, #436] @ (8001de4 ) 8001c2e: 63da str r2, [r3, #60] @ 0x3c 8001c30: 4a6c ldr r2, [pc, #432] @ (8001de4 ) 8001c32: 687b ldr r3, [r7, #4] 8001c34: 6393 str r3, [r2, #56] @ 0x38 hdma_usart1_tx.Instance = DMA2_Stream7; 8001c36: 4b6d ldr r3, [pc, #436] @ (8001dec ) 8001c38: 4a6d ldr r2, [pc, #436] @ (8001df0 ) 8001c3a: 601a str r2, [r3, #0] hdma_usart1_tx.Init.Channel = DMA_CHANNEL_4; 8001c3c: 4b6b ldr r3, [pc, #428] @ (8001dec ) 8001c3e: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001c42: 605a str r2, [r3, #4] hdma_usart1_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; 8001c44: 4b69 ldr r3, [pc, #420] @ (8001dec ) 8001c46: 2240 movs r2, #64 @ 0x40 8001c48: 609a str r2, [r3, #8] hdma_usart1_tx.Init.PeriphInc = DMA_PINC_DISABLE; 8001c4a: 4b68 ldr r3, [pc, #416] @ (8001dec ) 8001c4c: 2200 movs r2, #0 8001c4e: 60da str r2, [r3, #12] hdma_usart1_tx.Init.MemInc = DMA_MINC_ENABLE; 8001c50: 4b66 ldr r3, [pc, #408] @ (8001dec ) 8001c52: f44f 6280 mov.w r2, #1024 @ 0x400 8001c56: 611a str r2, [r3, #16] hdma_usart1_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001c58: 4b64 ldr r3, [pc, #400] @ (8001dec ) 8001c5a: 2200 movs r2, #0 8001c5c: 615a str r2, [r3, #20] hdma_usart1_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001c5e: 4b63 ldr r3, [pc, #396] @ (8001dec ) 8001c60: 2200 movs r2, #0 8001c62: 619a str r2, [r3, #24] hdma_usart1_tx.Init.Mode = DMA_NORMAL; 8001c64: 4b61 ldr r3, [pc, #388] @ (8001dec ) 8001c66: 2200 movs r2, #0 8001c68: 61da str r2, [r3, #28] hdma_usart1_tx.Init.Priority = DMA_PRIORITY_LOW; 8001c6a: 4b60 ldr r3, [pc, #384] @ (8001dec ) 8001c6c: 2200 movs r2, #0 8001c6e: 621a str r2, [r3, #32] hdma_usart1_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001c70: 4b5e ldr r3, [pc, #376] @ (8001dec ) 8001c72: 2200 movs r2, #0 8001c74: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_usart1_tx) != HAL_OK) 8001c76: 485d ldr r0, [pc, #372] @ (8001dec ) 8001c78: f000 fa98 bl 80021ac 8001c7c: 4603 mov r3, r0 8001c7e: 2b00 cmp r3, #0 8001c80: d001 beq.n 8001c86 Error_Handler(); 8001c82: f7ff fae1 bl 8001248 __HAL_LINKDMA(uartHandle,hdmatx,hdma_usart1_tx); 8001c86: 687b ldr r3, [r7, #4] 8001c88: 4a58 ldr r2, [pc, #352] @ (8001dec ) 8001c8a: 639a str r2, [r3, #56] @ 0x38 8001c8c: 4a57 ldr r2, [pc, #348] @ (8001dec ) 8001c8e: 687b ldr r3, [r7, #4] 8001c90: 6393 str r3, [r2, #56] @ 0x38 HAL_NVIC_SetPriority(USART1_IRQn, 5, 0); 8001c92: 2200 movs r2, #0 8001c94: 2105 movs r1, #5 8001c96: 2025 movs r0, #37 @ 0x25 8001c98: f000 fa51 bl 800213e HAL_NVIC_EnableIRQ(USART1_IRQn); 8001c9c: 2025 movs r0, #37 @ 0x25 8001c9e: f000 fa6a bl 8002176 } 8001ca2: e095 b.n 8001dd0 else if(uartHandle->Instance==USART2) 8001ca4: 687b ldr r3, [r7, #4] 8001ca6: 681b ldr r3, [r3, #0] 8001ca8: 4a52 ldr r2, [pc, #328] @ (8001df4 ) 8001caa: 4293 cmp r3, r2 8001cac: f040 8090 bne.w 8001dd0 __HAL_RCC_USART2_CLK_ENABLE(); 8001cb0: 2300 movs r3, #0 8001cb2: 60fb str r3, [r7, #12] 8001cb4: 4b49 ldr r3, [pc, #292] @ (8001ddc ) 8001cb6: 6c1b ldr r3, [r3, #64] @ 0x40 8001cb8: 4a48 ldr r2, [pc, #288] @ (8001ddc ) 8001cba: f443 3300 orr.w r3, r3, #131072 @ 0x20000 8001cbe: 6413 str r3, [r2, #64] @ 0x40 8001cc0: 4b46 ldr r3, [pc, #280] @ (8001ddc ) 8001cc2: 6c1b ldr r3, [r3, #64] @ 0x40 8001cc4: f403 3300 and.w r3, r3, #131072 @ 0x20000 8001cc8: 60fb str r3, [r7, #12] 8001cca: 68fb ldr r3, [r7, #12] __HAL_RCC_GPIOA_CLK_ENABLE(); 8001ccc: 2300 movs r3, #0 8001cce: 60bb str r3, [r7, #8] 8001cd0: 4b42 ldr r3, [pc, #264] @ (8001ddc ) 8001cd2: 6b1b ldr r3, [r3, #48] @ 0x30 8001cd4: 4a41 ldr r2, [pc, #260] @ (8001ddc ) 8001cd6: f043 0301 orr.w r3, r3, #1 8001cda: 6313 str r3, [r2, #48] @ 0x30 8001cdc: 4b3f ldr r3, [pc, #252] @ (8001ddc ) 8001cde: 6b1b ldr r3, [r3, #48] @ 0x30 8001ce0: f003 0301 and.w r3, r3, #1 8001ce4: 60bb str r3, [r7, #8] 8001ce6: 68bb ldr r3, [r7, #8] GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_3; 8001ce8: 230c movs r3, #12 8001cea: 62fb str r3, [r7, #44] @ 0x2c GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; 8001cec: 2302 movs r3, #2 8001cee: 633b str r3, [r7, #48] @ 0x30 GPIO_InitStruct.Pull = GPIO_NOPULL; 8001cf0: 2300 movs r3, #0 8001cf2: 637b str r3, [r7, #52] @ 0x34 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; 8001cf4: 2303 movs r3, #3 8001cf6: 63bb str r3, [r7, #56] @ 0x38 GPIO_InitStruct.Alternate = GPIO_AF7_USART2; 8001cf8: 2307 movs r3, #7 8001cfa: 63fb str r3, [r7, #60] @ 0x3c HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); 8001cfc: f107 032c add.w r3, r7, #44 @ 0x2c 8001d00: 4619 mov r1, r3 8001d02: 4837 ldr r0, [pc, #220] @ (8001de0 ) 8001d04: f000 fe54 bl 80029b0 hdma_usart2_rx.Instance = DMA1_Stream5; 8001d08: 4b3b ldr r3, [pc, #236] @ (8001df8 ) 8001d0a: 4a3c ldr r2, [pc, #240] @ (8001dfc ) 8001d0c: 601a str r2, [r3, #0] hdma_usart2_rx.Init.Channel = DMA_CHANNEL_4; 8001d0e: 4b3a ldr r3, [pc, #232] @ (8001df8 ) 8001d10: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001d14: 605a str r2, [r3, #4] hdma_usart2_rx.Init.Direction = DMA_PERIPH_TO_MEMORY; 8001d16: 4b38 ldr r3, [pc, #224] @ (8001df8 ) 8001d18: 2200 movs r2, #0 8001d1a: 609a str r2, [r3, #8] hdma_usart2_rx.Init.PeriphInc = DMA_PINC_DISABLE; 8001d1c: 4b36 ldr r3, [pc, #216] @ (8001df8 ) 8001d1e: 2200 movs r2, #0 8001d20: 60da str r2, [r3, #12] hdma_usart2_rx.Init.MemInc = DMA_MINC_ENABLE; 8001d22: 4b35 ldr r3, [pc, #212] @ (8001df8 ) 8001d24: f44f 6280 mov.w r2, #1024 @ 0x400 8001d28: 611a str r2, [r3, #16] hdma_usart2_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001d2a: 4b33 ldr r3, [pc, #204] @ (8001df8 ) 8001d2c: 2200 movs r2, #0 8001d2e: 615a str r2, [r3, #20] hdma_usart2_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001d30: 4b31 ldr r3, [pc, #196] @ (8001df8 ) 8001d32: 2200 movs r2, #0 8001d34: 619a str r2, [r3, #24] hdma_usart2_rx.Init.Mode = DMA_NORMAL; 8001d36: 4b30 ldr r3, [pc, #192] @ (8001df8 ) 8001d38: 2200 movs r2, #0 8001d3a: 61da str r2, [r3, #28] hdma_usart2_rx.Init.Priority = DMA_PRIORITY_LOW; 8001d3c: 4b2e ldr r3, [pc, #184] @ (8001df8 ) 8001d3e: 2200 movs r2, #0 8001d40: 621a str r2, [r3, #32] hdma_usart2_rx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001d42: 4b2d ldr r3, [pc, #180] @ (8001df8 ) 8001d44: 2200 movs r2, #0 8001d46: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_usart2_rx) != HAL_OK) 8001d48: 482b ldr r0, [pc, #172] @ (8001df8 ) 8001d4a: f000 fa2f bl 80021ac 8001d4e: 4603 mov r3, r0 8001d50: 2b00 cmp r3, #0 8001d52: d001 beq.n 8001d58 Error_Handler(); 8001d54: f7ff fa78 bl 8001248 __HAL_LINKDMA(uartHandle,hdmarx,hdma_usart2_rx); 8001d58: 687b ldr r3, [r7, #4] 8001d5a: 4a27 ldr r2, [pc, #156] @ (8001df8 ) 8001d5c: 63da str r2, [r3, #60] @ 0x3c 8001d5e: 4a26 ldr r2, [pc, #152] @ (8001df8 ) 8001d60: 687b ldr r3, [r7, #4] 8001d62: 6393 str r3, [r2, #56] @ 0x38 hdma_usart2_tx.Instance = DMA1_Stream6; 8001d64: 4b26 ldr r3, [pc, #152] @ (8001e00 ) 8001d66: 4a27 ldr r2, [pc, #156] @ (8001e04 ) 8001d68: 601a str r2, [r3, #0] hdma_usart2_tx.Init.Channel = DMA_CHANNEL_4; 8001d6a: 4b25 ldr r3, [pc, #148] @ (8001e00 ) 8001d6c: f04f 6200 mov.w r2, #134217728 @ 0x8000000 8001d70: 605a str r2, [r3, #4] hdma_usart2_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; 8001d72: 4b23 ldr r3, [pc, #140] @ (8001e00 ) 8001d74: 2240 movs r2, #64 @ 0x40 8001d76: 609a str r2, [r3, #8] hdma_usart2_tx.Init.PeriphInc = DMA_PINC_DISABLE; 8001d78: 4b21 ldr r3, [pc, #132] @ (8001e00 ) 8001d7a: 2200 movs r2, #0 8001d7c: 60da str r2, [r3, #12] hdma_usart2_tx.Init.MemInc = DMA_MINC_ENABLE; 8001d7e: 4b20 ldr r3, [pc, #128] @ (8001e00 ) 8001d80: f44f 6280 mov.w r2, #1024 @ 0x400 8001d84: 611a str r2, [r3, #16] hdma_usart2_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; 8001d86: 4b1e ldr r3, [pc, #120] @ (8001e00 ) 8001d88: 2200 movs r2, #0 8001d8a: 615a str r2, [r3, #20] hdma_usart2_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; 8001d8c: 4b1c ldr r3, [pc, #112] @ (8001e00 ) 8001d8e: 2200 movs r2, #0 8001d90: 619a str r2, [r3, #24] hdma_usart2_tx.Init.Mode = DMA_NORMAL; 8001d92: 4b1b ldr r3, [pc, #108] @ (8001e00 ) 8001d94: 2200 movs r2, #0 8001d96: 61da str r2, [r3, #28] hdma_usart2_tx.Init.Priority = DMA_PRIORITY_LOW; 8001d98: 4b19 ldr r3, [pc, #100] @ (8001e00 ) 8001d9a: 2200 movs r2, #0 8001d9c: 621a str r2, [r3, #32] hdma_usart2_tx.Init.FIFOMode = DMA_FIFOMODE_DISABLE; 8001d9e: 4b18 ldr r3, [pc, #96] @ (8001e00 ) 8001da0: 2200 movs r2, #0 8001da2: 625a str r2, [r3, #36] @ 0x24 if (HAL_DMA_Init(&hdma_usart2_tx) != HAL_OK) 8001da4: 4816 ldr r0, [pc, #88] @ (8001e00 ) 8001da6: f000 fa01 bl 80021ac 8001daa: 4603 mov r3, r0 8001dac: 2b00 cmp r3, #0 8001dae: d001 beq.n 8001db4 Error_Handler(); 8001db0: f7ff fa4a bl 8001248 __HAL_LINKDMA(uartHandle,hdmatx,hdma_usart2_tx); 8001db4: 687b ldr r3, [r7, #4] 8001db6: 4a12 ldr r2, [pc, #72] @ (8001e00 ) 8001db8: 639a str r2, [r3, #56] @ 0x38 8001dba: 4a11 ldr r2, [pc, #68] @ (8001e00 ) 8001dbc: 687b ldr r3, [r7, #4] 8001dbe: 6393 str r3, [r2, #56] @ 0x38 HAL_NVIC_SetPriority(USART2_IRQn, 5, 0); 8001dc0: 2200 movs r2, #0 8001dc2: 2105 movs r1, #5 8001dc4: 2026 movs r0, #38 @ 0x26 8001dc6: f000 f9ba bl 800213e HAL_NVIC_EnableIRQ(USART2_IRQn); 8001dca: 2026 movs r0, #38 @ 0x26 8001dcc: f000 f9d3 bl 8002176 } 8001dd0: bf00 nop 8001dd2: 3740 adds r7, #64 @ 0x40 8001dd4: 46bd mov sp, r7 8001dd6: bd80 pop {r7, pc} 8001dd8: 40011000 .word 0x40011000 8001ddc: 40023800 .word 0x40023800 8001de0: 40020000 .word 0x40020000 8001de4: 20000c00 .word 0x20000c00 8001de8: 40026440 .word 0x40026440 8001dec: 20000c60 .word 0x20000c60 8001df0: 400264b8 .word 0x400264b8 8001df4: 40004400 .word 0x40004400 8001df8: 20000cc0 .word 0x20000cc0 8001dfc: 40026088 .word 0x40026088 8001e00: 20000d20 .word 0x20000d20 8001e04: 400260a0 .word 0x400260a0 08001e08 : 8001e08: f8df d034 ldr.w sp, [pc, #52] @ 8001e40 8001e0c: f7ff fb34 bl 8001478 8001e10: 480c ldr r0, [pc, #48] @ (8001e44 ) 8001e12: 490d ldr r1, [pc, #52] @ (8001e48 ) 8001e14: 4a0d ldr r2, [pc, #52] @ (8001e4c ) 8001e16: 2300 movs r3, #0 8001e18: e002 b.n 8001e20 08001e1a : 8001e1a: 58d4 ldr r4, [r2, r3] 8001e1c: 50c4 str r4, [r0, r3] 8001e1e: 3304 adds r3, #4 08001e20 : 8001e20: 18c4 adds r4, r0, r3 8001e22: 428c cmp r4, r1 8001e24: d3f9 bcc.n 8001e1a 8001e26: 4a0a ldr r2, [pc, #40] @ (8001e50 ) 8001e28: 4c0a ldr r4, [pc, #40] @ (8001e54 ) 8001e2a: 2300 movs r3, #0 8001e2c: e001 b.n 8001e32 08001e2e : 8001e2e: 6013 str r3, [r2, #0] 8001e30: 3204 adds r2, #4 08001e32 : 8001e32: 42a2 cmp r2, r4 8001e34: d3fb bcc.n 8001e2e 8001e36: f009 fa93 bl 800b360 <__libc_init_array> 8001e3a: f7fe fd75 bl 8000928
8001e3e: 4770 bx lr 8001e40: 20020000 .word 0x20020000 8001e44: 20000000 .word 0x20000000 8001e48: 200001a0 .word 0x200001a0 8001e4c: 0800b448 .word 0x0800b448 8001e50: 200001a0 .word 0x200001a0 8001e54: 2000175c .word 0x2000175c 08001e58 : 8001e58: e7fe b.n 8001e58 ... 08001e5c : 8001e5c: b580 push {r7, lr} 8001e5e: af00 add r7, sp, #0 8001e60: 4b0e ldr r3, [pc, #56] @ (8001e9c ) 8001e62: 681b ldr r3, [r3, #0] 8001e64: 4a0d ldr r2, [pc, #52] @ (8001e9c ) 8001e66: f443 7300 orr.w r3, r3, #512 @ 0x200 8001e6a: 6013 str r3, [r2, #0] 8001e6c: 4b0b ldr r3, [pc, #44] @ (8001e9c ) 8001e6e: 681b ldr r3, [r3, #0] 8001e70: 4a0a ldr r2, [pc, #40] @ (8001e9c ) 8001e72: f443 6380 orr.w r3, r3, #1024 @ 0x400 8001e76: 6013 str r3, [r2, #0] 8001e78: 4b08 ldr r3, [pc, #32] @ (8001e9c ) 8001e7a: 681b ldr r3, [r3, #0] 8001e7c: 4a07 ldr r2, [pc, #28] @ (8001e9c ) 8001e7e: f443 7380 orr.w r3, r3, #256 @ 0x100 8001e82: 6013 str r3, [r2, #0] 8001e84: 2003 movs r0, #3 8001e86: f000 f94f bl 8002128 8001e8a: 200f movs r0, #15 8001e8c: f000 f808 bl 8001ea0 8001e90: f7ff fa18 bl 80012c4 8001e94: 2300 movs r3, #0 8001e96: 4618 mov r0, r3 8001e98: bd80 pop {r7, pc} 8001e9a: bf00 nop 8001e9c: 40023c00 .word 0x40023c00 08001ea0 : 8001ea0: b580 push {r7, lr} 8001ea2: b082 sub sp, #8 8001ea4: af00 add r7, sp, #0 8001ea6: 6078 str r0, [r7, #4] 8001ea8: 4b12 ldr r3, [pc, #72] @ (8001ef4 ) 8001eaa: 681a ldr r2, [r3, #0] 8001eac: 4b12 ldr r3, [pc, #72] @ (8001ef8 ) 8001eae: 781b ldrb r3, [r3, #0] 8001eb0: 4619 mov r1, r3 8001eb2: f44f 737a mov.w r3, #1000 @ 0x3e8 8001eb6: fbb3 f3f1 udiv r3, r3, r1 8001eba: fbb2 f3f3 udiv r3, r2, r3 8001ebe: 4618 mov r0, r3 8001ec0: f000 f967 bl 8002192 8001ec4: 4603 mov r3, r0 8001ec6: 2b00 cmp r3, #0 8001ec8: d001 beq.n 8001ece 8001eca: 2301 movs r3, #1 8001ecc: e00e b.n 8001eec 8001ece: 687b ldr r3, [r7, #4] 8001ed0: 2b0f cmp r3, #15 8001ed2: d80a bhi.n 8001eea 8001ed4: 2200 movs r2, #0 8001ed6: 6879 ldr r1, [r7, #4] 8001ed8: f04f 30ff mov.w r0, #4294967295 @ 0xffffffff 8001edc: f000 f92f bl 800213e 8001ee0: 4a06 ldr r2, [pc, #24] @ (8001efc ) 8001ee2: 687b ldr r3, [r7, #4] 8001ee4: 6013 str r3, [r2, #0] 8001ee6: 2300 movs r3, #0 8001ee8: e000 b.n 8001eec 8001eea: 2301 movs r3, #1 8001eec: 4618 mov r0, r3 8001eee: 3708 adds r7, #8 8001ef0: 46bd mov sp, r7 8001ef2: bd80 pop {r7, pc} 8001ef4: 20000090 .word 0x20000090 8001ef8: 20000098 .word 0x20000098 8001efc: 20000094 .word 0x20000094 08001f00 : 8001f00: b480 push {r7} 8001f02: af00 add r7, sp, #0 8001f04: 4b06 ldr r3, [pc, #24] @ (8001f20 ) 8001f06: 781b ldrb r3, [r3, #0] 8001f08: 461a mov r2, r3 8001f0a: 4b06 ldr r3, [pc, #24] @ (8001f24 ) 8001f0c: 681b ldr r3, [r3, #0] 8001f0e: 4413 add r3, r2 8001f10: 4a04 ldr r2, [pc, #16] @ (8001f24 ) 8001f12: 6013 str r3, [r2, #0] 8001f14: bf00 nop 8001f16: 46bd mov sp, r7 8001f18: f85d 7b04 ldr.w r7, [sp], #4 8001f1c: 4770 bx lr 8001f1e: bf00 nop 8001f20: 20000098 .word 0x20000098 8001f24: 20000d80 .word 0x20000d80 08001f28 : 8001f28: b480 push {r7} 8001f2a: af00 add r7, sp, #0 8001f2c: 4b03 ldr r3, [pc, #12] @ (8001f3c ) 8001f2e: 681b ldr r3, [r3, #0] 8001f30: 4618 mov r0, r3 8001f32: 46bd mov sp, r7 8001f34: f85d 7b04 ldr.w r7, [sp], #4 8001f38: 4770 bx lr 8001f3a: bf00 nop 8001f3c: 20000d80 .word 0x20000d80 08001f40 : 8001f40: b580 push {r7, lr} 8001f42: b084 sub sp, #16 8001f44: af00 add r7, sp, #0 8001f46: 6078 str r0, [r7, #4] 8001f48: f7ff ffee bl 8001f28 8001f4c: 60b8 str r0, [r7, #8] 8001f4e: 687b ldr r3, [r7, #4] 8001f50: 60fb str r3, [r7, #12] 8001f52: 68fb ldr r3, [r7, #12] 8001f54: f1b3 3fff cmp.w r3, #4294967295 @ 0xffffffff 8001f58: d005 beq.n 8001f66 8001f5a: 4b0a ldr r3, [pc, #40] @ (8001f84 ) 8001f5c: 781b ldrb r3, [r3, #0] 8001f5e: 461a mov r2, r3 8001f60: 68fb ldr r3, [r7, #12] 8001f62: 4413 add r3, r2 8001f64: 60fb str r3, [r7, #12] 8001f66: bf00 nop 8001f68: f7ff ffde bl 8001f28 8001f6c: 4602 mov r2, r0 8001f6e: 68bb ldr r3, [r7, #8] 8001f70: 1ad3 subs r3, r2, r3 8001f72: 68fa ldr r2, [r7, #12] 8001f74: 429a cmp r2, r3 8001f76: d8f7 bhi.n 8001f68 8001f78: bf00 nop 8001f7a: bf00 nop 8001f7c: 3710 adds r7, #16 8001f7e: 46bd mov sp, r7 8001f80: bd80 pop {r7, pc} 8001f82: bf00 nop 8001f84: 20000098 .word 0x20000098 08001f88 <__NVIC_SetPriorityGrouping>: 8001f88: b480 push {r7} 8001f8a: b085 sub sp, #20 8001f8c: af00 add r7, sp, #0 8001f8e: 6078 str r0, [r7, #4] 8001f90: 687b ldr r3, [r7, #4] 8001f92: f003 0307 and.w r3, r3, #7 8001f96: 60fb str r3, [r7, #12] 8001f98: 4b0c ldr r3, [pc, #48] @ (8001fcc <__NVIC_SetPriorityGrouping+0x44>) 8001f9a: 68db ldr r3, [r3, #12] 8001f9c: 60bb str r3, [r7, #8] 8001f9e: 68ba ldr r2, [r7, #8] 8001fa0: f64f 03ff movw r3, #63743 @ 0xf8ff 8001fa4: 4013 ands r3, r2 8001fa6: 60bb str r3, [r7, #8] 8001fa8: 68fb ldr r3, [r7, #12] 8001faa: 021a lsls r2, r3, #8 8001fac: 68bb ldr r3, [r7, #8] 8001fae: 4313 orrs r3, r2 8001fb0: f043 63bf orr.w r3, r3, #100139008 @ 0x5f80000 8001fb4: f443 3300 orr.w r3, r3, #131072 @ 0x20000 8001fb8: 60bb str r3, [r7, #8] 8001fba: 4a04 ldr r2, [pc, #16] @ (8001fcc <__NVIC_SetPriorityGrouping+0x44>) 8001fbc: 68bb ldr r3, [r7, #8] 8001fbe: 60d3 str r3, [r2, #12] 8001fc0: bf00 nop 8001fc2: 3714 adds r7, #20 8001fc4: 46bd mov sp, r7 8001fc6: f85d 7b04 ldr.w r7, [sp], #4 8001fca: 4770 bx lr 8001fcc: e000ed00 .word 0xe000ed00 08001fd0 <__NVIC_GetPriorityGrouping>: 8001fd0: b480 push {r7} 8001fd2: af00 add r7, sp, #0 8001fd4: 4b04 ldr r3, [pc, #16] @ (8001fe8 <__NVIC_GetPriorityGrouping+0x18>) 8001fd6: 68db ldr r3, [r3, #12] 8001fd8: 0a1b lsrs r3, r3, #8 8001fda: f003 0307 and.w r3, r3, #7 8001fde: 4618 mov r0, r3 8001fe0: 46bd mov sp, r7 8001fe2: f85d 7b04 ldr.w r7, [sp], #4 8001fe6: 4770 bx lr 8001fe8: e000ed00 .word 0xe000ed00 08001fec <__NVIC_EnableIRQ>: 8001fec: b480 push {r7} 8001fee: b083 sub sp, #12 8001ff0: af00 add r7, sp, #0 8001ff2: 4603 mov r3, r0 8001ff4: 71fb strb r3, [r7, #7] 8001ff6: f997 3007 ldrsb.w r3, [r7, #7] 8001ffa: 2b00 cmp r3, #0 8001ffc: db0b blt.n 8002016 <__NVIC_EnableIRQ+0x2a> 8001ffe: 79fb ldrb r3, [r7, #7] 8002000: f003 021f and.w r2, r3, #31 8002004: 4907 ldr r1, [pc, #28] @ (8002024 <__NVIC_EnableIRQ+0x38>) 8002006: f997 3007 ldrsb.w r3, [r7, #7] 800200a: 095b lsrs r3, r3, #5 800200c: 2001 movs r0, #1 800200e: fa00 f202 lsl.w r2, r0, r2 8002012: f841 2023 str.w r2, [r1, r3, lsl #2] 8002016: bf00 nop 8002018: 370c adds r7, #12 800201a: 46bd mov sp, r7 800201c: f85d 7b04 ldr.w r7, [sp], #4 8002020: 4770 bx lr 8002022: bf00 nop 8002024: e000e100 .word 0xe000e100 08002028 <__NVIC_SetPriority>: 8002028: b480 push {r7} 800202a: b083 sub sp, #12 800202c: af00 add r7, sp, #0 800202e: 4603 mov r3, r0 8002030: 6039 str r1, [r7, #0] 8002032: 71fb strb r3, [r7, #7] 8002034: f997 3007 ldrsb.w r3, [r7, #7] 8002038: 2b00 cmp r3, #0 800203a: db0a blt.n 8002052 <__NVIC_SetPriority+0x2a> 800203c: 683b ldr r3, [r7, #0] 800203e: b2da uxtb r2, r3 8002040: 490c ldr r1, [pc, #48] @ (8002074 <__NVIC_SetPriority+0x4c>) 8002042: f997 3007 ldrsb.w r3, [r7, #7] 8002046: 0112 lsls r2, r2, #4 8002048: b2d2 uxtb r2, r2 800204a: 440b add r3, r1 800204c: f883 2300 strb.w r2, [r3, #768] @ 0x300 8002050: e00a b.n 8002068 <__NVIC_SetPriority+0x40> 8002052: 683b ldr r3, [r7, #0] 8002054: b2da uxtb r2, r3 8002056: 4908 ldr r1, [pc, #32] @ (8002078 <__NVIC_SetPriority+0x50>) 8002058: 79fb ldrb r3, [r7, #7] 800205a: f003 030f and.w r3, r3, #15 800205e: 3b04 subs r3, #4 8002060: 0112 lsls r2, r2, #4 8002062: b2d2 uxtb r2, r2 8002064: 440b add r3, r1 8002066: 761a strb r2, [r3, #24] 8002068: bf00 nop 800206a: 370c adds r7, #12 800206c: 46bd mov sp, r7 800206e: f85d 7b04 ldr.w r7, [sp], #4 8002072: 4770 bx lr 8002074: e000e100 .word 0xe000e100 8002078: e000ed00 .word 0xe000ed00 0800207c : 800207c: b480 push {r7} 800207e: b089 sub sp, #36 @ 0x24 8002080: af00 add r7, sp, #0 8002082: 60f8 str r0, [r7, #12] 8002084: 60b9 str r1, [r7, #8] 8002086: 607a str r2, [r7, #4] 8002088: 68fb ldr r3, [r7, #12] 800208a: f003 0307 and.w r3, r3, #7 800208e: 61fb str r3, [r7, #28] 8002090: 69fb ldr r3, [r7, #28] 8002092: f1c3 0307 rsb r3, r3, #7 8002096: 2b04 cmp r3, #4 8002098: bf28 it cs 800209a: 2304 movcs r3, #4 800209c: 61bb str r3, [r7, #24] 800209e: 69fb ldr r3, [r7, #28] 80020a0: 3304 adds r3, #4 80020a2: 2b06 cmp r3, #6 80020a4: d902 bls.n 80020ac 80020a6: 69fb ldr r3, [r7, #28] 80020a8: 3b03 subs r3, #3 80020aa: e000 b.n 80020ae 80020ac: 2300 movs r3, #0 80020ae: 617b str r3, [r7, #20] 80020b0: f04f 32ff mov.w r2, #4294967295 @ 0xffffffff 80020b4: 69bb ldr r3, [r7, #24] 80020b6: fa02 f303 lsl.w r3, r2, r3 80020ba: 43da mvns r2, r3 80020bc: 68bb ldr r3, [r7, #8] 80020be: 401a ands r2, r3 80020c0: 697b ldr r3, [r7, #20] 80020c2: 409a lsls r2, r3 80020c4: f04f 31ff mov.w r1, #4294967295 @ 0xffffffff 80020c8: 697b ldr r3, [r7, #20] 80020ca: fa01 f303 lsl.w r3, r1, r3 80020ce: 43d9 mvns r1, r3 80020d0: 687b ldr r3, [r7, #4] 80020d2: 400b ands r3, r1 80020d4: 4313 orrs r3, r2 80020d6: 4618 mov r0, r3 80020d8: 3724 adds r7, #36 @ 0x24 80020da: 46bd mov sp, r7 80020dc: f85d 7b04 ldr.w r7, [sp], #4 80020e0: 4770 bx lr ... 080020e4 : 80020e4: b580 push {r7, lr} 80020e6: b082 sub sp, #8 80020e8: af00 add r7, sp, #0 80020ea: 6078 str r0, [r7, #4] 80020ec: 687b ldr r3, [r7, #4] 80020ee: 3b01 subs r3, #1 80020f0: f1b3 7f80 cmp.w r3, #16777216 @ 0x1000000 80020f4: d301 bcc.n 80020fa 80020f6: 2301 movs r3, #1 80020f8: e00f b.n 800211a 80020fa: 4a0a ldr r2, [pc, #40] @ (8002124 ) 80020fc: 687b ldr r3, [r7, #4] 80020fe: 3b01 subs r3, #1 8002100: 6053 str r3, [r2, #4] 8002102: 210f movs r1, #15 8002104: f04f 30ff mov.w r0, #4294967295 @ 0xffffffff 8002108: f7ff ff8e bl 8002028 <__NVIC_SetPriority> 800210c: 4b05 ldr r3, [pc, #20] @ (8002124 ) 800210e: 2200 movs r2, #0 8002110: 609a str r2, [r3, #8] 8002112: 4b04 ldr r3, [pc, #16] @ (8002124 ) 8002114: 2207 movs r2, #7 8002116: 601a str r2, [r3, #0] 8002118: 2300 movs r3, #0 800211a: 4618 mov r0, r3 800211c: 3708 adds r7, #8 800211e: 46bd mov sp, r7 8002120: bd80 pop {r7, pc} 8002122: bf00 nop 8002124: e000e010 .word 0xe000e010 08002128 : 8002128: b580 push {r7, lr} 800212a: b082 sub sp, #8 800212c: af00 add r7, sp, #0 800212e: 6078 str r0, [r7, #4] 8002130: 6878 ldr r0, [r7, #4] 8002132: f7ff ff29 bl 8001f88 <__NVIC_SetPriorityGrouping> 8002136: bf00 nop 8002138: 3708 adds r7, #8 800213a: 46bd mov sp, r7 800213c: bd80 pop {r7, pc} 0800213e : 800213e: b580 push {r7, lr} 8002140: b086 sub sp, #24 8002142: af00 add r7, sp, #0 8002144: 4603 mov r3, r0 8002146: 60b9 str r1, [r7, #8] 8002148: 607a str r2, [r7, #4] 800214a: 73fb strb r3, [r7, #15] 800214c: 2300 movs r3, #0 800214e: 617b str r3, [r7, #20] 8002150: f7ff ff3e bl 8001fd0 <__NVIC_GetPriorityGrouping> 8002154: 6178 str r0, [r7, #20] 8002156: 687a ldr r2, [r7, #4] 8002158: 68b9 ldr r1, [r7, #8] 800215a: 6978 ldr r0, [r7, #20] 800215c: f7ff ff8e bl 800207c 8002160: 4602 mov r2, r0 8002162: f997 300f ldrsb.w r3, [r7, #15] 8002166: 4611 mov r1, r2 8002168: 4618 mov r0, r3 800216a: f7ff ff5d bl 8002028 <__NVIC_SetPriority> 800216e: bf00 nop 8002170: 3718 adds r7, #24 8002172: 46bd mov sp, r7 8002174: bd80 pop {r7, pc} 08002176 : 8002176: b580 push {r7, lr} 8002178: b082 sub sp, #8 800217a: af00 add r7, sp, #0 800217c: 4603 mov r3, r0 800217e: 71fb strb r3, [r7, #7] 8002180: f997 3007 ldrsb.w r3, [r7, #7] 8002184: 4618 mov r0, r3 8002186: f7ff ff31 bl 8001fec <__NVIC_EnableIRQ> 800218a: bf00 nop 800218c: 3708 adds r7, #8 800218e: 46bd mov sp, r7 8002190: bd80 pop {r7, pc} 08002192 : 8002192: b580 push {r7, lr} 8002194: b082 sub sp, #8 8002196: af00 add r7, sp, #0 8002198: 6078 str r0, [r7, #4] 800219a: 6878 ldr r0, [r7, #4] 800219c: f7ff ffa2 bl 80020e4 80021a0: 4603 mov r3, r0 80021a2: 4618 mov r0, r3 80021a4: 3708 adds r7, #8 80021a6: 46bd mov sp, r7 80021a8: bd80 pop {r7, pc} ... 080021ac : 80021ac: b580 push {r7, lr} 80021ae: b086 sub sp, #24 80021b0: af00 add r7, sp, #0 80021b2: 6078 str r0, [r7, #4] 80021b4: 2300 movs r3, #0 80021b6: 617b str r3, [r7, #20] 80021b8: f7ff feb6 bl 8001f28 80021bc: 6138 str r0, [r7, #16] 80021be: 687b ldr r3, [r7, #4] 80021c0: 2b00 cmp r3, #0 80021c2: d101 bne.n 80021c8 80021c4: 2301 movs r3, #1 80021c6: e099 b.n 80022fc 80021c8: 687b ldr r3, [r7, #4] 80021ca: 2202 movs r2, #2 80021cc: f883 2035 strb.w r2, [r3, #53] @ 0x35 80021d0: 687b ldr r3, [r7, #4] 80021d2: 2200 movs r2, #0 80021d4: f883 2034 strb.w r2, [r3, #52] @ 0x34 80021d8: 687b ldr r3, [r7, #4] 80021da: 681b ldr r3, [r3, #0] 80021dc: 681a ldr r2, [r3, #0] 80021de: 687b ldr r3, [r7, #4] 80021e0: 681b ldr r3, [r3, #0] 80021e2: f022 0201 bic.w r2, r2, #1 80021e6: 601a str r2, [r3, #0] 80021e8: e00f b.n 800220a 80021ea: f7ff fe9d bl 8001f28 80021ee: 4602 mov r2, r0 80021f0: 693b ldr r3, [r7, #16] 80021f2: 1ad3 subs r3, r2, r3 80021f4: 2b05 cmp r3, #5 80021f6: d908 bls.n 800220a 80021f8: 687b ldr r3, [r7, #4] 80021fa: 2220 movs r2, #32 80021fc: 655a str r2, [r3, #84] @ 0x54 80021fe: 687b ldr r3, [r7, #4] 8002200: 2203 movs r2, #3 8002202: f883 2035 strb.w r2, [r3, #53] @ 0x35 8002206: 2303 movs r3, #3 8002208: e078 b.n 80022fc 800220a: 687b ldr r3, [r7, #4] 800220c: 681b ldr r3, [r3, #0] 800220e: 681b ldr r3, [r3, #0] 8002210: f003 0301 and.w r3, r3, #1 8002214: 2b00 cmp r3, #0 8002216: d1e8 bne.n 80021ea 8002218: 687b ldr r3, [r7, #4] 800221a: 681b ldr r3, [r3, #0] 800221c: 681b ldr r3, [r3, #0] 800221e: 617b str r3, [r7, #20] 8002220: 697a ldr r2, [r7, #20] 8002222: 4b38 ldr r3, [pc, #224] @ (8002304 ) 8002224: 4013 ands r3, r2 8002226: 617b str r3, [r7, #20] 8002228: 687b ldr r3, [r7, #4] 800222a: 685a ldr r2, [r3, #4] 800222c: 687b ldr r3, [r7, #4] 800222e: 689b ldr r3, [r3, #8] 8002230: 431a orrs r2, r3 8002232: 687b ldr r3, [r7, #4] 8002234: 68db ldr r3, [r3, #12] 8002236: 431a orrs r2, r3 8002238: 687b ldr r3, [r7, #4] 800223a: 691b ldr r3, [r3, #16] 800223c: 431a orrs r2, r3 800223e: 687b ldr r3, [r7, #4] 8002240: 695b ldr r3, [r3, #20] 8002242: 431a orrs r2, r3 8002244: 687b ldr r3, [r7, #4] 8002246: 699b ldr r3, [r3, #24] 8002248: 431a orrs r2, r3 800224a: 687b ldr r3, [r7, #4] 800224c: 69db ldr r3, [r3, #28] 800224e: 431a orrs r2, r3 8002250: 687b ldr r3, [r7, #4] 8002252: 6a1b ldr r3, [r3, #32] 8002254: 4313 orrs r3, r2 8002256: 697a ldr r2, [r7, #20] 8002258: 4313 orrs r3, r2 800225a: 617b str r3, [r7, #20] 800225c: 687b ldr r3, [r7, #4] 800225e: 6a5b ldr r3, [r3, #36] @ 0x24 8002260: 2b04 cmp r3, #4 8002262: d107 bne.n 8002274 8002264: 687b ldr r3, [r7, #4] 8002266: 6ada ldr r2, [r3, #44] @ 0x2c 8002268: 687b ldr r3, [r7, #4] 800226a: 6b1b ldr r3, [r3, #48] @ 0x30 800226c: 4313 orrs r3, r2 800226e: 697a ldr r2, [r7, #20] 8002270: 4313 orrs r3, r2 8002272: 617b str r3, [r7, #20] 8002274: 687b ldr r3, [r7, #4] 8002276: 681b ldr r3, [r3, #0] 8002278: 697a ldr r2, [r7, #20] 800227a: 601a str r2, [r3, #0] 800227c: 687b ldr r3, [r7, #4] 800227e: 681b ldr r3, [r3, #0] 8002280: 695b ldr r3, [r3, #20] 8002282: 617b str r3, [r7, #20] 8002284: 697b ldr r3, [r7, #20] 8002286: f023 0307 bic.w r3, r3, #7 800228a: 617b str r3, [r7, #20] 800228c: 687b ldr r3, [r7, #4] 800228e: 6a5b ldr r3, [r3, #36] @ 0x24 8002290: 697a ldr r2, [r7, #20] 8002292: 4313 orrs r3, r2 8002294: 617b str r3, [r7, #20] 8002296: 687b ldr r3, [r7, #4] 8002298: 6a5b ldr r3, [r3, #36] @ 0x24 800229a: 2b04 cmp r3, #4 800229c: d117 bne.n 80022ce 800229e: 687b ldr r3, [r7, #4] 80022a0: 6a9b ldr r3, [r3, #40] @ 0x28 80022a2: 697a ldr r2, [r7, #20] 80022a4: 4313 orrs r3, r2 80022a6: 617b str r3, [r7, #20] 80022a8: 687b ldr r3, [r7, #4] 80022aa: 6adb ldr r3, [r3, #44] @ 0x2c 80022ac: 2b00 cmp r3, #0 80022ae: d00e beq.n 80022ce 80022b0: 6878 ldr r0, [r7, #4] 80022b2: f000 fb01 bl 80028b8 80022b6: 4603 mov r3, r0 80022b8: 2b00 cmp r3, #0 80022ba: d008 beq.n 80022ce 80022bc: 687b ldr r3, [r7, #4] 80022be: 2240 movs r2, #64 @ 0x40 80022c0: 655a str r2, [r3, #84] @ 0x54 80022c2: 687b ldr r3, [r7, #4] 80022c4: 2201 movs r2, #1 80022c6: f883 2035 strb.w r2, [r3, #53] @ 0x35 80022ca: 2301 movs r3, #1 80022cc: e016 b.n 80022fc 80022ce: 687b ldr r3, [r7, #4] 80022d0: 681b ldr r3, [r3, #0] 80022d2: 697a ldr r2, [r7, #20] 80022d4: 615a str r2, [r3, #20] 80022d6: 6878 ldr r0, [r7, #4] 80022d8: f000 fab8 bl 800284c 80022dc: 4603 mov r3, r0 80022de: 60fb str r3, [r7, #12] 80022e0: 687b ldr r3, [r7, #4] 80022e2: 6ddb ldr r3, [r3, #92] @ 0x5c 80022e4: 223f movs r2, #63 @ 0x3f 80022e6: 409a lsls r2, r3 80022e8: 68fb ldr r3, [r7, #12] 80022ea: 609a str r2, [r3, #8] 80022ec: 687b ldr r3, [r7, #4] 80022ee: 2200 movs r2, #0 80022f0: 655a str r2, [r3, #84] @ 0x54 80022f2: 687b ldr r3, [r7, #4] 80022f4: 2201 movs r2, #1 80022f6: f883 2035 strb.w r2, [r3, #53] @ 0x35 80022fa: 2300 movs r3, #0 80022fc: 4618 mov r0, r3 80022fe: 3718 adds r7, #24 8002300: 46bd mov sp, r7 8002302: bd80 pop {r7, pc} 8002304: f010803f .word 0xf010803f 08002308 : 8002308: b580 push {r7, lr} 800230a: b086 sub sp, #24 800230c: af00 add r7, sp, #0 800230e: 60f8 str r0, [r7, #12] 8002310: 60b9 str r1, [r7, #8] 8002312: 607a str r2, [r7, #4] 8002314: 603b str r3, [r7, #0] 8002316: 2300 movs r3, #0 8002318: 75fb strb r3, [r7, #23] 800231a: 68fb ldr r3, [r7, #12] 800231c: 6d9b ldr r3, [r3, #88] @ 0x58 800231e: 613b str r3, [r7, #16] 8002320: 68fb ldr r3, [r7, #12] 8002322: f893 3034 ldrb.w r3, [r3, #52] @ 0x34 8002326: 2b01 cmp r3, #1 8002328: d101 bne.n 800232e 800232a: 2302 movs r3, #2 800232c: e040 b.n 80023b0 800232e: 68fb ldr r3, [r7, #12] 8002330: 2201 movs r2, #1 8002332: f883 2034 strb.w r2, [r3, #52] @ 0x34 8002336: 68fb ldr r3, [r7, #12] 8002338: f893 3035 ldrb.w r3, [r3, #53] @ 0x35 800233c: b2db uxtb r3, r3 800233e: 2b01 cmp r3, #1 8002340: d12f bne.n 80023a2 8002342: 68fb ldr r3, [r7, #12] 8002344: 2202 movs r2, #2 8002346: f883 2035 strb.w r2, [r3, #53] @ 0x35 800234a: 68fb ldr r3, [r7, #12] 800234c: 2200 movs r2, #0 800234e: 655a str r2, [r3, #84] @ 0x54 8002350: 683b ldr r3, [r7, #0] 8002352: 687a ldr r2, [r7, #4] 8002354: 68b9 ldr r1, [r7, #8] 8002356: 68f8 ldr r0, [r7, #12] 8002358: f000 fa4a bl 80027f0 800235c: 68fb ldr r3, [r7, #12] 800235e: 6ddb ldr r3, [r3, #92] @ 0x5c 8002360: 223f movs r2, #63 @ 0x3f 8002362: 409a lsls r2, r3 8002364: 693b ldr r3, [r7, #16] 8002366: 609a str r2, [r3, #8] 8002368: 68fb ldr r3, [r7, #12] 800236a: 681b ldr r3, [r3, #0] 800236c: 681a ldr r2, [r3, #0] 800236e: 68fb ldr r3, [r7, #12] 8002370: 681b ldr r3, [r3, #0] 8002372: f042 0216 orr.w r2, r2, #22 8002376: 601a str r2, [r3, #0] 8002378: 68fb ldr r3, [r7, #12] 800237a: 6c1b ldr r3, [r3, #64] @ 0x40 800237c: 2b00 cmp r3, #0 800237e: d007 beq.n 8002390 8002380: 68fb ldr r3, [r7, #12] 8002382: 681b ldr r3, [r3, #0] 8002384: 681a ldr r2, [r3, #0] 8002386: 68fb ldr r3, [r7, #12] 8002388: 681b ldr r3, [r3, #0] 800238a: f042 0208 orr.w r2, r2, #8 800238e: 601a str r2, [r3, #0] 8002390: 68fb ldr r3, [r7, #12] 8002392: 681b ldr r3, [r3, #0] 8002394: 681a ldr r2, [r3, #0] 8002396: 68fb ldr r3, [r7, #12] 8002398: 681b ldr r3, [r3, #0] 800239a: f042 0201 orr.w r2, r2, #1 800239e: 601a str r2, [r3, #0] 80023a0: e005 b.n 80023ae 80023a2: 68fb ldr r3, [r7, #12] 80023a4: 2200 movs r2, #0 80023a6: f883 2034 strb.w r2, [r3, #52] @ 0x34 80023aa: 2302 movs r3, #2 80023ac: 75fb strb r3, [r7, #23] 80023ae: 7dfb ldrb r3, [r7, #23] 80023b0: 4618 mov r0, r3 80023b2: 3718 adds r7, #24 80023b4: 46bd mov sp, r7 80023b6: bd80 pop {r7, pc} 080023b8 : 80023b8: b580 push {r7, lr} 80023ba: b084 sub sp, #16 80023bc: af00 add r7, sp, #0 80023be: 6078 str r0, [r7, #4] 80023c0: 687b ldr r3, [r7, #4] 80023c2: 6d9b ldr r3, [r3, #88] @ 0x58 80023c4: 60fb str r3, [r7, #12] 80023c6: f7ff fdaf bl 8001f28 80023ca: 60b8 str r0, [r7, #8] 80023cc: 687b ldr r3, [r7, #4] 80023ce: f893 3035 ldrb.w r3, [r3, #53] @ 0x35 80023d2: b2db uxtb r3, r3 80023d4: 2b02 cmp r3, #2 80023d6: d008 beq.n 80023ea 80023d8: 687b ldr r3, [r7, #4] 80023da: 2280 movs r2, #128 @ 0x80 80023dc: 655a str r2, [r3, #84] @ 0x54 80023de: 687b ldr r3, [r7, #4] 80023e0: 2200 movs r2, #0 80023e2: f883 2034 strb.w r2, [r3, #52] @ 0x34 80023e6: 2301 movs r3, #1 80023e8: e052 b.n 8002490 80023ea: 687b ldr r3, [r7, #4] 80023ec: 681b ldr r3, [r3, #0] 80023ee: 681a ldr r2, [r3, #0] 80023f0: 687b ldr r3, [r7, #4] 80023f2: 681b ldr r3, [r3, #0] 80023f4: f022 0216 bic.w r2, r2, #22 80023f8: 601a str r2, [r3, #0] 80023fa: 687b ldr r3, [r7, #4] 80023fc: 681b ldr r3, [r3, #0] 80023fe: 695a ldr r2, [r3, #20] 8002400: 687b ldr r3, [r7, #4] 8002402: 681b ldr r3, [r3, #0] 8002404: f022 0280 bic.w r2, r2, #128 @ 0x80 8002408: 615a str r2, [r3, #20] 800240a: 687b ldr r3, [r7, #4] 800240c: 6c1b ldr r3, [r3, #64] @ 0x40 800240e: 2b00 cmp r3, #0 8002410: d103 bne.n 800241a 8002412: 687b ldr r3, [r7, #4] 8002414: 6c9b ldr r3, [r3, #72] @ 0x48 8002416: 2b00 cmp r3, #0 8002418: d007 beq.n 800242a 800241a: 687b ldr r3, [r7, #4] 800241c: 681b ldr r3, [r3, #0] 800241e: 681a ldr r2, [r3, #0] 8002420: 687b ldr r3, [r7, #4] 8002422: 681b ldr r3, [r3, #0] 8002424: f022 0208 bic.w r2, r2, #8 8002428: 601a str r2, [r3, #0] 800242a: 687b ldr r3, [r7, #4] 800242c: 681b ldr r3, [r3, #0] 800242e: 681a ldr r2, [r3, #0] 8002430: 687b ldr r3, [r7, #4] 8002432: 681b ldr r3, [r3, #0] 8002434: f022 0201 bic.w r2, r2, #1 8002438: 601a str r2, [r3, #0] 800243a: e013 b.n 8002464 800243c: f7ff fd74 bl 8001f28 8002440: 4602 mov r2, r0 8002442: 68bb ldr r3, [r7, #8] 8002444: 1ad3 subs r3, r2, r3 8002446: 2b05 cmp r3, #5 8002448: d90c bls.n 8002464 800244a: 687b ldr r3, [r7, #4] 800244c: 2220 movs r2, #32 800244e: 655a str r2, [r3, #84] @ 0x54 8002450: 687b ldr r3, [r7, #4] 8002452: 2203 movs r2, #3 8002454: f883 2035 strb.w r2, [r3, #53] @ 0x35 8002458: 687b ldr r3, [r7, #4] 800245a: 2200 movs r2, #0 800245c: f883 2034 strb.w r2, [r3, #52] @ 0x34 8002460: 2303 movs r3, #3 8002462: e015 b.n 8002490 8002464: 687b ldr r3, [r7, #4] 8002466: 681b ldr r3, [r3, #0] 8002468: 681b ldr r3, [r3, #0] 800246a: f003 0301 and.w r3, r3, #1 800246e: 2b00 cmp r3, #0 8002470: d1e4 bne.n 800243c 8002472: 687b ldr r3, [r7, #4] 8002474: 6ddb ldr r3, [r3, #92] @ 0x5c 8002476: 223f movs r2, #63 @ 0x3f 8002478: 409a lsls r2, r3 800247a: 68fb ldr r3, [r7, #12] 800247c: 609a str r2, [r3, #8] 800247e: 687b ldr r3, [r7, #4] 8002480: 2201 movs r2, #1 8002482: f883 2035 strb.w r2, [r3, #53] @ 0x35 8002486: 687b ldr r3, [r7, #4] 8002488: 2200 movs r2, #0 800248a: f883 2034 strb.w r2, [r3, #52] @ 0x34 800248e: 2300 movs r3, #0 8002490: 4618 mov r0, r3 8002492: 3710 adds r7, #16 8002494: 46bd mov sp, r7 8002496: bd80 pop {r7, pc} 08002498 : 8002498: b480 push {r7} 800249a: b083 sub sp, #12 800249c: af00 add r7, sp, #0 800249e: 6078 str r0, [r7, #4] 80024a0: 687b ldr r3, [r7, #4] 80024a2: f893 3035 ldrb.w r3, [r3, #53] @ 0x35 80024a6: b2db uxtb r3, r3 80024a8: 2b02 cmp r3, #2 80024aa: d004 beq.n 80024b6 80024ac: 687b ldr r3, [r7, #4] 80024ae: 2280 movs r2, #128 @ 0x80 80024b0: 655a str r2, [r3, #84] @ 0x54 80024b2: 2301 movs r3, #1 80024b4: e00c b.n 80024d0 80024b6: 687b ldr r3, [r7, #4] 80024b8: 2205 movs r2, #5 80024ba: f883 2035 strb.w r2, [r3, #53] @ 0x35 80024be: 687b ldr r3, [r7, #4] 80024c0: 681b ldr r3, [r3, #0] 80024c2: 681a ldr r2, [r3, #0] 80024c4: 687b ldr r3, [r7, #4] 80024c6: 681b ldr r3, [r3, #0] 80024c8: f022 0201 bic.w r2, r2, #1 80024cc: 601a str r2, [r3, #0] 80024ce: 2300 movs r3, #0 80024d0: 4618 mov r0, r3 80024d2: 370c adds r7, #12 80024d4: 46bd mov sp, r7 80024d6: f85d 7b04 ldr.w r7, [sp], #4 80024da: 4770 bx lr 080024dc : 80024dc: b580 push {r7, lr} 80024de: b086 sub sp, #24 80024e0: af00 add r7, sp, #0 80024e2: 6078 str r0, [r7, #4] 80024e4: 2300 movs r3, #0 80024e6: 60bb str r3, [r7, #8] 80024e8: 4b8e ldr r3, [pc, #568] @ (8002724 ) 80024ea: 681b ldr r3, [r3, #0] 80024ec: 4a8e ldr r2, [pc, #568] @ (8002728 ) 80024ee: fba2 2303 umull r2, r3, r2, r3 80024f2: 0a9b lsrs r3, r3, #10 80024f4: 617b str r3, [r7, #20] 80024f6: 687b ldr r3, [r7, #4] 80024f8: 6d9b ldr r3, [r3, #88] @ 0x58 80024fa: 613b str r3, [r7, #16] 80024fc: 693b ldr r3, [r7, #16] 80024fe: 681b ldr r3, [r3, #0] 8002500: 60fb str r3, [r7, #12] 8002502: 687b ldr r3, [r7, #4] 8002504: 6ddb ldr r3, [r3, #92] @ 0x5c 8002506: 2208 movs r2, #8 8002508: 409a lsls r2, r3 800250a: 68fb ldr r3, [r7, #12] 800250c: 4013 ands r3, r2 800250e: 2b00 cmp r3, #0 8002510: d01a beq.n 8002548 8002512: 687b ldr r3, [r7, #4] 8002514: 681b ldr r3, [r3, #0] 8002516: 681b ldr r3, [r3, #0] 8002518: f003 0304 and.w r3, r3, #4 800251c: 2b00 cmp r3, #0 800251e: d013 beq.n 8002548 8002520: 687b ldr r3, [r7, #4] 8002522: 681b ldr r3, [r3, #0] 8002524: 681a ldr r2, [r3, #0] 8002526: 687b ldr r3, [r7, #4] 8002528: 681b ldr r3, [r3, #0] 800252a: f022 0204 bic.w r2, r2, #4 800252e: 601a str r2, [r3, #0] 8002530: 687b ldr r3, [r7, #4] 8002532: 6ddb ldr r3, [r3, #92] @ 0x5c 8002534: 2208 movs r2, #8 8002536: 409a lsls r2, r3 8002538: 693b ldr r3, [r7, #16] 800253a: 609a str r2, [r3, #8] 800253c: 687b ldr r3, [r7, #4] 800253e: 6d5b ldr r3, [r3, #84] @ 0x54 8002540: f043 0201 orr.w r2, r3, #1 8002544: 687b ldr r3, [r7, #4] 8002546: 655a str r2, [r3, #84] @ 0x54 8002548: 687b ldr r3, [r7, #4] 800254a: 6ddb ldr r3, [r3, #92] @ 0x5c 800254c: 2201 movs r2, #1 800254e: 409a lsls r2, r3 8002550: 68fb ldr r3, [r7, #12] 8002552: 4013 ands r3, r2 8002554: 2b00 cmp r3, #0 8002556: d012 beq.n 800257e 8002558: 687b ldr r3, [r7, #4] 800255a: 681b ldr r3, [r3, #0] 800255c: 695b ldr r3, [r3, #20] 800255e: f003 0380 and.w r3, r3, #128 @ 0x80 8002562: 2b00 cmp r3, #0 8002564: d00b beq.n 800257e 8002566: 687b ldr r3, [r7, #4] 8002568: 6ddb ldr r3, [r3, #92] @ 0x5c 800256a: 2201 movs r2, #1 800256c: 409a lsls r2, r3 800256e: 693b ldr r3, [r7, #16] 8002570: 609a str r2, [r3, #8] 8002572: 687b ldr r3, [r7, #4] 8002574: 6d5b ldr r3, [r3, #84] @ 0x54 8002576: f043 0202 orr.w r2, r3, #2 800257a: 687b ldr r3, [r7, #4] 800257c: 655a str r2, [r3, #84] @ 0x54 800257e: 687b ldr r3, [r7, #4] 8002580: 6ddb ldr r3, [r3, #92] @ 0x5c 8002582: 2204 movs r2, #4 8002584: 409a lsls r2, r3 8002586: 68fb ldr r3, [r7, #12] 8002588: 4013 ands r3, r2 800258a: 2b00 cmp r3, #0 800258c: d012 beq.n 80025b4 800258e: 687b ldr r3, [r7, #4] 8002590: 681b ldr r3, [r3, #0] 8002592: 681b ldr r3, [r3, #0] 8002594: f003 0302 and.w r3, r3, #2 8002598: 2b00 cmp r3, #0 800259a: d00b beq.n 80025b4 800259c: 687b ldr r3, [r7, #4] 800259e: 6ddb ldr r3, [r3, #92] @ 0x5c 80025a0: 2204 movs r2, #4 80025a2: 409a lsls r2, r3 80025a4: 693b ldr r3, [r7, #16] 80025a6: 609a str r2, [r3, #8] 80025a8: 687b ldr r3, [r7, #4] 80025aa: 6d5b ldr r3, [r3, #84] @ 0x54 80025ac: f043 0204 orr.w r2, r3, #4 80025b0: 687b ldr r3, [r7, #4] 80025b2: 655a str r2, [r3, #84] @ 0x54 80025b4: 687b ldr r3, [r7, #4] 80025b6: 6ddb ldr r3, [r3, #92] @ 0x5c 80025b8: 2210 movs r2, #16 80025ba: 409a lsls r2, r3 80025bc: 68fb ldr r3, [r7, #12] 80025be: 4013 ands r3, r2 80025c0: 2b00 cmp r3, #0 80025c2: d043 beq.n 800264c 80025c4: 687b ldr r3, [r7, #4] 80025c6: 681b ldr r3, [r3, #0] 80025c8: 681b ldr r3, [r3, #0] 80025ca: f003 0308 and.w r3, r3, #8 80025ce: 2b00 cmp r3, #0 80025d0: d03c beq.n 800264c 80025d2: 687b ldr r3, [r7, #4] 80025d4: 6ddb ldr r3, [r3, #92] @ 0x5c 80025d6: 2210 movs r2, #16 80025d8: 409a lsls r2, r3 80025da: 693b ldr r3, [r7, #16] 80025dc: 609a str r2, [r3, #8] 80025de: 687b ldr r3, [r7, #4] 80025e0: 681b ldr r3, [r3, #0] 80025e2: 681b ldr r3, [r3, #0] 80025e4: f403 2380 and.w r3, r3, #262144 @ 0x40000 80025e8: 2b00 cmp r3, #0 80025ea: d018 beq.n 800261e 80025ec: 687b ldr r3, [r7, #4] 80025ee: 681b ldr r3, [r3, #0] 80025f0: 681b ldr r3, [r3, #0] 80025f2: f403 2300 and.w r3, r3, #524288 @ 0x80000 80025f6: 2b00 cmp r3, #0 80025f8: d108 bne.n 800260c 80025fa: 687b ldr r3, [r7, #4] 80025fc: 6c1b ldr r3, [r3, #64] @ 0x40 80025fe: 2b00 cmp r3, #0 8002600: d024 beq.n 800264c 8002602: 687b ldr r3, [r7, #4] 8002604: 6c1b ldr r3, [r3, #64] @ 0x40 8002606: 6878 ldr r0, [r7, #4] 8002608: 4798 blx r3 800260a: e01f b.n 800264c 800260c: 687b ldr r3, [r7, #4] 800260e: 6c9b ldr r3, [r3, #72] @ 0x48 8002610: 2b00 cmp r3, #0 8002612: d01b beq.n 800264c 8002614: 687b ldr r3, [r7, #4] 8002616: 6c9b ldr r3, [r3, #72] @ 0x48 8002618: 6878 ldr r0, [r7, #4] 800261a: 4798 blx r3 800261c: e016 b.n 800264c 800261e: 687b ldr r3, [r7, #4] 8002620: 681b ldr r3, [r3, #0] 8002622: 681b ldr r3, [r3, #0] 8002624: f403 7380 and.w r3, r3, #256 @ 0x100 8002628: 2b00 cmp r3, #0 800262a: d107 bne.n 800263c 800262c: 687b ldr r3, [r7, #4] 800262e: 681b ldr r3, [r3, #0] 8002630: 681a ldr r2, [r3, #0] 8002632: 687b ldr r3, [r7, #4] 8002634: 681b ldr r3, [r3, #0] 8002636: f022 0208 bic.w r2, r2, #8 800263a: 601a str r2, [r3, #0] 800263c: 687b ldr r3, [r7, #4] 800263e: 6c1b ldr r3, [r3, #64] @ 0x40 8002640: 2b00 cmp r3, #0 8002642: d003 beq.n 800264c 8002644: 687b ldr r3, [r7, #4] 8002646: 6c1b ldr r3, [r3, #64] @ 0x40 8002648: 6878 ldr r0, [r7, #4] 800264a: 4798 blx r3 800264c: 687b ldr r3, [r7, #4] 800264e: 6ddb ldr r3, [r3, #92] @ 0x5c 8002650: 2220 movs r2, #32 8002652: 409a lsls r2, r3 8002654: 68fb ldr r3, [r7, #12] 8002656: 4013 ands r3, r2 8002658: 2b00 cmp r3, #0 800265a: f000 808f beq.w 800277c 800265e: 687b ldr r3, [r7, #4] 8002660: 681b ldr r3, [r3, #0] 8002662: 681b ldr r3, [r3, #0] 8002664: f003 0310 and.w r3, r3, #16 8002668: 2b00 cmp r3, #0 800266a: f000 8087 beq.w 800277c 800266e: 687b ldr r3, [r7, #4] 8002670: 6ddb ldr r3, [r3, #92] @ 0x5c 8002672: 2220 movs r2, #32 8002674: 409a lsls r2, r3 8002676: 693b ldr r3, [r7, #16] 8002678: 609a str r2, [r3, #8] 800267a: 687b ldr r3, [r7, #4] 800267c: f893 3035 ldrb.w r3, [r3, #53] @ 0x35 8002680: b2db uxtb r3, r3 8002682: 2b05 cmp r3, #5 8002684: d136 bne.n 80026f4 8002686: 687b ldr r3, [r7, #4] 8002688: 681b ldr r3, [r3, #0] 800268a: 681a ldr r2, [r3, #0] 800268c: 687b ldr r3, [r7, #4] 800268e: 681b ldr r3, [r3, #0] 8002690: f022 0216 bic.w r2, r2, #22 8002694: 601a str r2, [r3, #0] 8002696: 687b ldr r3, [r7, #4] 8002698: 681b ldr r3, [r3, #0] 800269a: 695a ldr r2, [r3, #20] 800269c: 687b ldr r3, [r7, #4] 800269e: 681b ldr r3, [r3, #0] 80026a0: f022 0280 bic.w r2, r2, #128 @ 0x80 80026a4: 615a str r2, [r3, #20] 80026a6: 687b ldr r3, [r7, #4] 80026a8: 6c1b ldr r3, [r3, #64] @ 0x40 80026aa: 2b00 cmp r3, #0 80026ac: d103 bne.n 80026b6 80026ae: 687b ldr r3, [r7, #4] 80026b0: 6c9b ldr r3, [r3, #72] @ 0x48 80026b2: 2b00 cmp r3, #0 80026b4: d007 beq.n 80026c6 80026b6: 687b ldr r3, [r7, #4] 80026b8: 681b ldr r3, [r3, #0] 80026ba: 681a ldr r2, [r3, #0] 80026bc: 687b ldr r3, [r7, #4] 80026be: 681b ldr r3, [r3, #0] 80026c0: f022 0208 bic.w r2, r2, #8 80026c4: 601a str r2, [r3, #0] 80026c6: 687b ldr r3, [r7, #4] 80026c8: 6ddb ldr r3, [r3, #92] @ 0x5c 80026ca: 223f movs r2, #63 @ 0x3f 80026cc: 409a lsls r2, r3 80026ce: 693b ldr r3, [r7, #16] 80026d0: 609a str r2, [r3, #8] 80026d2: 687b ldr r3, [r7, #4] 80026d4: 2201 movs r2, #1 80026d6: f883 2035 strb.w r2, [r3, #53] @ 0x35 80026da: 687b ldr r3, [r7, #4] 80026dc: 2200 movs r2, #0 80026de: f883 2034 strb.w r2, [r3, #52] @ 0x34 80026e2: 687b ldr r3, [r7, #4] 80026e4: 6d1b ldr r3, [r3, #80] @ 0x50 80026e6: 2b00 cmp r3, #0 80026e8: d07e beq.n 80027e8 80026ea: 687b ldr r3, [r7, #4] 80026ec: 6d1b ldr r3, [r3, #80] @ 0x50 80026ee: 6878 ldr r0, [r7, #4] 80026f0: 4798 blx r3 80026f2: e079 b.n 80027e8 80026f4: 687b ldr r3, [r7, #4] 80026f6: 681b ldr r3, [r3, #0] 80026f8: 681b ldr r3, [r3, #0] 80026fa: f403 2380 and.w r3, r3, #262144 @ 0x40000 80026fe: 2b00 cmp r3, #0 8002700: d01d beq.n 800273e 8002702: 687b ldr r3, [r7, #4] 8002704: 681b ldr r3, [r3, #0] 8002706: 681b ldr r3, [r3, #0] 8002708: f403 2300 and.w r3, r3, #524288 @ 0x80000 800270c: 2b00 cmp r3, #0 800270e: d10d bne.n 800272c 8002710: 687b ldr r3, [r7, #4] 8002712: 6c5b ldr r3, [r3, #68] @ 0x44 8002714: 2b00 cmp r3, #0 8002716: d031 beq.n 800277c 8002718: 687b ldr r3, [r7, #4] 800271a: 6c5b ldr r3, [r3, #68] @ 0x44 800271c: 6878 ldr r0, [r7, #4] 800271e: 4798 blx r3 8002720: e02c b.n 800277c 8002722: bf00 nop 8002724: 20000090 .word 0x20000090 8002728: 1b4e81b5 .word 0x1b4e81b5 800272c: 687b ldr r3, [r7, #4] 800272e: 6bdb ldr r3, [r3, #60] @ 0x3c 8002730: 2b00 cmp r3, #0 8002732: d023 beq.n 800277c 8002734: 687b ldr r3, [r7, #4] 8002736: 6bdb ldr r3, [r3, #60] @ 0x3c 8002738: 6878 ldr r0, [r7, #4] 800273a: 4798 blx r3 800273c: e01e b.n 800277c 800273e: 687b ldr r3, [r7, #4] 8002740: 681b ldr r3, [r3, #0] 8002742: 681b ldr r3, [r3, #0] 8002744: f403 7380 and.w r3, r3, #256 @ 0x100 8002748: 2b00 cmp r3, #0 800274a: d10f bne.n 800276c 800274c: 687b ldr r3, [r7, #4] 800274e: 681b ldr r3, [r3, #0] 8002750: 681a ldr r2, [r3, #0] 8002752: 687b ldr r3, [r7, #4] 8002754: 681b ldr r3, [r3, #0] 8002756: f022 0210 bic.w r2, r2, #16 800275a: 601a str r2, [r3, #0] 800275c: 687b ldr r3, [r7, #4] 800275e: 2201 movs r2, #1 8002760: f883 2035 strb.w r2, [r3, #53] @ 0x35 8002764: 687b ldr r3, [r7, #4] 8002766: 2200 movs r2, #0 8002768: f883 2034 strb.w r2, [r3, #52] @ 0x34 800276c: 687b ldr r3, [r7, #4] 800276e: 6bdb ldr r3, [r3, #60] @ 0x3c 8002770: 2b00 cmp r3, #0 8002772: d003 beq.n 800277c 8002774: 687b ldr r3, [r7, #4] 8002776: 6bdb ldr r3, [r3, #60] @ 0x3c 8002778: 6878 ldr r0, [r7, #4] 800277a: 4798 blx r3 800277c: 687b ldr r3, [r7, #4] 800277e: 6d5b ldr r3, [r3, #84] @ 0x54 8002780: 2b00 cmp r3, #0 8002782: d032 beq.n 80027ea 8002784: 687b ldr r3, [r7, #4] 8002786: 6d5b ldr r3, [r3, #84] @ 0x54 8002788: f003 0301 and.w r3, r3, #1 800278c: 2b00 cmp r3, #0 800278e: d022 beq.n 80027d6 8002790: 687b ldr r3, [r7, #4] 8002792: 2205 movs r2, #5 8002794: f883 2035 strb.w r2, [r3, #53] @ 0x35 8002798: 687b ldr r3, [r7, #4] 800279a: 681b ldr r3, [r3, #0] 800279c: 681a ldr r2, [r3, #0] 800279e: 687b ldr r3, [r7, #4] 80027a0: 681b ldr r3, [r3, #0] 80027a2: f022 0201 bic.w r2, r2, #1 80027a6: 601a str r2, [r3, #0] 80027a8: 68bb ldr r3, [r7, #8] 80027aa: 3301 adds r3, #1 80027ac: 60bb str r3, [r7, #8] 80027ae: 697a ldr r2, [r7, #20] 80027b0: 429a cmp r2, r3 80027b2: d307 bcc.n 80027c4 80027b4: 687b ldr r3, [r7, #4] 80027b6: 681b ldr r3, [r3, #0] 80027b8: 681b ldr r3, [r3, #0] 80027ba: f003 0301 and.w r3, r3, #1 80027be: 2b00 cmp r3, #0 80027c0: d1f2 bne.n 80027a8 80027c2: e000 b.n 80027c6 80027c4: bf00 nop 80027c6: 687b ldr r3, [r7, #4] 80027c8: 2201 movs r2, #1 80027ca: f883 2035 strb.w r2, [r3, #53] @ 0x35 80027ce: 687b ldr r3, [r7, #4] 80027d0: 2200 movs r2, #0 80027d2: f883 2034 strb.w r2, [r3, #52] @ 0x34 80027d6: 687b ldr r3, [r7, #4] 80027d8: 6cdb ldr r3, [r3, #76] @ 0x4c 80027da: 2b00 cmp r3, #0 80027dc: d005 beq.n 80027ea 80027de: 687b ldr r3, [r7, #4] 80027e0: 6cdb ldr r3, [r3, #76] @ 0x4c 80027e2: 6878 ldr r0, [r7, #4] 80027e4: 4798 blx r3 80027e6: e000 b.n 80027ea 80027e8: bf00 nop 80027ea: 3718 adds r7, #24 80027ec: 46bd mov sp, r7 80027ee: bd80 pop {r7, pc} 080027f0 : 80027f0: b480 push {r7} 80027f2: b085 sub sp, #20 80027f4: af00 add r7, sp, #0 80027f6: 60f8 str r0, [r7, #12] 80027f8: 60b9 str r1, [r7, #8] 80027fa: 607a str r2, [r7, #4] 80027fc: 603b str r3, [r7, #0] 80027fe: 68fb ldr r3, [r7, #12] 8002800: 681b ldr r3, [r3, #0] 8002802: 681a ldr r2, [r3, #0] 8002804: 68fb ldr r3, [r7, #12] 8002806: 681b ldr r3, [r3, #0] 8002808: f422 2280 bic.w r2, r2, #262144 @ 0x40000 800280c: 601a str r2, [r3, #0] 800280e: 68fb ldr r3, [r7, #12] 8002810: 681b ldr r3, [r3, #0] 8002812: 683a ldr r2, [r7, #0] 8002814: 605a str r2, [r3, #4] 8002816: 68fb ldr r3, [r7, #12] 8002818: 689b ldr r3, [r3, #8] 800281a: 2b40 cmp r3, #64 @ 0x40 800281c: d108 bne.n 8002830 800281e: 68fb ldr r3, [r7, #12] 8002820: 681b ldr r3, [r3, #0] 8002822: 687a ldr r2, [r7, #4] 8002824: 609a str r2, [r3, #8] 8002826: 68fb ldr r3, [r7, #12] 8002828: 681b ldr r3, [r3, #0] 800282a: 68ba ldr r2, [r7, #8] 800282c: 60da str r2, [r3, #12] 800282e: e007 b.n 8002840 8002830: 68fb ldr r3, [r7, #12] 8002832: 681b ldr r3, [r3, #0] 8002834: 68ba ldr r2, [r7, #8] 8002836: 609a str r2, [r3, #8] 8002838: 68fb ldr r3, [r7, #12] 800283a: 681b ldr r3, [r3, #0] 800283c: 687a ldr r2, [r7, #4] 800283e: 60da str r2, [r3, #12] 8002840: bf00 nop 8002842: 3714 adds r7, #20 8002844: 46bd mov sp, r7 8002846: f85d 7b04 ldr.w r7, [sp], #4 800284a: 4770 bx lr 0800284c : 800284c: b480 push {r7} 800284e: b085 sub sp, #20 8002850: af00 add r7, sp, #0 8002852: 6078 str r0, [r7, #4] 8002854: 687b ldr r3, [r7, #4] 8002856: 681b ldr r3, [r3, #0] 8002858: b2db uxtb r3, r3 800285a: 3b10 subs r3, #16 800285c: 4a14 ldr r2, [pc, #80] @ (80028b0 ) 800285e: fba2 2303 umull r2, r3, r2, r3 8002862: 091b lsrs r3, r3, #4 8002864: 60fb str r3, [r7, #12] 8002866: 4a13 ldr r2, [pc, #76] @ (80028b4 ) 8002868: 68fb ldr r3, [r7, #12] 800286a: 4413 add r3, r2 800286c: 781b ldrb r3, [r3, #0] 800286e: 461a mov r2, r3 8002870: 687b ldr r3, [r7, #4] 8002872: 65da str r2, [r3, #92] @ 0x5c 8002874: 68fb ldr r3, [r7, #12] 8002876: 2b03 cmp r3, #3 8002878: d909 bls.n 800288e 800287a: 687b ldr r3, [r7, #4] 800287c: 681b ldr r3, [r3, #0] 800287e: f423 737f bic.w r3, r3, #1020 @ 0x3fc 8002882: f023 0303 bic.w r3, r3, #3 8002886: 1d1a adds r2, r3, #4 8002888: 687b ldr r3, [r7, #4] 800288a: 659a str r2, [r3, #88] @ 0x58 800288c: e007 b.n 800289e 800288e: 687b ldr r3, [r7, #4] 8002890: 681b ldr r3, [r3, #0] 8002892: f423 737f bic.w r3, r3, #1020 @ 0x3fc 8002896: f023 0303 bic.w r3, r3, #3 800289a: 687a ldr r2, [r7, #4] 800289c: 6593 str r3, [r2, #88] @ 0x58 800289e: 687b ldr r3, [r7, #4] 80028a0: 6d9b ldr r3, [r3, #88] @ 0x58 80028a2: 4618 mov r0, r3 80028a4: 3714 adds r7, #20 80028a6: 46bd mov sp, r7 80028a8: f85d 7b04 ldr.w r7, [sp], #4 80028ac: 4770 bx lr 80028ae: bf00 nop 80028b0: aaaaaaab .word 0xaaaaaaab 80028b4: 0800b430 .word 0x0800b430 080028b8 : 80028b8: b480 push {r7} 80028ba: b085 sub sp, #20 80028bc: af00 add r7, sp, #0 80028be: 6078 str r0, [r7, #4] 80028c0: 2300 movs r3, #0 80028c2: 73fb strb r3, [r7, #15] 80028c4: 687b ldr r3, [r7, #4] 80028c6: 6a9b ldr r3, [r3, #40] @ 0x28 80028c8: 60bb str r3, [r7, #8] 80028ca: 687b ldr r3, [r7, #4] 80028cc: 699b ldr r3, [r3, #24] 80028ce: 2b00 cmp r3, #0 80028d0: d11f bne.n 8002912 80028d2: 68bb ldr r3, [r7, #8] 80028d4: 2b03 cmp r3, #3 80028d6: d856 bhi.n 8002986 80028d8: a201 add r2, pc, #4 @ (adr r2, 80028e0 ) 80028da: f852 f023 ldr.w pc, [r2, r3, lsl #2] 80028de: bf00 nop 80028e0: 080028f1 .word 0x080028f1 80028e4: 08002903 .word 0x08002903 80028e8: 080028f1 .word 0x080028f1 80028ec: 08002987 .word 0x08002987 80028f0: 687b ldr r3, [r7, #4] 80028f2: 6adb ldr r3, [r3, #44] @ 0x2c 80028f4: f003 7380 and.w r3, r3, #16777216 @ 0x1000000 80028f8: 2b00 cmp r3, #0 80028fa: d046 beq.n 800298a 80028fc: 2301 movs r3, #1 80028fe: 73fb strb r3, [r7, #15] 8002900: e043 b.n 800298a 8002902: 687b ldr r3, [r7, #4] 8002904: 6adb ldr r3, [r3, #44] @ 0x2c 8002906: f1b3 7fc0 cmp.w r3, #25165824 @ 0x1800000 800290a: d140 bne.n 800298e 800290c: 2301 movs r3, #1 800290e: 73fb strb r3, [r7, #15] 8002910: e03d b.n 800298e 8002912: 687b ldr r3, [r7, #4] 8002914: 699b ldr r3, [r3, #24] 8002916: f5b3 5f00 cmp.w r3, #8192 @ 0x2000 800291a: d121 bne.n 8002960 800291c: 68bb ldr r3, [r7, #8] 800291e: 2b03 cmp r3, #3 8002920: d837 bhi.n 8002992 8002922: a201 add r2, pc, #4 @ (adr r2, 8002928 ) 8002924: f852 f023 ldr.w pc, [r2, r3, lsl #2] 8002928: 08002939 .word 0x08002939 800292c: 0800293f .word 0x0800293f 8002930: 08002939 .word 0x08002939 8002934: 08002951 .word 0x08002951 8002938: 2301 movs r3, #1 800293a: 73fb strb r3, [r7, #15] 800293c: e030 b.n 80029a0 800293e: 687b ldr r3, [r7, #4] 8002940: 6adb ldr r3, [r3, #44] @ 0x2c 8002942: f003 7380 and.w r3, r3, #16777216 @ 0x1000000 8002946: 2b00 cmp r3, #0 8002948: d025 beq.n 8002996 800294a: 2301 movs r3, #1 800294c: 73fb strb r3, [r7, #15] 800294e: e022 b.n 8002996 8002950: 687b ldr r3, [r7, #4] 8002952: 6adb ldr r3, [r3, #44] @ 0x2c 8002954: f1b3 7fc0 cmp.w r3, #25165824 @ 0x1800000 8002958: d11f bne.n 800299a 800295a: 2301 movs r3, #1 800295c: 73fb strb r3, [r7, #15] 800295e: e01c b.n 800299a 8002960: 68bb ldr r3, [r7, #8] 8002962: 2b02 cmp r3, #2 8002964: d903 bls.n 800296e 8002966: 68bb ldr r3, [r7, #8] 8002968: 2b03 cmp r3, #3 800296a: d003 beq.n 8002974 800296c: e018 b.n 80029a0 800296e: 2301 movs r3, #1 8002970: 73fb strb r3, [r7, #15] 8002972: e015 b.n 80029a0 8002974: 687b ldr r3, [r7, #4] 8002976: 6adb ldr r3, [r3, #44] @ 0x2c 8002978: f003 7380 and.w r3, r3, #16777216 @ 0x1000000 800297c: 2b00 cmp r3, #0 800297e: d00e beq.n 800299e 8002980: 2301 movs r3, #1 8002982: 73fb strb r3, [r7, #15] 8002984: e00b b.n 800299e 8002986: bf00 nop 8002988: e00a b.n 80029a0 800298a: bf00 nop 800298c: e008 b.n 80029a0 800298e: bf00 nop 8002990: e006 b.n 80029a0 8002992: bf00 nop 8002994: e004 b.n 80029a0 8002996: bf00 nop 8002998: e002 b.n 80029a0 800299a: bf00 nop 800299c: e000 b.n 80029a0 800299e: bf00 nop 80029a0: 7bfb ldrb r3, [r7, #15] 80029a2: 4618 mov r0, r3 80029a4: 3714 adds r7, #20 80029a6: 46bd mov sp, r7 80029a8: f85d 7b04 ldr.w r7, [sp], #4 80029ac: 4770 bx lr 80029ae: bf00 nop 080029b0 : 80029b0: b480 push {r7} 80029b2: b089 sub sp, #36 @ 0x24 80029b4: af00 add r7, sp, #0 80029b6: 6078 str r0, [r7, #4] 80029b8: 6039 str r1, [r7, #0] 80029ba: 2300 movs r3, #0 80029bc: 617b str r3, [r7, #20] 80029be: 2300 movs r3, #0 80029c0: 613b str r3, [r7, #16] 80029c2: 2300 movs r3, #0 80029c4: 61bb str r3, [r7, #24] 80029c6: 2300 movs r3, #0 80029c8: 61fb str r3, [r7, #28] 80029ca: e165 b.n 8002c98 80029cc: 2201 movs r2, #1 80029ce: 69fb ldr r3, [r7, #28] 80029d0: fa02 f303 lsl.w r3, r2, r3 80029d4: 617b str r3, [r7, #20] 80029d6: 683b ldr r3, [r7, #0] 80029d8: 681b ldr r3, [r3, #0] 80029da: 697a ldr r2, [r7, #20] 80029dc: 4013 ands r3, r2 80029de: 613b str r3, [r7, #16] 80029e0: 693a ldr r2, [r7, #16] 80029e2: 697b ldr r3, [r7, #20] 80029e4: 429a cmp r2, r3 80029e6: f040 8154 bne.w 8002c92 80029ea: 683b ldr r3, [r7, #0] 80029ec: 685b ldr r3, [r3, #4] 80029ee: f003 0303 and.w r3, r3, #3 80029f2: 2b01 cmp r3, #1 80029f4: d005 beq.n 8002a02 80029f6: 683b ldr r3, [r7, #0] 80029f8: 685b ldr r3, [r3, #4] 80029fa: f003 0303 and.w r3, r3, #3 80029fe: 2b02 cmp r3, #2 8002a00: d130 bne.n 8002a64 8002a02: 687b ldr r3, [r7, #4] 8002a04: 689b ldr r3, [r3, #8] 8002a06: 61bb str r3, [r7, #24] 8002a08: 69fb ldr r3, [r7, #28] 8002a0a: 005b lsls r3, r3, #1 8002a0c: 2203 movs r2, #3 8002a0e: fa02 f303 lsl.w r3, r2, r3 8002a12: 43db mvns r3, r3 8002a14: 69ba ldr r2, [r7, #24] 8002a16: 4013 ands r3, r2 8002a18: 61bb str r3, [r7, #24] 8002a1a: 683b ldr r3, [r7, #0] 8002a1c: 68da ldr r2, [r3, #12] 8002a1e: 69fb ldr r3, [r7, #28] 8002a20: 005b lsls r3, r3, #1 8002a22: fa02 f303 lsl.w r3, r2, r3 8002a26: 69ba ldr r2, [r7, #24] 8002a28: 4313 orrs r3, r2 8002a2a: 61bb str r3, [r7, #24] 8002a2c: 687b ldr r3, [r7, #4] 8002a2e: 69ba ldr r2, [r7, #24] 8002a30: 609a str r2, [r3, #8] 8002a32: 687b ldr r3, [r7, #4] 8002a34: 685b ldr r3, [r3, #4] 8002a36: 61bb str r3, [r7, #24] 8002a38: 2201 movs r2, #1 8002a3a: 69fb ldr r3, [r7, #28] 8002a3c: fa02 f303 lsl.w r3, r2, r3 8002a40: 43db mvns r3, r3 8002a42: 69ba ldr r2, [r7, #24] 8002a44: 4013 ands r3, r2 8002a46: 61bb str r3, [r7, #24] 8002a48: 683b ldr r3, [r7, #0] 8002a4a: 685b ldr r3, [r3, #4] 8002a4c: 091b lsrs r3, r3, #4 8002a4e: f003 0201 and.w r2, r3, #1 8002a52: 69fb ldr r3, [r7, #28] 8002a54: fa02 f303 lsl.w r3, r2, r3 8002a58: 69ba ldr r2, [r7, #24] 8002a5a: 4313 orrs r3, r2 8002a5c: 61bb str r3, [r7, #24] 8002a5e: 687b ldr r3, [r7, #4] 8002a60: 69ba ldr r2, [r7, #24] 8002a62: 605a str r2, [r3, #4] 8002a64: 683b ldr r3, [r7, #0] 8002a66: 685b ldr r3, [r3, #4] 8002a68: f003 0303 and.w r3, r3, #3 8002a6c: 2b03 cmp r3, #3 8002a6e: d017 beq.n 8002aa0 8002a70: 687b ldr r3, [r7, #4] 8002a72: 68db ldr r3, [r3, #12] 8002a74: 61bb str r3, [r7, #24] 8002a76: 69fb ldr r3, [r7, #28] 8002a78: 005b lsls r3, r3, #1 8002a7a: 2203 movs r2, #3 8002a7c: fa02 f303 lsl.w r3, r2, r3 8002a80: 43db mvns r3, r3 8002a82: 69ba ldr r2, [r7, #24] 8002a84: 4013 ands r3, r2 8002a86: 61bb str r3, [r7, #24] 8002a88: 683b ldr r3, [r7, #0] 8002a8a: 689a ldr r2, [r3, #8] 8002a8c: 69fb ldr r3, [r7, #28] 8002a8e: 005b lsls r3, r3, #1 8002a90: fa02 f303 lsl.w r3, r2, r3 8002a94: 69ba ldr r2, [r7, #24] 8002a96: 4313 orrs r3, r2 8002a98: 61bb str r3, [r7, #24] 8002a9a: 687b ldr r3, [r7, #4] 8002a9c: 69ba ldr r2, [r7, #24] 8002a9e: 60da str r2, [r3, #12] 8002aa0: 683b ldr r3, [r7, #0] 8002aa2: 685b ldr r3, [r3, #4] 8002aa4: f003 0303 and.w r3, r3, #3 8002aa8: 2b02 cmp r3, #2 8002aaa: d123 bne.n 8002af4 8002aac: 69fb ldr r3, [r7, #28] 8002aae: 08da lsrs r2, r3, #3 8002ab0: 687b ldr r3, [r7, #4] 8002ab2: 3208 adds r2, #8 8002ab4: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8002ab8: 61bb str r3, [r7, #24] 8002aba: 69fb ldr r3, [r7, #28] 8002abc: f003 0307 and.w r3, r3, #7 8002ac0: 009b lsls r3, r3, #2 8002ac2: 220f movs r2, #15 8002ac4: fa02 f303 lsl.w r3, r2, r3 8002ac8: 43db mvns r3, r3 8002aca: 69ba ldr r2, [r7, #24] 8002acc: 4013 ands r3, r2 8002ace: 61bb str r3, [r7, #24] 8002ad0: 683b ldr r3, [r7, #0] 8002ad2: 691a ldr r2, [r3, #16] 8002ad4: 69fb ldr r3, [r7, #28] 8002ad6: f003 0307 and.w r3, r3, #7 8002ada: 009b lsls r3, r3, #2 8002adc: fa02 f303 lsl.w r3, r2, r3 8002ae0: 69ba ldr r2, [r7, #24] 8002ae2: 4313 orrs r3, r2 8002ae4: 61bb str r3, [r7, #24] 8002ae6: 69fb ldr r3, [r7, #28] 8002ae8: 08da lsrs r2, r3, #3 8002aea: 687b ldr r3, [r7, #4] 8002aec: 3208 adds r2, #8 8002aee: 69b9 ldr r1, [r7, #24] 8002af0: f843 1022 str.w r1, [r3, r2, lsl #2] 8002af4: 687b ldr r3, [r7, #4] 8002af6: 681b ldr r3, [r3, #0] 8002af8: 61bb str r3, [r7, #24] 8002afa: 69fb ldr r3, [r7, #28] 8002afc: 005b lsls r3, r3, #1 8002afe: 2203 movs r2, #3 8002b00: fa02 f303 lsl.w r3, r2, r3 8002b04: 43db mvns r3, r3 8002b06: 69ba ldr r2, [r7, #24] 8002b08: 4013 ands r3, r2 8002b0a: 61bb str r3, [r7, #24] 8002b0c: 683b ldr r3, [r7, #0] 8002b0e: 685b ldr r3, [r3, #4] 8002b10: f003 0203 and.w r2, r3, #3 8002b14: 69fb ldr r3, [r7, #28] 8002b16: 005b lsls r3, r3, #1 8002b18: fa02 f303 lsl.w r3, r2, r3 8002b1c: 69ba ldr r2, [r7, #24] 8002b1e: 4313 orrs r3, r2 8002b20: 61bb str r3, [r7, #24] 8002b22: 687b ldr r3, [r7, #4] 8002b24: 69ba ldr r2, [r7, #24] 8002b26: 601a str r2, [r3, #0] 8002b28: 683b ldr r3, [r7, #0] 8002b2a: 685b ldr r3, [r3, #4] 8002b2c: f403 3340 and.w r3, r3, #196608 @ 0x30000 8002b30: 2b00 cmp r3, #0 8002b32: f000 80ae beq.w 8002c92 8002b36: 2300 movs r3, #0 8002b38: 60fb str r3, [r7, #12] 8002b3a: 4b5d ldr r3, [pc, #372] @ (8002cb0 ) 8002b3c: 6c5b ldr r3, [r3, #68] @ 0x44 8002b3e: 4a5c ldr r2, [pc, #368] @ (8002cb0 ) 8002b40: f443 4380 orr.w r3, r3, #16384 @ 0x4000 8002b44: 6453 str r3, [r2, #68] @ 0x44 8002b46: 4b5a ldr r3, [pc, #360] @ (8002cb0 ) 8002b48: 6c5b ldr r3, [r3, #68] @ 0x44 8002b4a: f403 4380 and.w r3, r3, #16384 @ 0x4000 8002b4e: 60fb str r3, [r7, #12] 8002b50: 68fb ldr r3, [r7, #12] 8002b52: 4a58 ldr r2, [pc, #352] @ (8002cb4 ) 8002b54: 69fb ldr r3, [r7, #28] 8002b56: 089b lsrs r3, r3, #2 8002b58: 3302 adds r3, #2 8002b5a: f852 3023 ldr.w r3, [r2, r3, lsl #2] 8002b5e: 61bb str r3, [r7, #24] 8002b60: 69fb ldr r3, [r7, #28] 8002b62: f003 0303 and.w r3, r3, #3 8002b66: 009b lsls r3, r3, #2 8002b68: 220f movs r2, #15 8002b6a: fa02 f303 lsl.w r3, r2, r3 8002b6e: 43db mvns r3, r3 8002b70: 69ba ldr r2, [r7, #24] 8002b72: 4013 ands r3, r2 8002b74: 61bb str r3, [r7, #24] 8002b76: 687b ldr r3, [r7, #4] 8002b78: 4a4f ldr r2, [pc, #316] @ (8002cb8 ) 8002b7a: 4293 cmp r3, r2 8002b7c: d025 beq.n 8002bca 8002b7e: 687b ldr r3, [r7, #4] 8002b80: 4a4e ldr r2, [pc, #312] @ (8002cbc ) 8002b82: 4293 cmp r3, r2 8002b84: d01f beq.n 8002bc6 8002b86: 687b ldr r3, [r7, #4] 8002b88: 4a4d ldr r2, [pc, #308] @ (8002cc0 ) 8002b8a: 4293 cmp r3, r2 8002b8c: d019 beq.n 8002bc2 8002b8e: 687b ldr r3, [r7, #4] 8002b90: 4a4c ldr r2, [pc, #304] @ (8002cc4 ) 8002b92: 4293 cmp r3, r2 8002b94: d013 beq.n 8002bbe 8002b96: 687b ldr r3, [r7, #4] 8002b98: 4a4b ldr r2, [pc, #300] @ (8002cc8 ) 8002b9a: 4293 cmp r3, r2 8002b9c: d00d beq.n 8002bba 8002b9e: 687b ldr r3, [r7, #4] 8002ba0: 4a4a ldr r2, [pc, #296] @ (8002ccc ) 8002ba2: 4293 cmp r3, r2 8002ba4: d007 beq.n 8002bb6 8002ba6: 687b ldr r3, [r7, #4] 8002ba8: 4a49 ldr r2, [pc, #292] @ (8002cd0 ) 8002baa: 4293 cmp r3, r2 8002bac: d101 bne.n 8002bb2 8002bae: 2306 movs r3, #6 8002bb0: e00c b.n 8002bcc 8002bb2: 2307 movs r3, #7 8002bb4: e00a b.n 8002bcc 8002bb6: 2305 movs r3, #5 8002bb8: e008 b.n 8002bcc 8002bba: 2304 movs r3, #4 8002bbc: e006 b.n 8002bcc 8002bbe: 2303 movs r3, #3 8002bc0: e004 b.n 8002bcc 8002bc2: 2302 movs r3, #2 8002bc4: e002 b.n 8002bcc 8002bc6: 2301 movs r3, #1 8002bc8: e000 b.n 8002bcc 8002bca: 2300 movs r3, #0 8002bcc: 69fa ldr r2, [r7, #28] 8002bce: f002 0203 and.w r2, r2, #3 8002bd2: 0092 lsls r2, r2, #2 8002bd4: 4093 lsls r3, r2 8002bd6: 69ba ldr r2, [r7, #24] 8002bd8: 4313 orrs r3, r2 8002bda: 61bb str r3, [r7, #24] 8002bdc: 4935 ldr r1, [pc, #212] @ (8002cb4 ) 8002bde: 69fb ldr r3, [r7, #28] 8002be0: 089b lsrs r3, r3, #2 8002be2: 3302 adds r3, #2 8002be4: 69ba ldr r2, [r7, #24] 8002be6: f841 2023 str.w r2, [r1, r3, lsl #2] 8002bea: 4b3a ldr r3, [pc, #232] @ (8002cd4 ) 8002bec: 689b ldr r3, [r3, #8] 8002bee: 61bb str r3, [r7, #24] 8002bf0: 693b ldr r3, [r7, #16] 8002bf2: 43db mvns r3, r3 8002bf4: 69ba ldr r2, [r7, #24] 8002bf6: 4013 ands r3, r2 8002bf8: 61bb str r3, [r7, #24] 8002bfa: 683b ldr r3, [r7, #0] 8002bfc: 685b ldr r3, [r3, #4] 8002bfe: f403 1380 and.w r3, r3, #1048576 @ 0x100000 8002c02: 2b00 cmp r3, #0 8002c04: d003 beq.n 8002c0e 8002c06: 69ba ldr r2, [r7, #24] 8002c08: 693b ldr r3, [r7, #16] 8002c0a: 4313 orrs r3, r2 8002c0c: 61bb str r3, [r7, #24] 8002c0e: 4a31 ldr r2, [pc, #196] @ (8002cd4 ) 8002c10: 69bb ldr r3, [r7, #24] 8002c12: 6093 str r3, [r2, #8] 8002c14: 4b2f ldr r3, [pc, #188] @ (8002cd4 ) 8002c16: 68db ldr r3, [r3, #12] 8002c18: 61bb str r3, [r7, #24] 8002c1a: 693b ldr r3, [r7, #16] 8002c1c: 43db mvns r3, r3 8002c1e: 69ba ldr r2, [r7, #24] 8002c20: 4013 ands r3, r2 8002c22: 61bb str r3, [r7, #24] 8002c24: 683b ldr r3, [r7, #0] 8002c26: 685b ldr r3, [r3, #4] 8002c28: f403 1300 and.w r3, r3, #2097152 @ 0x200000 8002c2c: 2b00 cmp r3, #0 8002c2e: d003 beq.n 8002c38 8002c30: 69ba ldr r2, [r7, #24] 8002c32: 693b ldr r3, [r7, #16] 8002c34: 4313 orrs r3, r2 8002c36: 61bb str r3, [r7, #24] 8002c38: 4a26 ldr r2, [pc, #152] @ (8002cd4 ) 8002c3a: 69bb ldr r3, [r7, #24] 8002c3c: 60d3 str r3, [r2, #12] 8002c3e: 4b25 ldr r3, [pc, #148] @ (8002cd4 ) 8002c40: 685b ldr r3, [r3, #4] 8002c42: 61bb str r3, [r7, #24] 8002c44: 693b ldr r3, [r7, #16] 8002c46: 43db mvns r3, r3 8002c48: 69ba ldr r2, [r7, #24] 8002c4a: 4013 ands r3, r2 8002c4c: 61bb str r3, [r7, #24] 8002c4e: 683b ldr r3, [r7, #0] 8002c50: 685b ldr r3, [r3, #4] 8002c52: f403 3300 and.w r3, r3, #131072 @ 0x20000 8002c56: 2b00 cmp r3, #0 8002c58: d003 beq.n 8002c62 8002c5a: 69ba ldr r2, [r7, #24] 8002c5c: 693b ldr r3, [r7, #16] 8002c5e: 4313 orrs r3, r2 8002c60: 61bb str r3, [r7, #24] 8002c62: 4a1c ldr r2, [pc, #112] @ (8002cd4 ) 8002c64: 69bb ldr r3, [r7, #24] 8002c66: 6053 str r3, [r2, #4] 8002c68: 4b1a ldr r3, [pc, #104] @ (8002cd4 ) 8002c6a: 681b ldr r3, [r3, #0] 8002c6c: 61bb str r3, [r7, #24] 8002c6e: 693b ldr r3, [r7, #16] 8002c70: 43db mvns r3, r3 8002c72: 69ba ldr r2, [r7, #24] 8002c74: 4013 ands r3, r2 8002c76: 61bb str r3, [r7, #24] 8002c78: 683b ldr r3, [r7, #0] 8002c7a: 685b ldr r3, [r3, #4] 8002c7c: f403 3380 and.w r3, r3, #65536 @ 0x10000 8002c80: 2b00 cmp r3, #0 8002c82: d003 beq.n 8002c8c 8002c84: 69ba ldr r2, [r7, #24] 8002c86: 693b ldr r3, [r7, #16] 8002c88: 4313 orrs r3, r2 8002c8a: 61bb str r3, [r7, #24] 8002c8c: 4a11 ldr r2, [pc, #68] @ (8002cd4 ) 8002c8e: 69bb ldr r3, [r7, #24] 8002c90: 6013 str r3, [r2, #0] 8002c92: 69fb ldr r3, [r7, #28] 8002c94: 3301 adds r3, #1 8002c96: 61fb str r3, [r7, #28] 8002c98: 69fb ldr r3, [r7, #28] 8002c9a: 2b0f cmp r3, #15 8002c9c: f67f ae96 bls.w 80029cc 8002ca0: bf00 nop 8002ca2: bf00 nop 8002ca4: 3724 adds r7, #36 @ 0x24 8002ca6: 46bd mov sp, r7 8002ca8: f85d 7b04 ldr.w r7, [sp], #4 8002cac: 4770 bx lr 8002cae: bf00 nop 8002cb0: 40023800 .word 0x40023800 8002cb4: 40013800 .word 0x40013800 8002cb8: 40020000 .word 0x40020000 8002cbc: 40020400 .word 0x40020400 8002cc0: 40020800 .word 0x40020800 8002cc4: 40020c00 .word 0x40020c00 8002cc8: 40021000 .word 0x40021000 8002ccc: 40021400 .word 0x40021400 8002cd0: 40021800 .word 0x40021800 8002cd4: 40013c00 .word 0x40013c00 08002cd8 : 8002cd8: b480 push {r7} 8002cda: b085 sub sp, #20 8002cdc: af00 add r7, sp, #0 8002cde: 6078 str r0, [r7, #4] 8002ce0: 460b mov r3, r1 8002ce2: 807b strh r3, [r7, #2] 8002ce4: 687b ldr r3, [r7, #4] 8002ce6: 691a ldr r2, [r3, #16] 8002ce8: 887b ldrh r3, [r7, #2] 8002cea: 4013 ands r3, r2 8002cec: 2b00 cmp r3, #0 8002cee: d002 beq.n 8002cf6 8002cf0: 2301 movs r3, #1 8002cf2: 73fb strb r3, [r7, #15] 8002cf4: e001 b.n 8002cfa 8002cf6: 2300 movs r3, #0 8002cf8: 73fb strb r3, [r7, #15] 8002cfa: 7bfb ldrb r3, [r7, #15] 8002cfc: 4618 mov r0, r3 8002cfe: 3714 adds r7, #20 8002d00: 46bd mov sp, r7 8002d02: f85d 7b04 ldr.w r7, [sp], #4 8002d06: 4770 bx lr 08002d08 : 8002d08: b480 push {r7} 8002d0a: b083 sub sp, #12 8002d0c: af00 add r7, sp, #0 8002d0e: 6078 str r0, [r7, #4] 8002d10: 460b mov r3, r1 8002d12: 807b strh r3, [r7, #2] 8002d14: 4613 mov r3, r2 8002d16: 707b strb r3, [r7, #1] 8002d18: 787b ldrb r3, [r7, #1] 8002d1a: 2b00 cmp r3, #0 8002d1c: d003 beq.n 8002d26 8002d1e: 887a ldrh r2, [r7, #2] 8002d20: 687b ldr r3, [r7, #4] 8002d22: 619a str r2, [r3, #24] 8002d24: e003 b.n 8002d2e 8002d26: 887b ldrh r3, [r7, #2] 8002d28: 041a lsls r2, r3, #16 8002d2a: 687b ldr r3, [r7, #4] 8002d2c: 619a str r2, [r3, #24] 8002d2e: bf00 nop 8002d30: 370c adds r7, #12 8002d32: 46bd mov sp, r7 8002d34: f85d 7b04 ldr.w r7, [sp], #4 8002d38: 4770 bx lr ... 08002d3c : 8002d3c: b580 push {r7, lr} 8002d3e: b084 sub sp, #16 8002d40: af00 add r7, sp, #0 8002d42: 6078 str r0, [r7, #4] 8002d44: 687b ldr r3, [r7, #4] 8002d46: 2b00 cmp r3, #0 8002d48: d101 bne.n 8002d4e 8002d4a: 2301 movs r3, #1 8002d4c: e12b b.n 8002fa6 8002d4e: 687b ldr r3, [r7, #4] 8002d50: f893 303d ldrb.w r3, [r3, #61] @ 0x3d 8002d54: b2db uxtb r3, r3 8002d56: 2b00 cmp r3, #0 8002d58: d106 bne.n 8002d68 8002d5a: 687b ldr r3, [r7, #4] 8002d5c: 2200 movs r2, #0 8002d5e: f883 203c strb.w r2, [r3, #60] @ 0x3c 8002d62: 6878 ldr r0, [r7, #4] 8002d64: f7fd fd18 bl 8000798 8002d68: 687b ldr r3, [r7, #4] 8002d6a: 2224 movs r2, #36 @ 0x24 8002d6c: f883 203d strb.w r2, [r3, #61] @ 0x3d 8002d70: 687b ldr r3, [r7, #4] 8002d72: 681b ldr r3, [r3, #0] 8002d74: 681a ldr r2, [r3, #0] 8002d76: 687b ldr r3, [r7, #4] 8002d78: 681b ldr r3, [r3, #0] 8002d7a: f022 0201 bic.w r2, r2, #1 8002d7e: 601a str r2, [r3, #0] 8002d80: 687b ldr r3, [r7, #4] 8002d82: 681b ldr r3, [r3, #0] 8002d84: 681a ldr r2, [r3, #0] 8002d86: 687b ldr r3, [r7, #4] 8002d88: 681b ldr r3, [r3, #0] 8002d8a: f442 4200 orr.w r2, r2, #32768 @ 0x8000 8002d8e: 601a str r2, [r3, #0] 8002d90: 687b ldr r3, [r7, #4] 8002d92: 681b ldr r3, [r3, #0] 8002d94: 681a ldr r2, [r3, #0] 8002d96: 687b ldr r3, [r7, #4] 8002d98: 681b ldr r3, [r3, #0] 8002d9a: f422 4200 bic.w r2, r2, #32768 @ 0x8000 8002d9e: 601a str r2, [r3, #0] 8002da0: f001 fc88 bl 80046b4 8002da4: 60f8 str r0, [r7, #12] 8002da6: 687b ldr r3, [r7, #4] 8002da8: 685b ldr r3, [r3, #4] 8002daa: 4a81 ldr r2, [pc, #516] @ (8002fb0 ) 8002dac: 4293 cmp r3, r2 8002dae: d807 bhi.n 8002dc0 8002db0: 68fb ldr r3, [r7, #12] 8002db2: 4a80 ldr r2, [pc, #512] @ (8002fb4 ) 8002db4: 4293 cmp r3, r2 8002db6: bf94 ite ls 8002db8: 2301 movls r3, #1 8002dba: 2300 movhi r3, #0 8002dbc: b2db uxtb r3, r3 8002dbe: e006 b.n 8002dce 8002dc0: 68fb ldr r3, [r7, #12] 8002dc2: 4a7d ldr r2, [pc, #500] @ (8002fb8 ) 8002dc4: 4293 cmp r3, r2 8002dc6: bf94 ite ls 8002dc8: 2301 movls r3, #1 8002dca: 2300 movhi r3, #0 8002dcc: b2db uxtb r3, r3 8002dce: 2b00 cmp r3, #0 8002dd0: d001 beq.n 8002dd6 8002dd2: 2301 movs r3, #1 8002dd4: e0e7 b.n 8002fa6 8002dd6: 68fb ldr r3, [r7, #12] 8002dd8: 4a78 ldr r2, [pc, #480] @ (8002fbc ) 8002dda: fba2 2303 umull r2, r3, r2, r3 8002dde: 0c9b lsrs r3, r3, #18 8002de0: 60bb str r3, [r7, #8] 8002de2: 687b ldr r3, [r7, #4] 8002de4: 681b ldr r3, [r3, #0] 8002de6: 685b ldr r3, [r3, #4] 8002de8: f023 013f bic.w r1, r3, #63 @ 0x3f 8002dec: 687b ldr r3, [r7, #4] 8002dee: 681b ldr r3, [r3, #0] 8002df0: 68ba ldr r2, [r7, #8] 8002df2: 430a orrs r2, r1 8002df4: 605a str r2, [r3, #4] 8002df6: 687b ldr r3, [r7, #4] 8002df8: 681b ldr r3, [r3, #0] 8002dfa: 6a1b ldr r3, [r3, #32] 8002dfc: f023 013f bic.w r1, r3, #63 @ 0x3f 8002e00: 687b ldr r3, [r7, #4] 8002e02: 685b ldr r3, [r3, #4] 8002e04: 4a6a ldr r2, [pc, #424] @ (8002fb0 ) 8002e06: 4293 cmp r3, r2 8002e08: d802 bhi.n 8002e10 8002e0a: 68bb ldr r3, [r7, #8] 8002e0c: 3301 adds r3, #1 8002e0e: e009 b.n 8002e24 8002e10: 68bb ldr r3, [r7, #8] 8002e12: f44f 7296 mov.w r2, #300 @ 0x12c 8002e16: fb02 f303 mul.w r3, r2, r3 8002e1a: 4a69 ldr r2, [pc, #420] @ (8002fc0 ) 8002e1c: fba2 2303 umull r2, r3, r2, r3 8002e20: 099b lsrs r3, r3, #6 8002e22: 3301 adds r3, #1 8002e24: 687a ldr r2, [r7, #4] 8002e26: 6812 ldr r2, [r2, #0] 8002e28: 430b orrs r3, r1 8002e2a: 6213 str r3, [r2, #32] 8002e2c: 687b ldr r3, [r7, #4] 8002e2e: 681b ldr r3, [r3, #0] 8002e30: 69db ldr r3, [r3, #28] 8002e32: f423 424f bic.w r2, r3, #52992 @ 0xcf00 8002e36: f022 02ff bic.w r2, r2, #255 @ 0xff 8002e3a: 687b ldr r3, [r7, #4] 8002e3c: 685b ldr r3, [r3, #4] 8002e3e: 495c ldr r1, [pc, #368] @ (8002fb0 ) 8002e40: 428b cmp r3, r1 8002e42: d819 bhi.n 8002e78 8002e44: 68fb ldr r3, [r7, #12] 8002e46: 1e59 subs r1, r3, #1 8002e48: 687b ldr r3, [r7, #4] 8002e4a: 685b ldr r3, [r3, #4] 8002e4c: 005b lsls r3, r3, #1 8002e4e: fbb1 f3f3 udiv r3, r1, r3 8002e52: 1c59 adds r1, r3, #1 8002e54: f640 73fc movw r3, #4092 @ 0xffc 8002e58: 400b ands r3, r1 8002e5a: 2b00 cmp r3, #0 8002e5c: d00a beq.n 8002e74 8002e5e: 68fb ldr r3, [r7, #12] 8002e60: 1e59 subs r1, r3, #1 8002e62: 687b ldr r3, [r7, #4] 8002e64: 685b ldr r3, [r3, #4] 8002e66: 005b lsls r3, r3, #1 8002e68: fbb1 f3f3 udiv r3, r1, r3 8002e6c: 3301 adds r3, #1 8002e6e: f3c3 030b ubfx r3, r3, #0, #12 8002e72: e051 b.n 8002f18 8002e74: 2304 movs r3, #4 8002e76: e04f b.n 8002f18 8002e78: 687b ldr r3, [r7, #4] 8002e7a: 689b ldr r3, [r3, #8] 8002e7c: 2b00 cmp r3, #0 8002e7e: d111 bne.n 8002ea4 8002e80: 68fb ldr r3, [r7, #12] 8002e82: 1e58 subs r0, r3, #1 8002e84: 687b ldr r3, [r7, #4] 8002e86: 6859 ldr r1, [r3, #4] 8002e88: 460b mov r3, r1 8002e8a: 005b lsls r3, r3, #1 8002e8c: 440b add r3, r1 8002e8e: fbb0 f3f3 udiv r3, r0, r3 8002e92: 3301 adds r3, #1 8002e94: f3c3 030b ubfx r3, r3, #0, #12 8002e98: 2b00 cmp r3, #0 8002e9a: bf0c ite eq 8002e9c: 2301 moveq r3, #1 8002e9e: 2300 movne r3, #0 8002ea0: b2db uxtb r3, r3 8002ea2: e012 b.n 8002eca 8002ea4: 68fb ldr r3, [r7, #12] 8002ea6: 1e58 subs r0, r3, #1 8002ea8: 687b ldr r3, [r7, #4] 8002eaa: 6859 ldr r1, [r3, #4] 8002eac: 460b mov r3, r1 8002eae: 009b lsls r3, r3, #2 8002eb0: 440b add r3, r1 8002eb2: 0099 lsls r1, r3, #2 8002eb4: 440b add r3, r1 8002eb6: fbb0 f3f3 udiv r3, r0, r3 8002eba: 3301 adds r3, #1 8002ebc: f3c3 030b ubfx r3, r3, #0, #12 8002ec0: 2b00 cmp r3, #0 8002ec2: bf0c ite eq 8002ec4: 2301 moveq r3, #1 8002ec6: 2300 movne r3, #0 8002ec8: b2db uxtb r3, r3 8002eca: 2b00 cmp r3, #0 8002ecc: d001 beq.n 8002ed2 8002ece: 2301 movs r3, #1 8002ed0: e022 b.n 8002f18 8002ed2: 687b ldr r3, [r7, #4] 8002ed4: 689b ldr r3, [r3, #8] 8002ed6: 2b00 cmp r3, #0 8002ed8: d10e bne.n 8002ef8 8002eda: 68fb ldr r3, [r7, #12] 8002edc: 1e58 subs r0, r3, #1 8002ede: 687b ldr r3, [r7, #4] 8002ee0: 6859 ldr r1, [r3, #4] 8002ee2: 460b mov r3, r1 8002ee4: 005b lsls r3, r3, #1 8002ee6: 440b add r3, r1 8002ee8: fbb0 f3f3 udiv r3, r0, r3 8002eec: 3301 adds r3, #1 8002eee: f3c3 030b ubfx r3, r3, #0, #12 8002ef2: f443 4300 orr.w r3, r3, #32768 @ 0x8000 8002ef6: e00f b.n 8002f18 8002ef8: 68fb ldr r3, [r7, #12] 8002efa: 1e58 subs r0, r3, #1 8002efc: 687b ldr r3, [r7, #4] 8002efe: 6859 ldr r1, [r3, #4] 8002f00: 460b mov r3, r1 8002f02: 009b lsls r3, r3, #2 8002f04: 440b add r3, r1 8002f06: 0099 lsls r1, r3, #2 8002f08: 440b add r3, r1 8002f0a: fbb0 f3f3 udiv r3, r0, r3 8002f0e: 3301 adds r3, #1 8002f10: f3c3 030b ubfx r3, r3, #0, #12 8002f14: f443 4340 orr.w r3, r3, #49152 @ 0xc000 8002f18: 6879 ldr r1, [r7, #4] 8002f1a: 6809 ldr r1, [r1, #0] 8002f1c: 4313 orrs r3, r2 8002f1e: 61cb str r3, [r1, #28] 8002f20: 687b ldr r3, [r7, #4] 8002f22: 681b ldr r3, [r3, #0] 8002f24: 681b ldr r3, [r3, #0] 8002f26: f023 01c0 bic.w r1, r3, #192 @ 0xc0 8002f2a: 687b ldr r3, [r7, #4] 8002f2c: 69da ldr r2, [r3, #28] 8002f2e: 687b ldr r3, [r7, #4] 8002f30: 6a1b ldr r3, [r3, #32] 8002f32: 431a orrs r2, r3 8002f34: 687b ldr r3, [r7, #4] 8002f36: 681b ldr r3, [r3, #0] 8002f38: 430a orrs r2, r1 8002f3a: 601a str r2, [r3, #0] 8002f3c: 687b ldr r3, [r7, #4] 8002f3e: 681b ldr r3, [r3, #0] 8002f40: 689b ldr r3, [r3, #8] 8002f42: f423 4303 bic.w r3, r3, #33536 @ 0x8300 8002f46: f023 03ff bic.w r3, r3, #255 @ 0xff 8002f4a: 687a ldr r2, [r7, #4] 8002f4c: 6911 ldr r1, [r2, #16] 8002f4e: 687a ldr r2, [r7, #4] 8002f50: 68d2 ldr r2, [r2, #12] 8002f52: 4311 orrs r1, r2 8002f54: 687a ldr r2, [r7, #4] 8002f56: 6812 ldr r2, [r2, #0] 8002f58: 430b orrs r3, r1 8002f5a: 6093 str r3, [r2, #8] 8002f5c: 687b ldr r3, [r7, #4] 8002f5e: 681b ldr r3, [r3, #0] 8002f60: 68db ldr r3, [r3, #12] 8002f62: f023 01ff bic.w r1, r3, #255 @ 0xff 8002f66: 687b ldr r3, [r7, #4] 8002f68: 695a ldr r2, [r3, #20] 8002f6a: 687b ldr r3, [r7, #4] 8002f6c: 699b ldr r3, [r3, #24] 8002f6e: 431a orrs r2, r3 8002f70: 687b ldr r3, [r7, #4] 8002f72: 681b ldr r3, [r3, #0] 8002f74: 430a orrs r2, r1 8002f76: 60da str r2, [r3, #12] 8002f78: 687b ldr r3, [r7, #4] 8002f7a: 681b ldr r3, [r3, #0] 8002f7c: 681a ldr r2, [r3, #0] 8002f7e: 687b ldr r3, [r7, #4] 8002f80: 681b ldr r3, [r3, #0] 8002f82: f042 0201 orr.w r2, r2, #1 8002f86: 601a str r2, [r3, #0] 8002f88: 687b ldr r3, [r7, #4] 8002f8a: 2200 movs r2, #0 8002f8c: 641a str r2, [r3, #64] @ 0x40 8002f8e: 687b ldr r3, [r7, #4] 8002f90: 2220 movs r2, #32 8002f92: f883 203d strb.w r2, [r3, #61] @ 0x3d 8002f96: 687b ldr r3, [r7, #4] 8002f98: 2200 movs r2, #0 8002f9a: 631a str r2, [r3, #48] @ 0x30 8002f9c: 687b ldr r3, [r7, #4] 8002f9e: 2200 movs r2, #0 8002fa0: f883 203e strb.w r2, [r3, #62] @ 0x3e 8002fa4: 2300 movs r3, #0 8002fa6: 4618 mov r0, r3 8002fa8: 3710 adds r7, #16 8002faa: 46bd mov sp, r7 8002fac: bd80 pop {r7, pc} 8002fae: bf00 nop 8002fb0: 000186a0 .word 0x000186a0 8002fb4: 001e847f .word 0x001e847f 8002fb8: 003d08ff .word 0x003d08ff 8002fbc: 431bde83 .word 0x431bde83 8002fc0: 10624dd3 .word 0x10624dd3 08002fc4 : 8002fc4: b580 push {r7, lr} 8002fc6: b086 sub sp, #24 8002fc8: af02 add r7, sp, #8 8002fca: 6078 str r0, [r7, #4] 8002fcc: 687b ldr r3, [r7, #4] 8002fce: 2b00 cmp r3, #0 8002fd0: d101 bne.n 8002fd6 8002fd2: 2301 movs r3, #1 8002fd4: e108 b.n 80031e8 8002fd6: 687b ldr r3, [r7, #4] 8002fd8: 681b ldr r3, [r3, #0] 8002fda: 60bb str r3, [r7, #8] 8002fdc: 687b ldr r3, [r7, #4] 8002fde: f893 3495 ldrb.w r3, [r3, #1173] @ 0x495 8002fe2: b2db uxtb r3, r3 8002fe4: 2b00 cmp r3, #0 8002fe6: d106 bne.n 8002ff6 8002fe8: 687b ldr r3, [r7, #4] 8002fea: 2200 movs r2, #0 8002fec: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8002ff0: 6878 ldr r0, [r7, #4] 8002ff2: f007 fe47 bl 800ac84 8002ff6: 687b ldr r3, [r7, #4] 8002ff8: 2203 movs r2, #3 8002ffa: f883 2495 strb.w r2, [r3, #1173] @ 0x495 8002ffe: 68bb ldr r3, [r7, #8] 8003000: f1b3 4fa0 cmp.w r3, #1342177280 @ 0x50000000 8003004: d102 bne.n 800300c 8003006: 687b ldr r3, [r7, #4] 8003008: 2200 movs r2, #0 800300a: 719a strb r2, [r3, #6] 800300c: 687b ldr r3, [r7, #4] 800300e: 681b ldr r3, [r3, #0] 8003010: 4618 mov r0, r3 8003012: f004 fd3c bl 8007a8e 8003016: 687b ldr r3, [r7, #4] 8003018: 6818 ldr r0, [r3, #0] 800301a: 687b ldr r3, [r7, #4] 800301c: 7c1a ldrb r2, [r3, #16] 800301e: f88d 2000 strb.w r2, [sp] 8003022: 3304 adds r3, #4 8003024: cb0e ldmia r3, {r1, r2, r3} 8003026: f004 fc1b bl 8007860 800302a: 4603 mov r3, r0 800302c: 2b00 cmp r3, #0 800302e: d005 beq.n 800303c 8003030: 687b ldr r3, [r7, #4] 8003032: 2202 movs r2, #2 8003034: f883 2495 strb.w r2, [r3, #1173] @ 0x495 8003038: 2301 movs r3, #1 800303a: e0d5 b.n 80031e8 800303c: 687b ldr r3, [r7, #4] 800303e: 681b ldr r3, [r3, #0] 8003040: 2100 movs r1, #0 8003042: 4618 mov r0, r3 8003044: f004 fd34 bl 8007ab0 8003048: 4603 mov r3, r0 800304a: 2b00 cmp r3, #0 800304c: d005 beq.n 800305a 800304e: 687b ldr r3, [r7, #4] 8003050: 2202 movs r2, #2 8003052: f883 2495 strb.w r2, [r3, #1173] @ 0x495 8003056: 2301 movs r3, #1 8003058: e0c6 b.n 80031e8 800305a: 2300 movs r3, #0 800305c: 73fb strb r3, [r7, #15] 800305e: e04a b.n 80030f6 8003060: 7bfa ldrb r2, [r7, #15] 8003062: 6879 ldr r1, [r7, #4] 8003064: 4613 mov r3, r2 8003066: 00db lsls r3, r3, #3 8003068: 4413 add r3, r2 800306a: 009b lsls r3, r3, #2 800306c: 440b add r3, r1 800306e: 3315 adds r3, #21 8003070: 2201 movs r2, #1 8003072: 701a strb r2, [r3, #0] 8003074: 7bfa ldrb r2, [r7, #15] 8003076: 6879 ldr r1, [r7, #4] 8003078: 4613 mov r3, r2 800307a: 00db lsls r3, r3, #3 800307c: 4413 add r3, r2 800307e: 009b lsls r3, r3, #2 8003080: 440b add r3, r1 8003082: 3314 adds r3, #20 8003084: 7bfa ldrb r2, [r7, #15] 8003086: 701a strb r2, [r3, #0] 8003088: 7bfa ldrb r2, [r7, #15] 800308a: 7bfb ldrb r3, [r7, #15] 800308c: b298 uxth r0, r3 800308e: 6879 ldr r1, [r7, #4] 8003090: 4613 mov r3, r2 8003092: 00db lsls r3, r3, #3 8003094: 4413 add r3, r2 8003096: 009b lsls r3, r3, #2 8003098: 440b add r3, r1 800309a: 332e adds r3, #46 @ 0x2e 800309c: 4602 mov r2, r0 800309e: 801a strh r2, [r3, #0] 80030a0: 7bfa ldrb r2, [r7, #15] 80030a2: 6879 ldr r1, [r7, #4] 80030a4: 4613 mov r3, r2 80030a6: 00db lsls r3, r3, #3 80030a8: 4413 add r3, r2 80030aa: 009b lsls r3, r3, #2 80030ac: 440b add r3, r1 80030ae: 3318 adds r3, #24 80030b0: 2200 movs r2, #0 80030b2: 701a strb r2, [r3, #0] 80030b4: 7bfa ldrb r2, [r7, #15] 80030b6: 6879 ldr r1, [r7, #4] 80030b8: 4613 mov r3, r2 80030ba: 00db lsls r3, r3, #3 80030bc: 4413 add r3, r2 80030be: 009b lsls r3, r3, #2 80030c0: 440b add r3, r1 80030c2: 331c adds r3, #28 80030c4: 2200 movs r2, #0 80030c6: 601a str r2, [r3, #0] 80030c8: 7bfa ldrb r2, [r7, #15] 80030ca: 6879 ldr r1, [r7, #4] 80030cc: 4613 mov r3, r2 80030ce: 00db lsls r3, r3, #3 80030d0: 4413 add r3, r2 80030d2: 009b lsls r3, r3, #2 80030d4: 440b add r3, r1 80030d6: 3320 adds r3, #32 80030d8: 2200 movs r2, #0 80030da: 601a str r2, [r3, #0] 80030dc: 7bfa ldrb r2, [r7, #15] 80030de: 6879 ldr r1, [r7, #4] 80030e0: 4613 mov r3, r2 80030e2: 00db lsls r3, r3, #3 80030e4: 4413 add r3, r2 80030e6: 009b lsls r3, r3, #2 80030e8: 440b add r3, r1 80030ea: 3324 adds r3, #36 @ 0x24 80030ec: 2200 movs r2, #0 80030ee: 601a str r2, [r3, #0] 80030f0: 7bfb ldrb r3, [r7, #15] 80030f2: 3301 adds r3, #1 80030f4: 73fb strb r3, [r7, #15] 80030f6: 687b ldr r3, [r7, #4] 80030f8: 791b ldrb r3, [r3, #4] 80030fa: 7bfa ldrb r2, [r7, #15] 80030fc: 429a cmp r2, r3 80030fe: d3af bcc.n 8003060 8003100: 2300 movs r3, #0 8003102: 73fb strb r3, [r7, #15] 8003104: e044 b.n 8003190 8003106: 7bfa ldrb r2, [r7, #15] 8003108: 6879 ldr r1, [r7, #4] 800310a: 4613 mov r3, r2 800310c: 00db lsls r3, r3, #3 800310e: 4413 add r3, r2 8003110: 009b lsls r3, r3, #2 8003112: 440b add r3, r1 8003114: f203 2355 addw r3, r3, #597 @ 0x255 8003118: 2200 movs r2, #0 800311a: 701a strb r2, [r3, #0] 800311c: 7bfa ldrb r2, [r7, #15] 800311e: 6879 ldr r1, [r7, #4] 8003120: 4613 mov r3, r2 8003122: 00db lsls r3, r3, #3 8003124: 4413 add r3, r2 8003126: 009b lsls r3, r3, #2 8003128: 440b add r3, r1 800312a: f503 7315 add.w r3, r3, #596 @ 0x254 800312e: 7bfa ldrb r2, [r7, #15] 8003130: 701a strb r2, [r3, #0] 8003132: 7bfa ldrb r2, [r7, #15] 8003134: 6879 ldr r1, [r7, #4] 8003136: 4613 mov r3, r2 8003138: 00db lsls r3, r3, #3 800313a: 4413 add r3, r2 800313c: 009b lsls r3, r3, #2 800313e: 440b add r3, r1 8003140: f503 7316 add.w r3, r3, #600 @ 0x258 8003144: 2200 movs r2, #0 8003146: 701a strb r2, [r3, #0] 8003148: 7bfa ldrb r2, [r7, #15] 800314a: 6879 ldr r1, [r7, #4] 800314c: 4613 mov r3, r2 800314e: 00db lsls r3, r3, #3 8003150: 4413 add r3, r2 8003152: 009b lsls r3, r3, #2 8003154: 440b add r3, r1 8003156: f503 7317 add.w r3, r3, #604 @ 0x25c 800315a: 2200 movs r2, #0 800315c: 601a str r2, [r3, #0] 800315e: 7bfa ldrb r2, [r7, #15] 8003160: 6879 ldr r1, [r7, #4] 8003162: 4613 mov r3, r2 8003164: 00db lsls r3, r3, #3 8003166: 4413 add r3, r2 8003168: 009b lsls r3, r3, #2 800316a: 440b add r3, r1 800316c: f503 7318 add.w r3, r3, #608 @ 0x260 8003170: 2200 movs r2, #0 8003172: 601a str r2, [r3, #0] 8003174: 7bfa ldrb r2, [r7, #15] 8003176: 6879 ldr r1, [r7, #4] 8003178: 4613 mov r3, r2 800317a: 00db lsls r3, r3, #3 800317c: 4413 add r3, r2 800317e: 009b lsls r3, r3, #2 8003180: 440b add r3, r1 8003182: f503 7319 add.w r3, r3, #612 @ 0x264 8003186: 2200 movs r2, #0 8003188: 601a str r2, [r3, #0] 800318a: 7bfb ldrb r3, [r7, #15] 800318c: 3301 adds r3, #1 800318e: 73fb strb r3, [r7, #15] 8003190: 687b ldr r3, [r7, #4] 8003192: 791b ldrb r3, [r3, #4] 8003194: 7bfa ldrb r2, [r7, #15] 8003196: 429a cmp r2, r3 8003198: d3b5 bcc.n 8003106 800319a: 687b ldr r3, [r7, #4] 800319c: 6818 ldr r0, [r3, #0] 800319e: 687b ldr r3, [r7, #4] 80031a0: 7c1a ldrb r2, [r3, #16] 80031a2: f88d 2000 strb.w r2, [sp] 80031a6: 3304 adds r3, #4 80031a8: cb0e ldmia r3, {r1, r2, r3} 80031aa: f004 fccd bl 8007b48 80031ae: 4603 mov r3, r0 80031b0: 2b00 cmp r3, #0 80031b2: d005 beq.n 80031c0 80031b4: 687b ldr r3, [r7, #4] 80031b6: 2202 movs r2, #2 80031b8: f883 2495 strb.w r2, [r3, #1173] @ 0x495 80031bc: 2301 movs r3, #1 80031be: e013 b.n 80031e8 80031c0: 687b ldr r3, [r7, #4] 80031c2: 2200 movs r2, #0 80031c4: 745a strb r2, [r3, #17] 80031c6: 687b ldr r3, [r7, #4] 80031c8: 2201 movs r2, #1 80031ca: f883 2495 strb.w r2, [r3, #1173] @ 0x495 80031ce: 687b ldr r3, [r7, #4] 80031d0: 7b1b ldrb r3, [r3, #12] 80031d2: 2b01 cmp r3, #1 80031d4: d102 bne.n 80031dc 80031d6: 6878 ldr r0, [r7, #4] 80031d8: f001 f956 bl 8004488 80031dc: 687b ldr r3, [r7, #4] 80031de: 681b ldr r3, [r3, #0] 80031e0: 4618 mov r0, r3 80031e2: f005 fd0a bl 8008bfa 80031e6: 2300 movs r3, #0 80031e8: 4618 mov r0, r3 80031ea: 3710 adds r7, #16 80031ec: 46bd mov sp, r7 80031ee: bd80 pop {r7, pc} 080031f0 : 80031f0: b580 push {r7, lr} 80031f2: b084 sub sp, #16 80031f4: af00 add r7, sp, #0 80031f6: 6078 str r0, [r7, #4] 80031f8: 687b ldr r3, [r7, #4] 80031fa: 681b ldr r3, [r3, #0] 80031fc: 60fb str r3, [r7, #12] 80031fe: 687b ldr r3, [r7, #4] 8003200: f893 3494 ldrb.w r3, [r3, #1172] @ 0x494 8003204: 2b01 cmp r3, #1 8003206: d101 bne.n 800320c 8003208: 2302 movs r3, #2 800320a: e022 b.n 8003252 800320c: 687b ldr r3, [r7, #4] 800320e: 2201 movs r2, #1 8003210: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003214: 68fb ldr r3, [r7, #12] 8003216: 68db ldr r3, [r3, #12] 8003218: f003 0340 and.w r3, r3, #64 @ 0x40 800321c: 2b00 cmp r3, #0 800321e: d009 beq.n 8003234 8003220: 687b ldr r3, [r7, #4] 8003222: 7b5b ldrb r3, [r3, #13] 8003224: 2b01 cmp r3, #1 8003226: d105 bne.n 8003234 8003228: 68fb ldr r3, [r7, #12] 800322a: 6b9b ldr r3, [r3, #56] @ 0x38 800322c: f443 3280 orr.w r2, r3, #65536 @ 0x10000 8003230: 68fb ldr r3, [r7, #12] 8003232: 639a str r2, [r3, #56] @ 0x38 8003234: 687b ldr r3, [r7, #4] 8003236: 681b ldr r3, [r3, #0] 8003238: 4618 mov r0, r3 800323a: f004 fc17 bl 8007a6c 800323e: 687b ldr r3, [r7, #4] 8003240: 681b ldr r3, [r3, #0] 8003242: 4618 mov r0, r3 8003244: f005 fcb8 bl 8008bb8 8003248: 687b ldr r3, [r7, #4] 800324a: 2200 movs r2, #0 800324c: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003250: 2300 movs r3, #0 8003252: 4618 mov r0, r3 8003254: 3710 adds r7, #16 8003256: 46bd mov sp, r7 8003258: bd80 pop {r7, pc} 0800325a : 800325a: b590 push {r4, r7, lr} 800325c: b08d sub sp, #52 @ 0x34 800325e: af00 add r7, sp, #0 8003260: 6078 str r0, [r7, #4] 8003262: 687b ldr r3, [r7, #4] 8003264: 681b ldr r3, [r3, #0] 8003266: 623b str r3, [r7, #32] 8003268: 6a3b ldr r3, [r7, #32] 800326a: 61fb str r3, [r7, #28] 800326c: 687b ldr r3, [r7, #4] 800326e: 681b ldr r3, [r3, #0] 8003270: 4618 mov r0, r3 8003272: f005 fd76 bl 8008d62 8003276: 4603 mov r3, r0 8003278: 2b00 cmp r3, #0 800327a: f040 84b9 bne.w 8003bf0 800327e: 687b ldr r3, [r7, #4] 8003280: 681b ldr r3, [r3, #0] 8003282: 4618 mov r0, r3 8003284: f005 fcda bl 8008c3c 8003288: 4603 mov r3, r0 800328a: 2b00 cmp r3, #0 800328c: f000 84af beq.w 8003bee 8003290: 69fb ldr r3, [r7, #28] 8003292: f503 6300 add.w r3, r3, #2048 @ 0x800 8003296: 689b ldr r3, [r3, #8] 8003298: 0a1b lsrs r3, r3, #8 800329a: f3c3 020d ubfx r2, r3, #0, #14 800329e: 687b ldr r3, [r7, #4] 80032a0: f8c3 24d4 str.w r2, [r3, #1236] @ 0x4d4 80032a4: 687b ldr r3, [r7, #4] 80032a6: 681b ldr r3, [r3, #0] 80032a8: 4618 mov r0, r3 80032aa: f005 fcc7 bl 8008c3c 80032ae: 4603 mov r3, r0 80032b0: f003 0302 and.w r3, r3, #2 80032b4: 2b02 cmp r3, #2 80032b6: d107 bne.n 80032c8 80032b8: 687b ldr r3, [r7, #4] 80032ba: 681b ldr r3, [r3, #0] 80032bc: 695a ldr r2, [r3, #20] 80032be: 687b ldr r3, [r7, #4] 80032c0: 681b ldr r3, [r3, #0] 80032c2: f002 0202 and.w r2, r2, #2 80032c6: 615a str r2, [r3, #20] 80032c8: 687b ldr r3, [r7, #4] 80032ca: 681b ldr r3, [r3, #0] 80032cc: 4618 mov r0, r3 80032ce: f005 fcb5 bl 8008c3c 80032d2: 4603 mov r3, r0 80032d4: f003 0310 and.w r3, r3, #16 80032d8: 2b10 cmp r3, #16 80032da: d161 bne.n 80033a0 80032dc: 687b ldr r3, [r7, #4] 80032de: 681b ldr r3, [r3, #0] 80032e0: 699a ldr r2, [r3, #24] 80032e2: 687b ldr r3, [r7, #4] 80032e4: 681b ldr r3, [r3, #0] 80032e6: f022 0210 bic.w r2, r2, #16 80032ea: 619a str r2, [r3, #24] 80032ec: 6a3b ldr r3, [r7, #32] 80032ee: 6a1b ldr r3, [r3, #32] 80032f0: 61bb str r3, [r7, #24] 80032f2: 69bb ldr r3, [r7, #24] 80032f4: f003 020f and.w r2, r3, #15 80032f8: 4613 mov r3, r2 80032fa: 00db lsls r3, r3, #3 80032fc: 4413 add r3, r2 80032fe: 009b lsls r3, r3, #2 8003300: f503 7314 add.w r3, r3, #592 @ 0x250 8003304: 687a ldr r2, [r7, #4] 8003306: 4413 add r3, r2 8003308: 3304 adds r3, #4 800330a: 617b str r3, [r7, #20] 800330c: 69bb ldr r3, [r7, #24] 800330e: f403 13f0 and.w r3, r3, #1966080 @ 0x1e0000 8003312: f5b3 2f80 cmp.w r3, #262144 @ 0x40000 8003316: d124 bne.n 8003362 8003318: 69ba ldr r2, [r7, #24] 800331a: f647 73f0 movw r3, #32752 @ 0x7ff0 800331e: 4013 ands r3, r2 8003320: 2b00 cmp r3, #0 8003322: d035 beq.n 8003390 8003324: 697b ldr r3, [r7, #20] 8003326: 68d9 ldr r1, [r3, #12] 8003328: 69bb ldr r3, [r7, #24] 800332a: 091b lsrs r3, r3, #4 800332c: b29b uxth r3, r3 800332e: f3c3 030a ubfx r3, r3, #0, #11 8003332: b29b uxth r3, r3 8003334: 461a mov r2, r3 8003336: 6a38 ldr r0, [r7, #32] 8003338: f005 faec bl 8008914 800333c: 697b ldr r3, [r7, #20] 800333e: 68da ldr r2, [r3, #12] 8003340: 69bb ldr r3, [r7, #24] 8003342: 091b lsrs r3, r3, #4 8003344: f3c3 030a ubfx r3, r3, #0, #11 8003348: 441a add r2, r3 800334a: 697b ldr r3, [r7, #20] 800334c: 60da str r2, [r3, #12] 800334e: 697b ldr r3, [r7, #20] 8003350: 695a ldr r2, [r3, #20] 8003352: 69bb ldr r3, [r7, #24] 8003354: 091b lsrs r3, r3, #4 8003356: f3c3 030a ubfx r3, r3, #0, #11 800335a: 441a add r2, r3 800335c: 697b ldr r3, [r7, #20] 800335e: 615a str r2, [r3, #20] 8003360: e016 b.n 8003390 8003362: 69bb ldr r3, [r7, #24] 8003364: f403 13f0 and.w r3, r3, #1966080 @ 0x1e0000 8003368: f5b3 2f40 cmp.w r3, #786432 @ 0xc0000 800336c: d110 bne.n 8003390 800336e: 687b ldr r3, [r7, #4] 8003370: f203 439c addw r3, r3, #1180 @ 0x49c 8003374: 2208 movs r2, #8 8003376: 4619 mov r1, r3 8003378: 6a38 ldr r0, [r7, #32] 800337a: f005 facb bl 8008914 800337e: 697b ldr r3, [r7, #20] 8003380: 695a ldr r2, [r3, #20] 8003382: 69bb ldr r3, [r7, #24] 8003384: 091b lsrs r3, r3, #4 8003386: f3c3 030a ubfx r3, r3, #0, #11 800338a: 441a add r2, r3 800338c: 697b ldr r3, [r7, #20] 800338e: 615a str r2, [r3, #20] 8003390: 687b ldr r3, [r7, #4] 8003392: 681b ldr r3, [r3, #0] 8003394: 699a ldr r2, [r3, #24] 8003396: 687b ldr r3, [r7, #4] 8003398: 681b ldr r3, [r3, #0] 800339a: f042 0210 orr.w r2, r2, #16 800339e: 619a str r2, [r3, #24] 80033a0: 687b ldr r3, [r7, #4] 80033a2: 681b ldr r3, [r3, #0] 80033a4: 4618 mov r0, r3 80033a6: f005 fc49 bl 8008c3c 80033aa: 4603 mov r3, r0 80033ac: f403 2300 and.w r3, r3, #524288 @ 0x80000 80033b0: f5b3 2f00 cmp.w r3, #524288 @ 0x80000 80033b4: f040 80a7 bne.w 8003506 80033b8: 2300 movs r3, #0 80033ba: 627b str r3, [r7, #36] @ 0x24 80033bc: 687b ldr r3, [r7, #4] 80033be: 681b ldr r3, [r3, #0] 80033c0: 4618 mov r0, r3 80033c2: f005 fc4e bl 8008c62 80033c6: 62b8 str r0, [r7, #40] @ 0x28 80033c8: e099 b.n 80034fe 80033ca: 6abb ldr r3, [r7, #40] @ 0x28 80033cc: f003 0301 and.w r3, r3, #1 80033d0: 2b00 cmp r3, #0 80033d2: f000 808e beq.w 80034f2 80033d6: 687b ldr r3, [r7, #4] 80033d8: 681b ldr r3, [r3, #0] 80033da: 6a7a ldr r2, [r7, #36] @ 0x24 80033dc: b2d2 uxtb r2, r2 80033de: 4611 mov r1, r2 80033e0: 4618 mov r0, r3 80033e2: f005 fc72 bl 8008cca 80033e6: 6138 str r0, [r7, #16] 80033e8: 693b ldr r3, [r7, #16] 80033ea: f003 0301 and.w r3, r3, #1 80033ee: 2b00 cmp r3, #0 80033f0: d00c beq.n 800340c 80033f2: 6a7b ldr r3, [r7, #36] @ 0x24 80033f4: 015a lsls r2, r3, #5 80033f6: 69fb ldr r3, [r7, #28] 80033f8: 4413 add r3, r2 80033fa: f503 6330 add.w r3, r3, #2816 @ 0xb00 80033fe: 461a mov r2, r3 8003400: 2301 movs r3, #1 8003402: 6093 str r3, [r2, #8] 8003404: 6a79 ldr r1, [r7, #36] @ 0x24 8003406: 6878 ldr r0, [r7, #4] 8003408: f000 feb8 bl 800417c 800340c: 693b ldr r3, [r7, #16] 800340e: f003 0308 and.w r3, r3, #8 8003412: 2b00 cmp r3, #0 8003414: d00c beq.n 8003430 8003416: 6a7b ldr r3, [r7, #36] @ 0x24 8003418: 015a lsls r2, r3, #5 800341a: 69fb ldr r3, [r7, #28] 800341c: 4413 add r3, r2 800341e: f503 6330 add.w r3, r3, #2816 @ 0xb00 8003422: 461a mov r2, r3 8003424: 2308 movs r3, #8 8003426: 6093 str r3, [r2, #8] 8003428: 6a79 ldr r1, [r7, #36] @ 0x24 800342a: 6878 ldr r0, [r7, #4] 800342c: f000 ff8e bl 800434c 8003430: 693b ldr r3, [r7, #16] 8003432: f003 0310 and.w r3, r3, #16 8003436: 2b00 cmp r3, #0 8003438: d008 beq.n 800344c 800343a: 6a7b ldr r3, [r7, #36] @ 0x24 800343c: 015a lsls r2, r3, #5 800343e: 69fb ldr r3, [r7, #28] 8003440: 4413 add r3, r2 8003442: f503 6330 add.w r3, r3, #2816 @ 0xb00 8003446: 461a mov r2, r3 8003448: 2310 movs r3, #16 800344a: 6093 str r3, [r2, #8] 800344c: 693b ldr r3, [r7, #16] 800344e: f003 0302 and.w r3, r3, #2 8003452: 2b00 cmp r3, #0 8003454: d030 beq.n 80034b8 8003456: 6a3b ldr r3, [r7, #32] 8003458: 695b ldr r3, [r3, #20] 800345a: f003 0380 and.w r3, r3, #128 @ 0x80 800345e: 2b80 cmp r3, #128 @ 0x80 8003460: d109 bne.n 8003476 8003462: 69fb ldr r3, [r7, #28] 8003464: f503 6300 add.w r3, r3, #2048 @ 0x800 8003468: 685b ldr r3, [r3, #4] 800346a: 69fa ldr r2, [r7, #28] 800346c: f502 6200 add.w r2, r2, #2048 @ 0x800 8003470: f443 6380 orr.w r3, r3, #1024 @ 0x400 8003474: 6053 str r3, [r2, #4] 8003476: 6a7a ldr r2, [r7, #36] @ 0x24 8003478: 4613 mov r3, r2 800347a: 00db lsls r3, r3, #3 800347c: 4413 add r3, r2 800347e: 009b lsls r3, r3, #2 8003480: f503 7314 add.w r3, r3, #592 @ 0x250 8003484: 687a ldr r2, [r7, #4] 8003486: 4413 add r3, r2 8003488: 3304 adds r3, #4 800348a: 617b str r3, [r7, #20] 800348c: 697b ldr r3, [r7, #20] 800348e: 78db ldrb r3, [r3, #3] 8003490: 2b01 cmp r3, #1 8003492: d108 bne.n 80034a6 8003494: 697b ldr r3, [r7, #20] 8003496: 2200 movs r2, #0 8003498: 70da strb r2, [r3, #3] 800349a: 6a7b ldr r3, [r7, #36] @ 0x24 800349c: b2db uxtb r3, r3 800349e: 4619 mov r1, r3 80034a0: 6878 ldr r0, [r7, #4] 80034a2: f007 fd0b bl 800aebc 80034a6: 6a7b ldr r3, [r7, #36] @ 0x24 80034a8: 015a lsls r2, r3, #5 80034aa: 69fb ldr r3, [r7, #28] 80034ac: 4413 add r3, r2 80034ae: f503 6330 add.w r3, r3, #2816 @ 0xb00 80034b2: 461a mov r2, r3 80034b4: 2302 movs r3, #2 80034b6: 6093 str r3, [r2, #8] 80034b8: 693b ldr r3, [r7, #16] 80034ba: f003 0320 and.w r3, r3, #32 80034be: 2b00 cmp r3, #0 80034c0: d008 beq.n 80034d4 80034c2: 6a7b ldr r3, [r7, #36] @ 0x24 80034c4: 015a lsls r2, r3, #5 80034c6: 69fb ldr r3, [r7, #28] 80034c8: 4413 add r3, r2 80034ca: f503 6330 add.w r3, r3, #2816 @ 0xb00 80034ce: 461a mov r2, r3 80034d0: 2320 movs r3, #32 80034d2: 6093 str r3, [r2, #8] 80034d4: 693b ldr r3, [r7, #16] 80034d6: f403 5300 and.w r3, r3, #8192 @ 0x2000 80034da: 2b00 cmp r3, #0 80034dc: d009 beq.n 80034f2 80034de: 6a7b ldr r3, [r7, #36] @ 0x24 80034e0: 015a lsls r2, r3, #5 80034e2: 69fb ldr r3, [r7, #28] 80034e4: 4413 add r3, r2 80034e6: f503 6330 add.w r3, r3, #2816 @ 0xb00 80034ea: 461a mov r2, r3 80034ec: f44f 5300 mov.w r3, #8192 @ 0x2000 80034f0: 6093 str r3, [r2, #8] 80034f2: 6a7b ldr r3, [r7, #36] @ 0x24 80034f4: 3301 adds r3, #1 80034f6: 627b str r3, [r7, #36] @ 0x24 80034f8: 6abb ldr r3, [r7, #40] @ 0x28 80034fa: 085b lsrs r3, r3, #1 80034fc: 62bb str r3, [r7, #40] @ 0x28 80034fe: 6abb ldr r3, [r7, #40] @ 0x28 8003500: 2b00 cmp r3, #0 8003502: f47f af62 bne.w 80033ca 8003506: 687b ldr r3, [r7, #4] 8003508: 681b ldr r3, [r3, #0] 800350a: 4618 mov r0, r3 800350c: f005 fb96 bl 8008c3c 8003510: 4603 mov r3, r0 8003512: f403 2380 and.w r3, r3, #262144 @ 0x40000 8003516: f5b3 2f80 cmp.w r3, #262144 @ 0x40000 800351a: f040 80db bne.w 80036d4 800351e: 687b ldr r3, [r7, #4] 8003520: 681b ldr r3, [r3, #0] 8003522: 4618 mov r0, r3 8003524: f005 fbb7 bl 8008c96 8003528: 62b8 str r0, [r7, #40] @ 0x28 800352a: 2300 movs r3, #0 800352c: 627b str r3, [r7, #36] @ 0x24 800352e: e0cd b.n 80036cc 8003530: 6abb ldr r3, [r7, #40] @ 0x28 8003532: f003 0301 and.w r3, r3, #1 8003536: 2b00 cmp r3, #0 8003538: f000 80c2 beq.w 80036c0 800353c: 687b ldr r3, [r7, #4] 800353e: 681b ldr r3, [r3, #0] 8003540: 6a7a ldr r2, [r7, #36] @ 0x24 8003542: b2d2 uxtb r2, r2 8003544: 4611 mov r1, r2 8003546: 4618 mov r0, r3 8003548: f005 fbdd bl 8008d06 800354c: 6138 str r0, [r7, #16] 800354e: 693b ldr r3, [r7, #16] 8003550: f003 0301 and.w r3, r3, #1 8003554: 2b00 cmp r3, #0 8003556: d057 beq.n 8003608 8003558: 6a7b ldr r3, [r7, #36] @ 0x24 800355a: f003 030f and.w r3, r3, #15 800355e: 2201 movs r2, #1 8003560: fa02 f303 lsl.w r3, r2, r3 8003564: 60fb str r3, [r7, #12] 8003566: 69fb ldr r3, [r7, #28] 8003568: f503 6300 add.w r3, r3, #2048 @ 0x800 800356c: 6b5a ldr r2, [r3, #52] @ 0x34 800356e: 68fb ldr r3, [r7, #12] 8003570: 43db mvns r3, r3 8003572: 69f9 ldr r1, [r7, #28] 8003574: f501 6100 add.w r1, r1, #2048 @ 0x800 8003578: 4013 ands r3, r2 800357a: 634b str r3, [r1, #52] @ 0x34 800357c: 6a7b ldr r3, [r7, #36] @ 0x24 800357e: 015a lsls r2, r3, #5 8003580: 69fb ldr r3, [r7, #28] 8003582: 4413 add r3, r2 8003584: f503 6310 add.w r3, r3, #2304 @ 0x900 8003588: 461a mov r2, r3 800358a: 2301 movs r3, #1 800358c: 6093 str r3, [r2, #8] 800358e: 687b ldr r3, [r7, #4] 8003590: 799b ldrb r3, [r3, #6] 8003592: 2b01 cmp r3, #1 8003594: d132 bne.n 80035fc 8003596: 6879 ldr r1, [r7, #4] 8003598: 6a7a ldr r2, [r7, #36] @ 0x24 800359a: 4613 mov r3, r2 800359c: 00db lsls r3, r3, #3 800359e: 4413 add r3, r2 80035a0: 009b lsls r3, r3, #2 80035a2: 440b add r3, r1 80035a4: 3320 adds r3, #32 80035a6: 6819 ldr r1, [r3, #0] 80035a8: 6878 ldr r0, [r7, #4] 80035aa: 6a7a ldr r2, [r7, #36] @ 0x24 80035ac: 4613 mov r3, r2 80035ae: 00db lsls r3, r3, #3 80035b0: 4413 add r3, r2 80035b2: 009b lsls r3, r3, #2 80035b4: 4403 add r3, r0 80035b6: 331c adds r3, #28 80035b8: 681b ldr r3, [r3, #0] 80035ba: 4419 add r1, r3 80035bc: 6878 ldr r0, [r7, #4] 80035be: 6a7a ldr r2, [r7, #36] @ 0x24 80035c0: 4613 mov r3, r2 80035c2: 00db lsls r3, r3, #3 80035c4: 4413 add r3, r2 80035c6: 009b lsls r3, r3, #2 80035c8: 4403 add r3, r0 80035ca: 3320 adds r3, #32 80035cc: 6019 str r1, [r3, #0] 80035ce: 6a7b ldr r3, [r7, #36] @ 0x24 80035d0: 2b00 cmp r3, #0 80035d2: d113 bne.n 80035fc 80035d4: 6879 ldr r1, [r7, #4] 80035d6: 6a7a ldr r2, [r7, #36] @ 0x24 80035d8: 4613 mov r3, r2 80035da: 00db lsls r3, r3, #3 80035dc: 4413 add r3, r2 80035de: 009b lsls r3, r3, #2 80035e0: 440b add r3, r1 80035e2: 3324 adds r3, #36 @ 0x24 80035e4: 681b ldr r3, [r3, #0] 80035e6: 2b00 cmp r3, #0 80035e8: d108 bne.n 80035fc 80035ea: 687b ldr r3, [r7, #4] 80035ec: 6818 ldr r0, [r3, #0] 80035ee: 687b ldr r3, [r7, #4] 80035f0: f203 439c addw r3, r3, #1180 @ 0x49c 80035f4: 461a mov r2, r3 80035f6: 2101 movs r1, #1 80035f8: f005 fbe4 bl 8008dc4 80035fc: 6a7b ldr r3, [r7, #36] @ 0x24 80035fe: b2db uxtb r3, r3 8003600: 4619 mov r1, r3 8003602: 6878 ldr r0, [r7, #4] 8003604: f007 fbd5 bl 800adb2 8003608: 693b ldr r3, [r7, #16] 800360a: f003 0308 and.w r3, r3, #8 800360e: 2b00 cmp r3, #0 8003610: d008 beq.n 8003624 8003612: 6a7b ldr r3, [r7, #36] @ 0x24 8003614: 015a lsls r2, r3, #5 8003616: 69fb ldr r3, [r7, #28] 8003618: 4413 add r3, r2 800361a: f503 6310 add.w r3, r3, #2304 @ 0x900 800361e: 461a mov r2, r3 8003620: 2308 movs r3, #8 8003622: 6093 str r3, [r2, #8] 8003624: 693b ldr r3, [r7, #16] 8003626: f003 0310 and.w r3, r3, #16 800362a: 2b00 cmp r3, #0 800362c: d008 beq.n 8003640 800362e: 6a7b ldr r3, [r7, #36] @ 0x24 8003630: 015a lsls r2, r3, #5 8003632: 69fb ldr r3, [r7, #28] 8003634: 4413 add r3, r2 8003636: f503 6310 add.w r3, r3, #2304 @ 0x900 800363a: 461a mov r2, r3 800363c: 2310 movs r3, #16 800363e: 6093 str r3, [r2, #8] 8003640: 693b ldr r3, [r7, #16] 8003642: f003 0340 and.w r3, r3, #64 @ 0x40 8003646: 2b00 cmp r3, #0 8003648: d008 beq.n 800365c 800364a: 6a7b ldr r3, [r7, #36] @ 0x24 800364c: 015a lsls r2, r3, #5 800364e: 69fb ldr r3, [r7, #28] 8003650: 4413 add r3, r2 8003652: f503 6310 add.w r3, r3, #2304 @ 0x900 8003656: 461a mov r2, r3 8003658: 2340 movs r3, #64 @ 0x40 800365a: 6093 str r3, [r2, #8] 800365c: 693b ldr r3, [r7, #16] 800365e: f003 0302 and.w r3, r3, #2 8003662: 2b00 cmp r3, #0 8003664: d023 beq.n 80036ae 8003666: 6a79 ldr r1, [r7, #36] @ 0x24 8003668: 6a38 ldr r0, [r7, #32] 800366a: f004 fbcb bl 8007e04 800366e: 6a7a ldr r2, [r7, #36] @ 0x24 8003670: 4613 mov r3, r2 8003672: 00db lsls r3, r3, #3 8003674: 4413 add r3, r2 8003676: 009b lsls r3, r3, #2 8003678: 3310 adds r3, #16 800367a: 687a ldr r2, [r7, #4] 800367c: 4413 add r3, r2 800367e: 3304 adds r3, #4 8003680: 617b str r3, [r7, #20] 8003682: 697b ldr r3, [r7, #20] 8003684: 78db ldrb r3, [r3, #3] 8003686: 2b01 cmp r3, #1 8003688: d108 bne.n 800369c 800368a: 697b ldr r3, [r7, #20] 800368c: 2200 movs r2, #0 800368e: 70da strb r2, [r3, #3] 8003690: 6a7b ldr r3, [r7, #36] @ 0x24 8003692: b2db uxtb r3, r3 8003694: 4619 mov r1, r3 8003696: 6878 ldr r0, [r7, #4] 8003698: f007 fc22 bl 800aee0 800369c: 6a7b ldr r3, [r7, #36] @ 0x24 800369e: 015a lsls r2, r3, #5 80036a0: 69fb ldr r3, [r7, #28] 80036a2: 4413 add r3, r2 80036a4: f503 6310 add.w r3, r3, #2304 @ 0x900 80036a8: 461a mov r2, r3 80036aa: 2302 movs r3, #2 80036ac: 6093 str r3, [r2, #8] 80036ae: 693b ldr r3, [r7, #16] 80036b0: f003 0380 and.w r3, r3, #128 @ 0x80 80036b4: 2b00 cmp r3, #0 80036b6: d003 beq.n 80036c0 80036b8: 6a79 ldr r1, [r7, #36] @ 0x24 80036ba: 6878 ldr r0, [r7, #4] 80036bc: f000 fcd2 bl 8004064 80036c0: 6a7b ldr r3, [r7, #36] @ 0x24 80036c2: 3301 adds r3, #1 80036c4: 627b str r3, [r7, #36] @ 0x24 80036c6: 6abb ldr r3, [r7, #40] @ 0x28 80036c8: 085b lsrs r3, r3, #1 80036ca: 62bb str r3, [r7, #40] @ 0x28 80036cc: 6abb ldr r3, [r7, #40] @ 0x28 80036ce: 2b00 cmp r3, #0 80036d0: f47f af2e bne.w 8003530 80036d4: 687b ldr r3, [r7, #4] 80036d6: 681b ldr r3, [r3, #0] 80036d8: 4618 mov r0, r3 80036da: f005 faaf bl 8008c3c 80036de: 4603 mov r3, r0 80036e0: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 80036e4: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 80036e8: d122 bne.n 8003730 80036ea: 69fb ldr r3, [r7, #28] 80036ec: f503 6300 add.w r3, r3, #2048 @ 0x800 80036f0: 685b ldr r3, [r3, #4] 80036f2: 69fa ldr r2, [r7, #28] 80036f4: f502 6200 add.w r2, r2, #2048 @ 0x800 80036f8: f023 0301 bic.w r3, r3, #1 80036fc: 6053 str r3, [r2, #4] 80036fe: 687b ldr r3, [r7, #4] 8003700: f893 34cc ldrb.w r3, [r3, #1228] @ 0x4cc 8003704: 2b01 cmp r3, #1 8003706: d108 bne.n 800371a 8003708: 687b ldr r3, [r7, #4] 800370a: 2200 movs r2, #0 800370c: f883 24cc strb.w r2, [r3, #1228] @ 0x4cc 8003710: 2100 movs r1, #0 8003712: 6878 ldr r0, [r7, #4] 8003714: f007 fd8a bl 800b22c 8003718: e002 b.n 8003720 800371a: 6878 ldr r0, [r7, #4] 800371c: f007 fbc0 bl 800aea0 8003720: 687b ldr r3, [r7, #4] 8003722: 681b ldr r3, [r3, #0] 8003724: 695a ldr r2, [r3, #20] 8003726: 687b ldr r3, [r7, #4] 8003728: 681b ldr r3, [r3, #0] 800372a: f002 4200 and.w r2, r2, #2147483648 @ 0x80000000 800372e: 615a str r2, [r3, #20] 8003730: 687b ldr r3, [r7, #4] 8003732: 681b ldr r3, [r3, #0] 8003734: 4618 mov r0, r3 8003736: f005 fa81 bl 8008c3c 800373a: 4603 mov r3, r0 800373c: f403 6300 and.w r3, r3, #2048 @ 0x800 8003740: f5b3 6f00 cmp.w r3, #2048 @ 0x800 8003744: d112 bne.n 800376c 8003746: 69fb ldr r3, [r7, #28] 8003748: f503 6300 add.w r3, r3, #2048 @ 0x800 800374c: 689b ldr r3, [r3, #8] 800374e: f003 0301 and.w r3, r3, #1 8003752: 2b01 cmp r3, #1 8003754: d102 bne.n 800375c 8003756: 6878 ldr r0, [r7, #4] 8003758: f007 fb7c bl 800ae54 800375c: 687b ldr r3, [r7, #4] 800375e: 681b ldr r3, [r3, #0] 8003760: 695a ldr r2, [r3, #20] 8003762: 687b ldr r3, [r7, #4] 8003764: 681b ldr r3, [r3, #0] 8003766: f402 6200 and.w r2, r2, #2048 @ 0x800 800376a: 615a str r2, [r3, #20] 800376c: 687b ldr r3, [r7, #4] 800376e: 681b ldr r3, [r3, #0] 8003770: 4618 mov r0, r3 8003772: f005 fa63 bl 8008c3c 8003776: 4603 mov r3, r0 8003778: f003 6300 and.w r3, r3, #134217728 @ 0x8000000 800377c: f1b3 6f00 cmp.w r3, #134217728 @ 0x8000000 8003780: d121 bne.n 80037c6 8003782: 687b ldr r3, [r7, #4] 8003784: 681b ldr r3, [r3, #0] 8003786: 695a ldr r2, [r3, #20] 8003788: 687b ldr r3, [r7, #4] 800378a: 681b ldr r3, [r3, #0] 800378c: f002 6200 and.w r2, r2, #134217728 @ 0x8000000 8003790: 615a str r2, [r3, #20] 8003792: 687b ldr r3, [r7, #4] 8003794: f893 34cc ldrb.w r3, [r3, #1228] @ 0x4cc 8003798: 2b00 cmp r3, #0 800379a: d111 bne.n 80037c0 800379c: 687b ldr r3, [r7, #4] 800379e: 2201 movs r2, #1 80037a0: f883 24cc strb.w r2, [r3, #1228] @ 0x4cc 80037a4: 687b ldr r3, [r7, #4] 80037a6: 681b ldr r3, [r3, #0] 80037a8: 6d5b ldr r3, [r3, #84] @ 0x54 80037aa: 089b lsrs r3, r3, #2 80037ac: f003 020f and.w r2, r3, #15 80037b0: 687b ldr r3, [r7, #4] 80037b2: f8c3 24d0 str.w r2, [r3, #1232] @ 0x4d0 80037b6: 2101 movs r1, #1 80037b8: 6878 ldr r0, [r7, #4] 80037ba: f007 fd37 bl 800b22c 80037be: e002 b.n 80037c6 80037c0: 6878 ldr r0, [r7, #4] 80037c2: f007 fb47 bl 800ae54 80037c6: 687b ldr r3, [r7, #4] 80037c8: 681b ldr r3, [r3, #0] 80037ca: 4618 mov r0, r3 80037cc: f005 fa36 bl 8008c3c 80037d0: 4603 mov r3, r0 80037d2: f403 5380 and.w r3, r3, #4096 @ 0x1000 80037d6: f5b3 5f80 cmp.w r3, #4096 @ 0x1000 80037da: f040 80b7 bne.w 800394c 80037de: 69fb ldr r3, [r7, #28] 80037e0: f503 6300 add.w r3, r3, #2048 @ 0x800 80037e4: 685b ldr r3, [r3, #4] 80037e6: 69fa ldr r2, [r7, #28] 80037e8: f502 6200 add.w r2, r2, #2048 @ 0x800 80037ec: f023 0301 bic.w r3, r3, #1 80037f0: 6053 str r3, [r2, #4] 80037f2: 687b ldr r3, [r7, #4] 80037f4: 681b ldr r3, [r3, #0] 80037f6: 2110 movs r1, #16 80037f8: 4618 mov r0, r3 80037fa: f004 fb03 bl 8007e04 80037fe: 2300 movs r3, #0 8003800: 62fb str r3, [r7, #44] @ 0x2c 8003802: e046 b.n 8003892 8003804: 6afb ldr r3, [r7, #44] @ 0x2c 8003806: 015a lsls r2, r3, #5 8003808: 69fb ldr r3, [r7, #28] 800380a: 4413 add r3, r2 800380c: f503 6310 add.w r3, r3, #2304 @ 0x900 8003810: 461a mov r2, r3 8003812: f64f 337f movw r3, #64383 @ 0xfb7f 8003816: 6093 str r3, [r2, #8] 8003818: 6afb ldr r3, [r7, #44] @ 0x2c 800381a: 015a lsls r2, r3, #5 800381c: 69fb ldr r3, [r7, #28] 800381e: 4413 add r3, r2 8003820: f503 6310 add.w r3, r3, #2304 @ 0x900 8003824: 681b ldr r3, [r3, #0] 8003826: 6afa ldr r2, [r7, #44] @ 0x2c 8003828: 0151 lsls r1, r2, #5 800382a: 69fa ldr r2, [r7, #28] 800382c: 440a add r2, r1 800382e: f502 6210 add.w r2, r2, #2304 @ 0x900 8003832: f423 1300 bic.w r3, r3, #2097152 @ 0x200000 8003836: 6013 str r3, [r2, #0] 8003838: 6afb ldr r3, [r7, #44] @ 0x2c 800383a: 015a lsls r2, r3, #5 800383c: 69fb ldr r3, [r7, #28] 800383e: 4413 add r3, r2 8003840: f503 6330 add.w r3, r3, #2816 @ 0xb00 8003844: 461a mov r2, r3 8003846: f64f 337f movw r3, #64383 @ 0xfb7f 800384a: 6093 str r3, [r2, #8] 800384c: 6afb ldr r3, [r7, #44] @ 0x2c 800384e: 015a lsls r2, r3, #5 8003850: 69fb ldr r3, [r7, #28] 8003852: 4413 add r3, r2 8003854: f503 6330 add.w r3, r3, #2816 @ 0xb00 8003858: 681b ldr r3, [r3, #0] 800385a: 6afa ldr r2, [r7, #44] @ 0x2c 800385c: 0151 lsls r1, r2, #5 800385e: 69fa ldr r2, [r7, #28] 8003860: 440a add r2, r1 8003862: f502 6230 add.w r2, r2, #2816 @ 0xb00 8003866: f423 1300 bic.w r3, r3, #2097152 @ 0x200000 800386a: 6013 str r3, [r2, #0] 800386c: 6afb ldr r3, [r7, #44] @ 0x2c 800386e: 015a lsls r2, r3, #5 8003870: 69fb ldr r3, [r7, #28] 8003872: 4413 add r3, r2 8003874: f503 6330 add.w r3, r3, #2816 @ 0xb00 8003878: 681b ldr r3, [r3, #0] 800387a: 6afa ldr r2, [r7, #44] @ 0x2c 800387c: 0151 lsls r1, r2, #5 800387e: 69fa ldr r2, [r7, #28] 8003880: 440a add r2, r1 8003882: f502 6230 add.w r2, r2, #2816 @ 0xb00 8003886: f043 6300 orr.w r3, r3, #134217728 @ 0x8000000 800388a: 6013 str r3, [r2, #0] 800388c: 6afb ldr r3, [r7, #44] @ 0x2c 800388e: 3301 adds r3, #1 8003890: 62fb str r3, [r7, #44] @ 0x2c 8003892: 687b ldr r3, [r7, #4] 8003894: 791b ldrb r3, [r3, #4] 8003896: 461a mov r2, r3 8003898: 6afb ldr r3, [r7, #44] @ 0x2c 800389a: 4293 cmp r3, r2 800389c: d3b2 bcc.n 8003804 800389e: 69fb ldr r3, [r7, #28] 80038a0: f503 6300 add.w r3, r3, #2048 @ 0x800 80038a4: 69db ldr r3, [r3, #28] 80038a6: 69fa ldr r2, [r7, #28] 80038a8: f502 6200 add.w r2, r2, #2048 @ 0x800 80038ac: f043 1301 orr.w r3, r3, #65537 @ 0x10001 80038b0: 61d3 str r3, [r2, #28] 80038b2: 687b ldr r3, [r7, #4] 80038b4: 7bdb ldrb r3, [r3, #15] 80038b6: 2b00 cmp r3, #0 80038b8: d016 beq.n 80038e8 80038ba: 69fb ldr r3, [r7, #28] 80038bc: f503 6300 add.w r3, r3, #2048 @ 0x800 80038c0: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 80038c4: 69fa ldr r2, [r7, #28] 80038c6: f502 6200 add.w r2, r2, #2048 @ 0x800 80038ca: f043 030b orr.w r3, r3, #11 80038ce: f8c2 3084 str.w r3, [r2, #132] @ 0x84 80038d2: 69fb ldr r3, [r7, #28] 80038d4: f503 6300 add.w r3, r3, #2048 @ 0x800 80038d8: 6c5b ldr r3, [r3, #68] @ 0x44 80038da: 69fa ldr r2, [r7, #28] 80038dc: f502 6200 add.w r2, r2, #2048 @ 0x800 80038e0: f043 030b orr.w r3, r3, #11 80038e4: 6453 str r3, [r2, #68] @ 0x44 80038e6: e015 b.n 8003914 80038e8: 69fb ldr r3, [r7, #28] 80038ea: f503 6300 add.w r3, r3, #2048 @ 0x800 80038ee: 695b ldr r3, [r3, #20] 80038f0: 69fa ldr r2, [r7, #28] 80038f2: f502 6200 add.w r2, r2, #2048 @ 0x800 80038f6: f443 5300 orr.w r3, r3, #8192 @ 0x2000 80038fa: f043 032b orr.w r3, r3, #43 @ 0x2b 80038fe: 6153 str r3, [r2, #20] 8003900: 69fb ldr r3, [r7, #28] 8003902: f503 6300 add.w r3, r3, #2048 @ 0x800 8003906: 691b ldr r3, [r3, #16] 8003908: 69fa ldr r2, [r7, #28] 800390a: f502 6200 add.w r2, r2, #2048 @ 0x800 800390e: f043 030b orr.w r3, r3, #11 8003912: 6113 str r3, [r2, #16] 8003914: 69fb ldr r3, [r7, #28] 8003916: f503 6300 add.w r3, r3, #2048 @ 0x800 800391a: 681b ldr r3, [r3, #0] 800391c: 69fa ldr r2, [r7, #28] 800391e: f502 6200 add.w r2, r2, #2048 @ 0x800 8003922: f423 63fe bic.w r3, r3, #2032 @ 0x7f0 8003926: 6013 str r3, [r2, #0] 8003928: 687b ldr r3, [r7, #4] 800392a: 6818 ldr r0, [r3, #0] 800392c: 687b ldr r3, [r7, #4] 800392e: 7999 ldrb r1, [r3, #6] 8003930: 687b ldr r3, [r7, #4] 8003932: f203 439c addw r3, r3, #1180 @ 0x49c 8003936: 461a mov r2, r3 8003938: f005 fa44 bl 8008dc4 800393c: 687b ldr r3, [r7, #4] 800393e: 681b ldr r3, [r3, #0] 8003940: 695a ldr r2, [r3, #20] 8003942: 687b ldr r3, [r7, #4] 8003944: 681b ldr r3, [r3, #0] 8003946: f402 5280 and.w r2, r2, #4096 @ 0x1000 800394a: 615a str r2, [r3, #20] 800394c: 687b ldr r3, [r7, #4] 800394e: 681b ldr r3, [r3, #0] 8003950: 4618 mov r0, r3 8003952: f005 f973 bl 8008c3c 8003956: 4603 mov r3, r0 8003958: f403 5300 and.w r3, r3, #8192 @ 0x2000 800395c: f5b3 5f00 cmp.w r3, #8192 @ 0x2000 8003960: d123 bne.n 80039aa 8003962: 687b ldr r3, [r7, #4] 8003964: 681b ldr r3, [r3, #0] 8003966: 4618 mov r0, r3 8003968: f005 fa09 bl 8008d7e 800396c: 687b ldr r3, [r7, #4] 800396e: 681b ldr r3, [r3, #0] 8003970: 4618 mov r0, r3 8003972: f004 fac0 bl 8007ef6 8003976: 4603 mov r3, r0 8003978: 461a mov r2, r3 800397a: 687b ldr r3, [r7, #4] 800397c: 71da strb r2, [r3, #7] 800397e: 687b ldr r3, [r7, #4] 8003980: 681c ldr r4, [r3, #0] 8003982: f000 fe8b bl 800469c 8003986: 4601 mov r1, r0 8003988: 687b ldr r3, [r7, #4] 800398a: 79db ldrb r3, [r3, #7] 800398c: 461a mov r2, r3 800398e: 4620 mov r0, r4 8003990: f003 ffca bl 8007928 8003994: 6878 ldr r0, [r7, #4] 8003996: f007 fa34 bl 800ae02 800399a: 687b ldr r3, [r7, #4] 800399c: 681b ldr r3, [r3, #0] 800399e: 695a ldr r2, [r3, #20] 80039a0: 687b ldr r3, [r7, #4] 80039a2: 681b ldr r3, [r3, #0] 80039a4: f402 5200 and.w r2, r2, #8192 @ 0x2000 80039a8: 615a str r2, [r3, #20] 80039aa: 687b ldr r3, [r7, #4] 80039ac: 681b ldr r3, [r3, #0] 80039ae: 4618 mov r0, r3 80039b0: f005 f944 bl 8008c3c 80039b4: 4603 mov r3, r0 80039b6: f003 0308 and.w r3, r3, #8 80039ba: 2b08 cmp r3, #8 80039bc: d10a bne.n 80039d4 80039be: 6878 ldr r0, [r7, #4] 80039c0: f007 fa11 bl 800ade6 80039c4: 687b ldr r3, [r7, #4] 80039c6: 681b ldr r3, [r3, #0] 80039c8: 695a ldr r2, [r3, #20] 80039ca: 687b ldr r3, [r7, #4] 80039cc: 681b ldr r3, [r3, #0] 80039ce: f002 0208 and.w r2, r2, #8 80039d2: 615a str r2, [r3, #20] 80039d4: 687b ldr r3, [r7, #4] 80039d6: 681b ldr r3, [r3, #0] 80039d8: 4618 mov r0, r3 80039da: f005 f92f bl 8008c3c 80039de: 4603 mov r3, r0 80039e0: f003 0380 and.w r3, r3, #128 @ 0x80 80039e4: 2b80 cmp r3, #128 @ 0x80 80039e6: d123 bne.n 8003a30 80039e8: 6a3b ldr r3, [r7, #32] 80039ea: 699b ldr r3, [r3, #24] 80039ec: f023 0280 bic.w r2, r3, #128 @ 0x80 80039f0: 6a3b ldr r3, [r7, #32] 80039f2: 619a str r2, [r3, #24] 80039f4: 2301 movs r3, #1 80039f6: 627b str r3, [r7, #36] @ 0x24 80039f8: e014 b.n 8003a24 80039fa: 6879 ldr r1, [r7, #4] 80039fc: 6a7a ldr r2, [r7, #36] @ 0x24 80039fe: 4613 mov r3, r2 8003a00: 00db lsls r3, r3, #3 8003a02: 4413 add r3, r2 8003a04: 009b lsls r3, r3, #2 8003a06: 440b add r3, r1 8003a08: f203 2357 addw r3, r3, #599 @ 0x257 8003a0c: 781b ldrb r3, [r3, #0] 8003a0e: 2b01 cmp r3, #1 8003a10: d105 bne.n 8003a1e 8003a12: 6a7b ldr r3, [r7, #36] @ 0x24 8003a14: b2db uxtb r3, r3 8003a16: 4619 mov r1, r3 8003a18: 6878 ldr r0, [r7, #4] 8003a1a: f000 faf2 bl 8004002 8003a1e: 6a7b ldr r3, [r7, #36] @ 0x24 8003a20: 3301 adds r3, #1 8003a22: 627b str r3, [r7, #36] @ 0x24 8003a24: 687b ldr r3, [r7, #4] 8003a26: 791b ldrb r3, [r3, #4] 8003a28: 461a mov r2, r3 8003a2a: 6a7b ldr r3, [r7, #36] @ 0x24 8003a2c: 4293 cmp r3, r2 8003a2e: d3e4 bcc.n 80039fa 8003a30: 687b ldr r3, [r7, #4] 8003a32: 681b ldr r3, [r3, #0] 8003a34: 4618 mov r0, r3 8003a36: f005 f901 bl 8008c3c 8003a3a: 4603 mov r3, r0 8003a3c: f403 1380 and.w r3, r3, #1048576 @ 0x100000 8003a40: f5b3 1f80 cmp.w r3, #1048576 @ 0x100000 8003a44: d13c bne.n 8003ac0 8003a46: 2301 movs r3, #1 8003a48: 627b str r3, [r7, #36] @ 0x24 8003a4a: e02b b.n 8003aa4 8003a4c: 6a7b ldr r3, [r7, #36] @ 0x24 8003a4e: 015a lsls r2, r3, #5 8003a50: 69fb ldr r3, [r7, #28] 8003a52: 4413 add r3, r2 8003a54: f503 6310 add.w r3, r3, #2304 @ 0x900 8003a58: 681b ldr r3, [r3, #0] 8003a5a: 61bb str r3, [r7, #24] 8003a5c: 6879 ldr r1, [r7, #4] 8003a5e: 6a7a ldr r2, [r7, #36] @ 0x24 8003a60: 4613 mov r3, r2 8003a62: 00db lsls r3, r3, #3 8003a64: 4413 add r3, r2 8003a66: 009b lsls r3, r3, #2 8003a68: 440b add r3, r1 8003a6a: 3318 adds r3, #24 8003a6c: 781b ldrb r3, [r3, #0] 8003a6e: 2b01 cmp r3, #1 8003a70: d115 bne.n 8003a9e 8003a72: 69bb ldr r3, [r7, #24] 8003a74: 2b00 cmp r3, #0 8003a76: da12 bge.n 8003a9e 8003a78: 6879 ldr r1, [r7, #4] 8003a7a: 6a7a ldr r2, [r7, #36] @ 0x24 8003a7c: 4613 mov r3, r2 8003a7e: 00db lsls r3, r3, #3 8003a80: 4413 add r3, r2 8003a82: 009b lsls r3, r3, #2 8003a84: 440b add r3, r1 8003a86: 3317 adds r3, #23 8003a88: 2201 movs r2, #1 8003a8a: 701a strb r2, [r3, #0] 8003a8c: 6a7b ldr r3, [r7, #36] @ 0x24 8003a8e: b2db uxtb r3, r3 8003a90: f063 037f orn r3, r3, #127 @ 0x7f 8003a94: b2db uxtb r3, r3 8003a96: 4619 mov r1, r3 8003a98: 6878 ldr r0, [r7, #4] 8003a9a: f000 fab2 bl 8004002 8003a9e: 6a7b ldr r3, [r7, #36] @ 0x24 8003aa0: 3301 adds r3, #1 8003aa2: 627b str r3, [r7, #36] @ 0x24 8003aa4: 687b ldr r3, [r7, #4] 8003aa6: 791b ldrb r3, [r3, #4] 8003aa8: 461a mov r2, r3 8003aaa: 6a7b ldr r3, [r7, #36] @ 0x24 8003aac: 4293 cmp r3, r2 8003aae: d3cd bcc.n 8003a4c 8003ab0: 687b ldr r3, [r7, #4] 8003ab2: 681b ldr r3, [r3, #0] 8003ab4: 695a ldr r2, [r3, #20] 8003ab6: 687b ldr r3, [r7, #4] 8003ab8: 681b ldr r3, [r3, #0] 8003aba: f402 1280 and.w r2, r2, #1048576 @ 0x100000 8003abe: 615a str r2, [r3, #20] 8003ac0: 687b ldr r3, [r7, #4] 8003ac2: 681b ldr r3, [r3, #0] 8003ac4: 4618 mov r0, r3 8003ac6: f005 f8b9 bl 8008c3c 8003aca: 4603 mov r3, r0 8003acc: f403 1300 and.w r3, r3, #2097152 @ 0x200000 8003ad0: f5b3 1f00 cmp.w r3, #2097152 @ 0x200000 8003ad4: d156 bne.n 8003b84 8003ad6: 2301 movs r3, #1 8003ad8: 627b str r3, [r7, #36] @ 0x24 8003ada: e045 b.n 8003b68 8003adc: 6a7b ldr r3, [r7, #36] @ 0x24 8003ade: 015a lsls r2, r3, #5 8003ae0: 69fb ldr r3, [r7, #28] 8003ae2: 4413 add r3, r2 8003ae4: f503 6330 add.w r3, r3, #2816 @ 0xb00 8003ae8: 681b ldr r3, [r3, #0] 8003aea: 61bb str r3, [r7, #24] 8003aec: 6879 ldr r1, [r7, #4] 8003aee: 6a7a ldr r2, [r7, #36] @ 0x24 8003af0: 4613 mov r3, r2 8003af2: 00db lsls r3, r3, #3 8003af4: 4413 add r3, r2 8003af6: 009b lsls r3, r3, #2 8003af8: 440b add r3, r1 8003afa: f503 7316 add.w r3, r3, #600 @ 0x258 8003afe: 781b ldrb r3, [r3, #0] 8003b00: 2b01 cmp r3, #1 8003b02: d12e bne.n 8003b62 8003b04: 69bb ldr r3, [r7, #24] 8003b06: 2b00 cmp r3, #0 8003b08: da2b bge.n 8003b62 8003b0a: 69bb ldr r3, [r7, #24] 8003b0c: 0c1a lsrs r2, r3, #16 8003b0e: 687b ldr r3, [r7, #4] 8003b10: f8d3 34d4 ldr.w r3, [r3, #1236] @ 0x4d4 8003b14: 4053 eors r3, r2 8003b16: f003 0301 and.w r3, r3, #1 8003b1a: 2b00 cmp r3, #0 8003b1c: d121 bne.n 8003b62 8003b1e: 6879 ldr r1, [r7, #4] 8003b20: 6a7a ldr r2, [r7, #36] @ 0x24 8003b22: 4613 mov r3, r2 8003b24: 00db lsls r3, r3, #3 8003b26: 4413 add r3, r2 8003b28: 009b lsls r3, r3, #2 8003b2a: 440b add r3, r1 8003b2c: f203 2357 addw r3, r3, #599 @ 0x257 8003b30: 2201 movs r2, #1 8003b32: 701a strb r2, [r3, #0] 8003b34: 6a3b ldr r3, [r7, #32] 8003b36: 699b ldr r3, [r3, #24] 8003b38: f043 0280 orr.w r2, r3, #128 @ 0x80 8003b3c: 6a3b ldr r3, [r7, #32] 8003b3e: 619a str r2, [r3, #24] 8003b40: 6a3b ldr r3, [r7, #32] 8003b42: 695b ldr r3, [r3, #20] 8003b44: f003 0380 and.w r3, r3, #128 @ 0x80 8003b48: 2b00 cmp r3, #0 8003b4a: d10a bne.n 8003b62 8003b4c: 69fb ldr r3, [r7, #28] 8003b4e: f503 6300 add.w r3, r3, #2048 @ 0x800 8003b52: 685b ldr r3, [r3, #4] 8003b54: 69fa ldr r2, [r7, #28] 8003b56: f502 6200 add.w r2, r2, #2048 @ 0x800 8003b5a: f443 7300 orr.w r3, r3, #512 @ 0x200 8003b5e: 6053 str r3, [r2, #4] 8003b60: e008 b.n 8003b74 8003b62: 6a7b ldr r3, [r7, #36] @ 0x24 8003b64: 3301 adds r3, #1 8003b66: 627b str r3, [r7, #36] @ 0x24 8003b68: 687b ldr r3, [r7, #4] 8003b6a: 791b ldrb r3, [r3, #4] 8003b6c: 461a mov r2, r3 8003b6e: 6a7b ldr r3, [r7, #36] @ 0x24 8003b70: 4293 cmp r3, r2 8003b72: d3b3 bcc.n 8003adc 8003b74: 687b ldr r3, [r7, #4] 8003b76: 681b ldr r3, [r3, #0] 8003b78: 695a ldr r2, [r3, #20] 8003b7a: 687b ldr r3, [r7, #4] 8003b7c: 681b ldr r3, [r3, #0] 8003b7e: f402 1200 and.w r2, r2, #2097152 @ 0x200000 8003b82: 615a str r2, [r3, #20] 8003b84: 687b ldr r3, [r7, #4] 8003b86: 681b ldr r3, [r3, #0] 8003b88: 4618 mov r0, r3 8003b8a: f005 f857 bl 8008c3c 8003b8e: 4603 mov r3, r0 8003b90: f003 4380 and.w r3, r3, #1073741824 @ 0x40000000 8003b94: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 8003b98: d10a bne.n 8003bb0 8003b9a: 6878 ldr r0, [r7, #4] 8003b9c: f007 f9b2 bl 800af04 8003ba0: 687b ldr r3, [r7, #4] 8003ba2: 681b ldr r3, [r3, #0] 8003ba4: 695a ldr r2, [r3, #20] 8003ba6: 687b ldr r3, [r7, #4] 8003ba8: 681b ldr r3, [r3, #0] 8003baa: f002 4280 and.w r2, r2, #1073741824 @ 0x40000000 8003bae: 615a str r2, [r3, #20] 8003bb0: 687b ldr r3, [r7, #4] 8003bb2: 681b ldr r3, [r3, #0] 8003bb4: 4618 mov r0, r3 8003bb6: f005 f841 bl 8008c3c 8003bba: 4603 mov r3, r0 8003bbc: f003 0304 and.w r3, r3, #4 8003bc0: 2b04 cmp r3, #4 8003bc2: d115 bne.n 8003bf0 8003bc4: 687b ldr r3, [r7, #4] 8003bc6: 681b ldr r3, [r3, #0] 8003bc8: 685b ldr r3, [r3, #4] 8003bca: 61bb str r3, [r7, #24] 8003bcc: 69bb ldr r3, [r7, #24] 8003bce: f003 0304 and.w r3, r3, #4 8003bd2: 2b00 cmp r3, #0 8003bd4: d002 beq.n 8003bdc 8003bd6: 6878 ldr r0, [r7, #4] 8003bd8: f007 f9a2 bl 800af20 8003bdc: 687b ldr r3, [r7, #4] 8003bde: 681b ldr r3, [r3, #0] 8003be0: 6859 ldr r1, [r3, #4] 8003be2: 687b ldr r3, [r7, #4] 8003be4: 681b ldr r3, [r3, #0] 8003be6: 69ba ldr r2, [r7, #24] 8003be8: 430a orrs r2, r1 8003bea: 605a str r2, [r3, #4] 8003bec: e000 b.n 8003bf0 8003bee: bf00 nop 8003bf0: 3734 adds r7, #52 @ 0x34 8003bf2: 46bd mov sp, r7 8003bf4: bd90 pop {r4, r7, pc} 08003bf6 : 8003bf6: b580 push {r7, lr} 8003bf8: b082 sub sp, #8 8003bfa: af00 add r7, sp, #0 8003bfc: 6078 str r0, [r7, #4] 8003bfe: 460b mov r3, r1 8003c00: 70fb strb r3, [r7, #3] 8003c02: 687b ldr r3, [r7, #4] 8003c04: f893 3494 ldrb.w r3, [r3, #1172] @ 0x494 8003c08: 2b01 cmp r3, #1 8003c0a: d101 bne.n 8003c10 8003c0c: 2302 movs r3, #2 8003c0e: e012 b.n 8003c36 8003c10: 687b ldr r3, [r7, #4] 8003c12: 2201 movs r2, #1 8003c14: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003c18: 687b ldr r3, [r7, #4] 8003c1a: 78fa ldrb r2, [r7, #3] 8003c1c: 745a strb r2, [r3, #17] 8003c1e: 687b ldr r3, [r7, #4] 8003c20: 681b ldr r3, [r3, #0] 8003c22: 78fa ldrb r2, [r7, #3] 8003c24: 4611 mov r1, r2 8003c26: 4618 mov r0, r3 8003c28: f004 ffa0 bl 8008b6c 8003c2c: 687b ldr r3, [r7, #4] 8003c2e: 2200 movs r2, #0 8003c30: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003c34: 2300 movs r3, #0 8003c36: 4618 mov r0, r3 8003c38: 3708 adds r7, #8 8003c3a: 46bd mov sp, r7 8003c3c: bd80 pop {r7, pc} 08003c3e : 8003c3e: b580 push {r7, lr} 8003c40: b084 sub sp, #16 8003c42: af00 add r7, sp, #0 8003c44: 6078 str r0, [r7, #4] 8003c46: 4608 mov r0, r1 8003c48: 4611 mov r1, r2 8003c4a: 461a mov r2, r3 8003c4c: 4603 mov r3, r0 8003c4e: 70fb strb r3, [r7, #3] 8003c50: 460b mov r3, r1 8003c52: 803b strh r3, [r7, #0] 8003c54: 4613 mov r3, r2 8003c56: 70bb strb r3, [r7, #2] 8003c58: 2300 movs r3, #0 8003c5a: 72fb strb r3, [r7, #11] 8003c5c: f997 3003 ldrsb.w r3, [r7, #3] 8003c60: 2b00 cmp r3, #0 8003c62: da0f bge.n 8003c84 8003c64: 78fb ldrb r3, [r7, #3] 8003c66: f003 020f and.w r2, r3, #15 8003c6a: 4613 mov r3, r2 8003c6c: 00db lsls r3, r3, #3 8003c6e: 4413 add r3, r2 8003c70: 009b lsls r3, r3, #2 8003c72: 3310 adds r3, #16 8003c74: 687a ldr r2, [r7, #4] 8003c76: 4413 add r3, r2 8003c78: 3304 adds r3, #4 8003c7a: 60fb str r3, [r7, #12] 8003c7c: 68fb ldr r3, [r7, #12] 8003c7e: 2201 movs r2, #1 8003c80: 705a strb r2, [r3, #1] 8003c82: e00f b.n 8003ca4 8003c84: 78fb ldrb r3, [r7, #3] 8003c86: f003 020f and.w r2, r3, #15 8003c8a: 4613 mov r3, r2 8003c8c: 00db lsls r3, r3, #3 8003c8e: 4413 add r3, r2 8003c90: 009b lsls r3, r3, #2 8003c92: f503 7314 add.w r3, r3, #592 @ 0x250 8003c96: 687a ldr r2, [r7, #4] 8003c98: 4413 add r3, r2 8003c9a: 3304 adds r3, #4 8003c9c: 60fb str r3, [r7, #12] 8003c9e: 68fb ldr r3, [r7, #12] 8003ca0: 2200 movs r2, #0 8003ca2: 705a strb r2, [r3, #1] 8003ca4: 78fb ldrb r3, [r7, #3] 8003ca6: f003 030f and.w r3, r3, #15 8003caa: b2da uxtb r2, r3 8003cac: 68fb ldr r3, [r7, #12] 8003cae: 701a strb r2, [r3, #0] 8003cb0: 883b ldrh r3, [r7, #0] 8003cb2: f3c3 020a ubfx r2, r3, #0, #11 8003cb6: 68fb ldr r3, [r7, #12] 8003cb8: 609a str r2, [r3, #8] 8003cba: 68fb ldr r3, [r7, #12] 8003cbc: 78ba ldrb r2, [r7, #2] 8003cbe: 711a strb r2, [r3, #4] 8003cc0: 68fb ldr r3, [r7, #12] 8003cc2: 785b ldrb r3, [r3, #1] 8003cc4: 2b00 cmp r3, #0 8003cc6: d004 beq.n 8003cd2 8003cc8: 68fb ldr r3, [r7, #12] 8003cca: 781b ldrb r3, [r3, #0] 8003ccc: 461a mov r2, r3 8003cce: 68fb ldr r3, [r7, #12] 8003cd0: 835a strh r2, [r3, #26] 8003cd2: 78bb ldrb r3, [r7, #2] 8003cd4: 2b02 cmp r3, #2 8003cd6: d102 bne.n 8003cde 8003cd8: 68fb ldr r3, [r7, #12] 8003cda: 2200 movs r2, #0 8003cdc: 715a strb r2, [r3, #5] 8003cde: 687b ldr r3, [r7, #4] 8003ce0: f893 3494 ldrb.w r3, [r3, #1172] @ 0x494 8003ce4: 2b01 cmp r3, #1 8003ce6: d101 bne.n 8003cec 8003ce8: 2302 movs r3, #2 8003cea: e00e b.n 8003d0a 8003cec: 687b ldr r3, [r7, #4] 8003cee: 2201 movs r2, #1 8003cf0: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003cf4: 687b ldr r3, [r7, #4] 8003cf6: 681b ldr r3, [r3, #0] 8003cf8: 68f9 ldr r1, [r7, #12] 8003cfa: 4618 mov r0, r3 8003cfc: f004 f920 bl 8007f40 8003d00: 687b ldr r3, [r7, #4] 8003d02: 2200 movs r2, #0 8003d04: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003d08: 7afb ldrb r3, [r7, #11] 8003d0a: 4618 mov r0, r3 8003d0c: 3710 adds r7, #16 8003d0e: 46bd mov sp, r7 8003d10: bd80 pop {r7, pc} 08003d12 : 8003d12: b580 push {r7, lr} 8003d14: b084 sub sp, #16 8003d16: af00 add r7, sp, #0 8003d18: 6078 str r0, [r7, #4] 8003d1a: 460b mov r3, r1 8003d1c: 70fb strb r3, [r7, #3] 8003d1e: f997 3003 ldrsb.w r3, [r7, #3] 8003d22: 2b00 cmp r3, #0 8003d24: da0f bge.n 8003d46 8003d26: 78fb ldrb r3, [r7, #3] 8003d28: f003 020f and.w r2, r3, #15 8003d2c: 4613 mov r3, r2 8003d2e: 00db lsls r3, r3, #3 8003d30: 4413 add r3, r2 8003d32: 009b lsls r3, r3, #2 8003d34: 3310 adds r3, #16 8003d36: 687a ldr r2, [r7, #4] 8003d38: 4413 add r3, r2 8003d3a: 3304 adds r3, #4 8003d3c: 60fb str r3, [r7, #12] 8003d3e: 68fb ldr r3, [r7, #12] 8003d40: 2201 movs r2, #1 8003d42: 705a strb r2, [r3, #1] 8003d44: e00f b.n 8003d66 8003d46: 78fb ldrb r3, [r7, #3] 8003d48: f003 020f and.w r2, r3, #15 8003d4c: 4613 mov r3, r2 8003d4e: 00db lsls r3, r3, #3 8003d50: 4413 add r3, r2 8003d52: 009b lsls r3, r3, #2 8003d54: f503 7314 add.w r3, r3, #592 @ 0x250 8003d58: 687a ldr r2, [r7, #4] 8003d5a: 4413 add r3, r2 8003d5c: 3304 adds r3, #4 8003d5e: 60fb str r3, [r7, #12] 8003d60: 68fb ldr r3, [r7, #12] 8003d62: 2200 movs r2, #0 8003d64: 705a strb r2, [r3, #1] 8003d66: 78fb ldrb r3, [r7, #3] 8003d68: f003 030f and.w r3, r3, #15 8003d6c: b2da uxtb r2, r3 8003d6e: 68fb ldr r3, [r7, #12] 8003d70: 701a strb r2, [r3, #0] 8003d72: 687b ldr r3, [r7, #4] 8003d74: f893 3494 ldrb.w r3, [r3, #1172] @ 0x494 8003d78: 2b01 cmp r3, #1 8003d7a: d101 bne.n 8003d80 8003d7c: 2302 movs r3, #2 8003d7e: e00e b.n 8003d9e 8003d80: 687b ldr r3, [r7, #4] 8003d82: 2201 movs r2, #1 8003d84: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003d88: 687b ldr r3, [r7, #4] 8003d8a: 681b ldr r3, [r3, #0] 8003d8c: 68f9 ldr r1, [r7, #12] 8003d8e: 4618 mov r0, r3 8003d90: f004 f95e bl 8008050 8003d94: 687b ldr r3, [r7, #4] 8003d96: 2200 movs r2, #0 8003d98: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003d9c: 2300 movs r3, #0 8003d9e: 4618 mov r0, r3 8003da0: 3710 adds r7, #16 8003da2: 46bd mov sp, r7 8003da4: bd80 pop {r7, pc} 08003da6 : 8003da6: b580 push {r7, lr} 8003da8: b086 sub sp, #24 8003daa: af00 add r7, sp, #0 8003dac: 60f8 str r0, [r7, #12] 8003dae: 607a str r2, [r7, #4] 8003db0: 603b str r3, [r7, #0] 8003db2: 460b mov r3, r1 8003db4: 72fb strb r3, [r7, #11] 8003db6: 7afb ldrb r3, [r7, #11] 8003db8: f003 020f and.w r2, r3, #15 8003dbc: 4613 mov r3, r2 8003dbe: 00db lsls r3, r3, #3 8003dc0: 4413 add r3, r2 8003dc2: 009b lsls r3, r3, #2 8003dc4: f503 7314 add.w r3, r3, #592 @ 0x250 8003dc8: 68fa ldr r2, [r7, #12] 8003dca: 4413 add r3, r2 8003dcc: 3304 adds r3, #4 8003dce: 617b str r3, [r7, #20] 8003dd0: 697b ldr r3, [r7, #20] 8003dd2: 687a ldr r2, [r7, #4] 8003dd4: 60da str r2, [r3, #12] 8003dd6: 697b ldr r3, [r7, #20] 8003dd8: 683a ldr r2, [r7, #0] 8003dda: 611a str r2, [r3, #16] 8003ddc: 697b ldr r3, [r7, #20] 8003dde: 2200 movs r2, #0 8003de0: 615a str r2, [r3, #20] 8003de2: 697b ldr r3, [r7, #20] 8003de4: 2200 movs r2, #0 8003de6: 705a strb r2, [r3, #1] 8003de8: 7afb ldrb r3, [r7, #11] 8003dea: f003 030f and.w r3, r3, #15 8003dee: b2da uxtb r2, r3 8003df0: 697b ldr r3, [r7, #20] 8003df2: 701a strb r2, [r3, #0] 8003df4: 68fb ldr r3, [r7, #12] 8003df6: 799b ldrb r3, [r3, #6] 8003df8: 2b01 cmp r3, #1 8003dfa: d102 bne.n 8003e02 8003dfc: 687a ldr r2, [r7, #4] 8003dfe: 697b ldr r3, [r7, #20] 8003e00: 61da str r2, [r3, #28] 8003e02: 68fb ldr r3, [r7, #12] 8003e04: 6818 ldr r0, [r3, #0] 8003e06: 68fb ldr r3, [r7, #12] 8003e08: 799b ldrb r3, [r3, #6] 8003e0a: 461a mov r2, r3 8003e0c: 6979 ldr r1, [r7, #20] 8003e0e: f004 f9fb bl 8008208 8003e12: 2300 movs r3, #0 8003e14: 4618 mov r0, r3 8003e16: 3718 adds r7, #24 8003e18: 46bd mov sp, r7 8003e1a: bd80 pop {r7, pc} 08003e1c : 8003e1c: b580 push {r7, lr} 8003e1e: b086 sub sp, #24 8003e20: af00 add r7, sp, #0 8003e22: 60f8 str r0, [r7, #12] 8003e24: 607a str r2, [r7, #4] 8003e26: 603b str r3, [r7, #0] 8003e28: 460b mov r3, r1 8003e2a: 72fb strb r3, [r7, #11] 8003e2c: 7afb ldrb r3, [r7, #11] 8003e2e: f003 020f and.w r2, r3, #15 8003e32: 4613 mov r3, r2 8003e34: 00db lsls r3, r3, #3 8003e36: 4413 add r3, r2 8003e38: 009b lsls r3, r3, #2 8003e3a: 3310 adds r3, #16 8003e3c: 68fa ldr r2, [r7, #12] 8003e3e: 4413 add r3, r2 8003e40: 3304 adds r3, #4 8003e42: 617b str r3, [r7, #20] 8003e44: 697b ldr r3, [r7, #20] 8003e46: 687a ldr r2, [r7, #4] 8003e48: 60da str r2, [r3, #12] 8003e4a: 697b ldr r3, [r7, #20] 8003e4c: 683a ldr r2, [r7, #0] 8003e4e: 611a str r2, [r3, #16] 8003e50: 697b ldr r3, [r7, #20] 8003e52: 2200 movs r2, #0 8003e54: 615a str r2, [r3, #20] 8003e56: 697b ldr r3, [r7, #20] 8003e58: 2201 movs r2, #1 8003e5a: 705a strb r2, [r3, #1] 8003e5c: 7afb ldrb r3, [r7, #11] 8003e5e: f003 030f and.w r3, r3, #15 8003e62: b2da uxtb r2, r3 8003e64: 697b ldr r3, [r7, #20] 8003e66: 701a strb r2, [r3, #0] 8003e68: 68fb ldr r3, [r7, #12] 8003e6a: 799b ldrb r3, [r3, #6] 8003e6c: 2b01 cmp r3, #1 8003e6e: d102 bne.n 8003e76 8003e70: 687a ldr r2, [r7, #4] 8003e72: 697b ldr r3, [r7, #20] 8003e74: 61da str r2, [r3, #28] 8003e76: 68fb ldr r3, [r7, #12] 8003e78: 6818 ldr r0, [r3, #0] 8003e7a: 68fb ldr r3, [r7, #12] 8003e7c: 799b ldrb r3, [r3, #6] 8003e7e: 461a mov r2, r3 8003e80: 6979 ldr r1, [r7, #20] 8003e82: f004 f9c1 bl 8008208 8003e86: 2300 movs r3, #0 8003e88: 4618 mov r0, r3 8003e8a: 3718 adds r7, #24 8003e8c: 46bd mov sp, r7 8003e8e: bd80 pop {r7, pc} 08003e90 : 8003e90: b580 push {r7, lr} 8003e92: b084 sub sp, #16 8003e94: af00 add r7, sp, #0 8003e96: 6078 str r0, [r7, #4] 8003e98: 460b mov r3, r1 8003e9a: 70fb strb r3, [r7, #3] 8003e9c: 78fb ldrb r3, [r7, #3] 8003e9e: f003 030f and.w r3, r3, #15 8003ea2: 687a ldr r2, [r7, #4] 8003ea4: 7912 ldrb r2, [r2, #4] 8003ea6: 4293 cmp r3, r2 8003ea8: d901 bls.n 8003eae 8003eaa: 2301 movs r3, #1 8003eac: e04f b.n 8003f4e 8003eae: f997 3003 ldrsb.w r3, [r7, #3] 8003eb2: 2b00 cmp r3, #0 8003eb4: da0f bge.n 8003ed6 8003eb6: 78fb ldrb r3, [r7, #3] 8003eb8: f003 020f and.w r2, r3, #15 8003ebc: 4613 mov r3, r2 8003ebe: 00db lsls r3, r3, #3 8003ec0: 4413 add r3, r2 8003ec2: 009b lsls r3, r3, #2 8003ec4: 3310 adds r3, #16 8003ec6: 687a ldr r2, [r7, #4] 8003ec8: 4413 add r3, r2 8003eca: 3304 adds r3, #4 8003ecc: 60fb str r3, [r7, #12] 8003ece: 68fb ldr r3, [r7, #12] 8003ed0: 2201 movs r2, #1 8003ed2: 705a strb r2, [r3, #1] 8003ed4: e00d b.n 8003ef2 8003ed6: 78fa ldrb r2, [r7, #3] 8003ed8: 4613 mov r3, r2 8003eda: 00db lsls r3, r3, #3 8003edc: 4413 add r3, r2 8003ede: 009b lsls r3, r3, #2 8003ee0: f503 7314 add.w r3, r3, #592 @ 0x250 8003ee4: 687a ldr r2, [r7, #4] 8003ee6: 4413 add r3, r2 8003ee8: 3304 adds r3, #4 8003eea: 60fb str r3, [r7, #12] 8003eec: 68fb ldr r3, [r7, #12] 8003eee: 2200 movs r2, #0 8003ef0: 705a strb r2, [r3, #1] 8003ef2: 68fb ldr r3, [r7, #12] 8003ef4: 2201 movs r2, #1 8003ef6: 709a strb r2, [r3, #2] 8003ef8: 78fb ldrb r3, [r7, #3] 8003efa: f003 030f and.w r3, r3, #15 8003efe: b2da uxtb r2, r3 8003f00: 68fb ldr r3, [r7, #12] 8003f02: 701a strb r2, [r3, #0] 8003f04: 687b ldr r3, [r7, #4] 8003f06: f893 3494 ldrb.w r3, [r3, #1172] @ 0x494 8003f0a: 2b01 cmp r3, #1 8003f0c: d101 bne.n 8003f12 8003f0e: 2302 movs r3, #2 8003f10: e01d b.n 8003f4e 8003f12: 687b ldr r3, [r7, #4] 8003f14: 2201 movs r2, #1 8003f16: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003f1a: 687b ldr r3, [r7, #4] 8003f1c: 681b ldr r3, [r3, #0] 8003f1e: 68f9 ldr r1, [r7, #12] 8003f20: 4618 mov r0, r3 8003f22: f004 fd4f bl 80089c4 8003f26: 78fb ldrb r3, [r7, #3] 8003f28: f003 030f and.w r3, r3, #15 8003f2c: 2b00 cmp r3, #0 8003f2e: d109 bne.n 8003f44 8003f30: 687b ldr r3, [r7, #4] 8003f32: 6818 ldr r0, [r3, #0] 8003f34: 687b ldr r3, [r7, #4] 8003f36: 7999 ldrb r1, [r3, #6] 8003f38: 687b ldr r3, [r7, #4] 8003f3a: f203 439c addw r3, r3, #1180 @ 0x49c 8003f3e: 461a mov r2, r3 8003f40: f004 ff40 bl 8008dc4 8003f44: 687b ldr r3, [r7, #4] 8003f46: 2200 movs r2, #0 8003f48: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003f4c: 2300 movs r3, #0 8003f4e: 4618 mov r0, r3 8003f50: 3710 adds r7, #16 8003f52: 46bd mov sp, r7 8003f54: bd80 pop {r7, pc} 08003f56 : 8003f56: b580 push {r7, lr} 8003f58: b084 sub sp, #16 8003f5a: af00 add r7, sp, #0 8003f5c: 6078 str r0, [r7, #4] 8003f5e: 460b mov r3, r1 8003f60: 70fb strb r3, [r7, #3] 8003f62: 78fb ldrb r3, [r7, #3] 8003f64: f003 030f and.w r3, r3, #15 8003f68: 687a ldr r2, [r7, #4] 8003f6a: 7912 ldrb r2, [r2, #4] 8003f6c: 4293 cmp r3, r2 8003f6e: d901 bls.n 8003f74 8003f70: 2301 movs r3, #1 8003f72: e042 b.n 8003ffa 8003f74: f997 3003 ldrsb.w r3, [r7, #3] 8003f78: 2b00 cmp r3, #0 8003f7a: da0f bge.n 8003f9c 8003f7c: 78fb ldrb r3, [r7, #3] 8003f7e: f003 020f and.w r2, r3, #15 8003f82: 4613 mov r3, r2 8003f84: 00db lsls r3, r3, #3 8003f86: 4413 add r3, r2 8003f88: 009b lsls r3, r3, #2 8003f8a: 3310 adds r3, #16 8003f8c: 687a ldr r2, [r7, #4] 8003f8e: 4413 add r3, r2 8003f90: 3304 adds r3, #4 8003f92: 60fb str r3, [r7, #12] 8003f94: 68fb ldr r3, [r7, #12] 8003f96: 2201 movs r2, #1 8003f98: 705a strb r2, [r3, #1] 8003f9a: e00f b.n 8003fbc 8003f9c: 78fb ldrb r3, [r7, #3] 8003f9e: f003 020f and.w r2, r3, #15 8003fa2: 4613 mov r3, r2 8003fa4: 00db lsls r3, r3, #3 8003fa6: 4413 add r3, r2 8003fa8: 009b lsls r3, r3, #2 8003faa: f503 7314 add.w r3, r3, #592 @ 0x250 8003fae: 687a ldr r2, [r7, #4] 8003fb0: 4413 add r3, r2 8003fb2: 3304 adds r3, #4 8003fb4: 60fb str r3, [r7, #12] 8003fb6: 68fb ldr r3, [r7, #12] 8003fb8: 2200 movs r2, #0 8003fba: 705a strb r2, [r3, #1] 8003fbc: 68fb ldr r3, [r7, #12] 8003fbe: 2200 movs r2, #0 8003fc0: 709a strb r2, [r3, #2] 8003fc2: 78fb ldrb r3, [r7, #3] 8003fc4: f003 030f and.w r3, r3, #15 8003fc8: b2da uxtb r2, r3 8003fca: 68fb ldr r3, [r7, #12] 8003fcc: 701a strb r2, [r3, #0] 8003fce: 687b ldr r3, [r7, #4] 8003fd0: f893 3494 ldrb.w r3, [r3, #1172] @ 0x494 8003fd4: 2b01 cmp r3, #1 8003fd6: d101 bne.n 8003fdc 8003fd8: 2302 movs r3, #2 8003fda: e00e b.n 8003ffa 8003fdc: 687b ldr r3, [r7, #4] 8003fde: 2201 movs r2, #1 8003fe0: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003fe4: 687b ldr r3, [r7, #4] 8003fe6: 681b ldr r3, [r3, #0] 8003fe8: 68f9 ldr r1, [r7, #12] 8003fea: 4618 mov r0, r3 8003fec: f004 fd58 bl 8008aa0 8003ff0: 687b ldr r3, [r7, #4] 8003ff2: 2200 movs r2, #0 8003ff4: f883 2494 strb.w r2, [r3, #1172] @ 0x494 8003ff8: 2300 movs r3, #0 8003ffa: 4618 mov r0, r3 8003ffc: 3710 adds r7, #16 8003ffe: 46bd mov sp, r7 8004000: bd80 pop {r7, pc} 08004002 : 8004002: b580 push {r7, lr} 8004004: b084 sub sp, #16 8004006: af00 add r7, sp, #0 8004008: 6078 str r0, [r7, #4] 800400a: 460b mov r3, r1 800400c: 70fb strb r3, [r7, #3] 800400e: f997 3003 ldrsb.w r3, [r7, #3] 8004012: 2b00 cmp r3, #0 8004014: da0c bge.n 8004030 8004016: 78fb ldrb r3, [r7, #3] 8004018: f003 020f and.w r2, r3, #15 800401c: 4613 mov r3, r2 800401e: 00db lsls r3, r3, #3 8004020: 4413 add r3, r2 8004022: 009b lsls r3, r3, #2 8004024: 3310 adds r3, #16 8004026: 687a ldr r2, [r7, #4] 8004028: 4413 add r3, r2 800402a: 3304 adds r3, #4 800402c: 60fb str r3, [r7, #12] 800402e: e00c b.n 800404a 8004030: 78fb ldrb r3, [r7, #3] 8004032: f003 020f and.w r2, r3, #15 8004036: 4613 mov r3, r2 8004038: 00db lsls r3, r3, #3 800403a: 4413 add r3, r2 800403c: 009b lsls r3, r3, #2 800403e: f503 7314 add.w r3, r3, #592 @ 0x250 8004042: 687a ldr r2, [r7, #4] 8004044: 4413 add r3, r2 8004046: 3304 adds r3, #4 8004048: 60fb str r3, [r7, #12] 800404a: 687b ldr r3, [r7, #4] 800404c: 681b ldr r3, [r3, #0] 800404e: 68f9 ldr r1, [r7, #12] 8004050: 4618 mov r0, r3 8004052: f004 fb77 bl 8008744 8004056: 4603 mov r3, r0 8004058: 72fb strb r3, [r7, #11] 800405a: 7afb ldrb r3, [r7, #11] 800405c: 4618 mov r0, r3 800405e: 3710 adds r7, #16 8004060: 46bd mov sp, r7 8004062: bd80 pop {r7, pc} 08004064 : 8004064: b580 push {r7, lr} 8004066: b08a sub sp, #40 @ 0x28 8004068: af02 add r7, sp, #8 800406a: 6078 str r0, [r7, #4] 800406c: 6039 str r1, [r7, #0] 800406e: 687b ldr r3, [r7, #4] 8004070: 681b ldr r3, [r3, #0] 8004072: 617b str r3, [r7, #20] 8004074: 697b ldr r3, [r7, #20] 8004076: 613b str r3, [r7, #16] 8004078: 683a ldr r2, [r7, #0] 800407a: 4613 mov r3, r2 800407c: 00db lsls r3, r3, #3 800407e: 4413 add r3, r2 8004080: 009b lsls r3, r3, #2 8004082: 3310 adds r3, #16 8004084: 687a ldr r2, [r7, #4] 8004086: 4413 add r3, r2 8004088: 3304 adds r3, #4 800408a: 60fb str r3, [r7, #12] 800408c: 68fb ldr r3, [r7, #12] 800408e: 695a ldr r2, [r3, #20] 8004090: 68fb ldr r3, [r7, #12] 8004092: 691b ldr r3, [r3, #16] 8004094: 429a cmp r2, r3 8004096: d901 bls.n 800409c 8004098: 2301 movs r3, #1 800409a: e06b b.n 8004174 800409c: 68fb ldr r3, [r7, #12] 800409e: 691a ldr r2, [r3, #16] 80040a0: 68fb ldr r3, [r7, #12] 80040a2: 695b ldr r3, [r3, #20] 80040a4: 1ad3 subs r3, r2, r3 80040a6: 61fb str r3, [r7, #28] 80040a8: 68fb ldr r3, [r7, #12] 80040aa: 689b ldr r3, [r3, #8] 80040ac: 69fa ldr r2, [r7, #28] 80040ae: 429a cmp r2, r3 80040b0: d902 bls.n 80040b8 80040b2: 68fb ldr r3, [r7, #12] 80040b4: 689b ldr r3, [r3, #8] 80040b6: 61fb str r3, [r7, #28] 80040b8: 69fb ldr r3, [r7, #28] 80040ba: 3303 adds r3, #3 80040bc: 089b lsrs r3, r3, #2 80040be: 61bb str r3, [r7, #24] 80040c0: e02a b.n 8004118 80040c2: 68fb ldr r3, [r7, #12] 80040c4: 691a ldr r2, [r3, #16] 80040c6: 68fb ldr r3, [r7, #12] 80040c8: 695b ldr r3, [r3, #20] 80040ca: 1ad3 subs r3, r2, r3 80040cc: 61fb str r3, [r7, #28] 80040ce: 68fb ldr r3, [r7, #12] 80040d0: 689b ldr r3, [r3, #8] 80040d2: 69fa ldr r2, [r7, #28] 80040d4: 429a cmp r2, r3 80040d6: d902 bls.n 80040de 80040d8: 68fb ldr r3, [r7, #12] 80040da: 689b ldr r3, [r3, #8] 80040dc: 61fb str r3, [r7, #28] 80040de: 69fb ldr r3, [r7, #28] 80040e0: 3303 adds r3, #3 80040e2: 089b lsrs r3, r3, #2 80040e4: 61bb str r3, [r7, #24] 80040e6: 68fb ldr r3, [r7, #12] 80040e8: 68d9 ldr r1, [r3, #12] 80040ea: 683b ldr r3, [r7, #0] 80040ec: b2da uxtb r2, r3 80040ee: 69fb ldr r3, [r7, #28] 80040f0: b298 uxth r0, r3 80040f2: 687b ldr r3, [r7, #4] 80040f4: 799b ldrb r3, [r3, #6] 80040f6: 9300 str r3, [sp, #0] 80040f8: 4603 mov r3, r0 80040fa: 6978 ldr r0, [r7, #20] 80040fc: f004 fbcc bl 8008898 8004100: 68fb ldr r3, [r7, #12] 8004102: 68da ldr r2, [r3, #12] 8004104: 69fb ldr r3, [r7, #28] 8004106: 441a add r2, r3 8004108: 68fb ldr r3, [r7, #12] 800410a: 60da str r2, [r3, #12] 800410c: 68fb ldr r3, [r7, #12] 800410e: 695a ldr r2, [r3, #20] 8004110: 69fb ldr r3, [r7, #28] 8004112: 441a add r2, r3 8004114: 68fb ldr r3, [r7, #12] 8004116: 615a str r2, [r3, #20] 8004118: 683b ldr r3, [r7, #0] 800411a: 015a lsls r2, r3, #5 800411c: 693b ldr r3, [r7, #16] 800411e: 4413 add r3, r2 8004120: f503 6310 add.w r3, r3, #2304 @ 0x900 8004124: 699b ldr r3, [r3, #24] 8004126: b29b uxth r3, r3 8004128: 69ba ldr r2, [r7, #24] 800412a: 429a cmp r2, r3 800412c: d809 bhi.n 8004142 800412e: 68fb ldr r3, [r7, #12] 8004130: 695a ldr r2, [r3, #20] 8004132: 68fb ldr r3, [r7, #12] 8004134: 691b ldr r3, [r3, #16] 8004136: 429a cmp r2, r3 8004138: d203 bcs.n 8004142 800413a: 68fb ldr r3, [r7, #12] 800413c: 691b ldr r3, [r3, #16] 800413e: 2b00 cmp r3, #0 8004140: d1bf bne.n 80040c2 8004142: 68fb ldr r3, [r7, #12] 8004144: 691a ldr r2, [r3, #16] 8004146: 68fb ldr r3, [r7, #12] 8004148: 695b ldr r3, [r3, #20] 800414a: 429a cmp r2, r3 800414c: d811 bhi.n 8004172 800414e: 683b ldr r3, [r7, #0] 8004150: f003 030f and.w r3, r3, #15 8004154: 2201 movs r2, #1 8004156: fa02 f303 lsl.w r3, r2, r3 800415a: 60bb str r3, [r7, #8] 800415c: 693b ldr r3, [r7, #16] 800415e: f503 6300 add.w r3, r3, #2048 @ 0x800 8004162: 6b5a ldr r2, [r3, #52] @ 0x34 8004164: 68bb ldr r3, [r7, #8] 8004166: 43db mvns r3, r3 8004168: 6939 ldr r1, [r7, #16] 800416a: f501 6100 add.w r1, r1, #2048 @ 0x800 800416e: 4013 ands r3, r2 8004170: 634b str r3, [r1, #52] @ 0x34 8004172: 2300 movs r3, #0 8004174: 4618 mov r0, r3 8004176: 3720 adds r7, #32 8004178: 46bd mov sp, r7 800417a: bd80 pop {r7, pc} 0800417c : 800417c: b580 push {r7, lr} 800417e: b088 sub sp, #32 8004180: af00 add r7, sp, #0 8004182: 6078 str r0, [r7, #4] 8004184: 6039 str r1, [r7, #0] 8004186: 687b ldr r3, [r7, #4] 8004188: 681b ldr r3, [r3, #0] 800418a: 61fb str r3, [r7, #28] 800418c: 69fb ldr r3, [r7, #28] 800418e: 61bb str r3, [r7, #24] 8004190: 69fb ldr r3, [r7, #28] 8004192: 333c adds r3, #60 @ 0x3c 8004194: 3304 adds r3, #4 8004196: 681b ldr r3, [r3, #0] 8004198: 617b str r3, [r7, #20] 800419a: 683b ldr r3, [r7, #0] 800419c: 015a lsls r2, r3, #5 800419e: 69bb ldr r3, [r7, #24] 80041a0: 4413 add r3, r2 80041a2: f503 6330 add.w r3, r3, #2816 @ 0xb00 80041a6: 689b ldr r3, [r3, #8] 80041a8: 613b str r3, [r7, #16] 80041aa: 687b ldr r3, [r7, #4] 80041ac: 799b ldrb r3, [r3, #6] 80041ae: 2b01 cmp r3, #1 80041b0: d17b bne.n 80042aa 80041b2: 693b ldr r3, [r7, #16] 80041b4: f003 0308 and.w r3, r3, #8 80041b8: 2b00 cmp r3, #0 80041ba: d015 beq.n 80041e8 80041bc: 697b ldr r3, [r7, #20] 80041be: 4a61 ldr r2, [pc, #388] @ (8004344 ) 80041c0: 4293 cmp r3, r2 80041c2: f240 80b9 bls.w 8004338 80041c6: 693b ldr r3, [r7, #16] 80041c8: f403 4300 and.w r3, r3, #32768 @ 0x8000 80041cc: 2b00 cmp r3, #0 80041ce: f000 80b3 beq.w 8004338 80041d2: 683b ldr r3, [r7, #0] 80041d4: 015a lsls r2, r3, #5 80041d6: 69bb ldr r3, [r7, #24] 80041d8: 4413 add r3, r2 80041da: f503 6330 add.w r3, r3, #2816 @ 0xb00 80041de: 461a mov r2, r3 80041e0: f44f 4300 mov.w r3, #32768 @ 0x8000 80041e4: 6093 str r3, [r2, #8] 80041e6: e0a7 b.n 8004338 80041e8: 693b ldr r3, [r7, #16] 80041ea: f003 0320 and.w r3, r3, #32 80041ee: 2b00 cmp r3, #0 80041f0: d009 beq.n 8004206 80041f2: 683b ldr r3, [r7, #0] 80041f4: 015a lsls r2, r3, #5 80041f6: 69bb ldr r3, [r7, #24] 80041f8: 4413 add r3, r2 80041fa: f503 6330 add.w r3, r3, #2816 @ 0xb00 80041fe: 461a mov r2, r3 8004200: 2320 movs r3, #32 8004202: 6093 str r3, [r2, #8] 8004204: e098 b.n 8004338 8004206: 693b ldr r3, [r7, #16] 8004208: f003 0328 and.w r3, r3, #40 @ 0x28 800420c: 2b00 cmp r3, #0 800420e: f040 8093 bne.w 8004338 8004212: 697b ldr r3, [r7, #20] 8004214: 4a4b ldr r2, [pc, #300] @ (8004344 ) 8004216: 4293 cmp r3, r2 8004218: d90f bls.n 800423a 800421a: 693b ldr r3, [r7, #16] 800421c: f403 4300 and.w r3, r3, #32768 @ 0x8000 8004220: 2b00 cmp r3, #0 8004222: d00a beq.n 800423a 8004224: 683b ldr r3, [r7, #0] 8004226: 015a lsls r2, r3, #5 8004228: 69bb ldr r3, [r7, #24] 800422a: 4413 add r3, r2 800422c: f503 6330 add.w r3, r3, #2816 @ 0xb00 8004230: 461a mov r2, r3 8004232: f44f 4300 mov.w r3, #32768 @ 0x8000 8004236: 6093 str r3, [r2, #8] 8004238: e07e b.n 8004338 800423a: 683a ldr r2, [r7, #0] 800423c: 4613 mov r3, r2 800423e: 00db lsls r3, r3, #3 8004240: 4413 add r3, r2 8004242: 009b lsls r3, r3, #2 8004244: f503 7314 add.w r3, r3, #592 @ 0x250 8004248: 687a ldr r2, [r7, #4] 800424a: 4413 add r3, r2 800424c: 3304 adds r3, #4 800424e: 60fb str r3, [r7, #12] 8004250: 68fb ldr r3, [r7, #12] 8004252: 6a1a ldr r2, [r3, #32] 8004254: 683b ldr r3, [r7, #0] 8004256: 0159 lsls r1, r3, #5 8004258: 69bb ldr r3, [r7, #24] 800425a: 440b add r3, r1 800425c: f503 6330 add.w r3, r3, #2816 @ 0xb00 8004260: 691b ldr r3, [r3, #16] 8004262: f3c3 0312 ubfx r3, r3, #0, #19 8004266: 1ad2 subs r2, r2, r3 8004268: 68fb ldr r3, [r7, #12] 800426a: 615a str r2, [r3, #20] 800426c: 683b ldr r3, [r7, #0] 800426e: 2b00 cmp r3, #0 8004270: d114 bne.n 800429c 8004272: 68fb ldr r3, [r7, #12] 8004274: 691b ldr r3, [r3, #16] 8004276: 2b00 cmp r3, #0 8004278: d109 bne.n 800428e 800427a: 687b ldr r3, [r7, #4] 800427c: 6818 ldr r0, [r3, #0] 800427e: 687b ldr r3, [r7, #4] 8004280: f203 439c addw r3, r3, #1180 @ 0x49c 8004284: 461a mov r2, r3 8004286: 2101 movs r1, #1 8004288: f004 fd9c bl 8008dc4 800428c: e006 b.n 800429c 800428e: 68fb ldr r3, [r7, #12] 8004290: 68da ldr r2, [r3, #12] 8004292: 68fb ldr r3, [r7, #12] 8004294: 695b ldr r3, [r3, #20] 8004296: 441a add r2, r3 8004298: 68fb ldr r3, [r7, #12] 800429a: 60da str r2, [r3, #12] 800429c: 683b ldr r3, [r7, #0] 800429e: b2db uxtb r3, r3 80042a0: 4619 mov r1, r3 80042a2: 6878 ldr r0, [r7, #4] 80042a4: f006 fd6a bl 800ad7c 80042a8: e046 b.n 8004338 80042aa: 697b ldr r3, [r7, #20] 80042ac: 4a26 ldr r2, [pc, #152] @ (8004348 ) 80042ae: 4293 cmp r3, r2 80042b0: d124 bne.n 80042fc 80042b2: 693b ldr r3, [r7, #16] 80042b4: f403 4300 and.w r3, r3, #32768 @ 0x8000 80042b8: 2b00 cmp r3, #0 80042ba: d00a beq.n 80042d2 80042bc: 683b ldr r3, [r7, #0] 80042be: 015a lsls r2, r3, #5 80042c0: 69bb ldr r3, [r7, #24] 80042c2: 4413 add r3, r2 80042c4: f503 6330 add.w r3, r3, #2816 @ 0xb00 80042c8: 461a mov r2, r3 80042ca: f44f 4300 mov.w r3, #32768 @ 0x8000 80042ce: 6093 str r3, [r2, #8] 80042d0: e032 b.n 8004338 80042d2: 693b ldr r3, [r7, #16] 80042d4: f003 0320 and.w r3, r3, #32 80042d8: 2b00 cmp r3, #0 80042da: d008 beq.n 80042ee 80042dc: 683b ldr r3, [r7, #0] 80042de: 015a lsls r2, r3, #5 80042e0: 69bb ldr r3, [r7, #24] 80042e2: 4413 add r3, r2 80042e4: f503 6330 add.w r3, r3, #2816 @ 0xb00 80042e8: 461a mov r2, r3 80042ea: 2320 movs r3, #32 80042ec: 6093 str r3, [r2, #8] 80042ee: 683b ldr r3, [r7, #0] 80042f0: b2db uxtb r3, r3 80042f2: 4619 mov r1, r3 80042f4: 6878 ldr r0, [r7, #4] 80042f6: f006 fd41 bl 800ad7c 80042fa: e01d b.n 8004338 80042fc: 683b ldr r3, [r7, #0] 80042fe: 2b00 cmp r3, #0 8004300: d114 bne.n 800432c 8004302: 6879 ldr r1, [r7, #4] 8004304: 683a ldr r2, [r7, #0] 8004306: 4613 mov r3, r2 8004308: 00db lsls r3, r3, #3 800430a: 4413 add r3, r2 800430c: 009b lsls r3, r3, #2 800430e: 440b add r3, r1 8004310: f503 7319 add.w r3, r3, #612 @ 0x264 8004314: 681b ldr r3, [r3, #0] 8004316: 2b00 cmp r3, #0 8004318: d108 bne.n 800432c 800431a: 687b ldr r3, [r7, #4] 800431c: 6818 ldr r0, [r3, #0] 800431e: 687b ldr r3, [r7, #4] 8004320: f203 439c addw r3, r3, #1180 @ 0x49c 8004324: 461a mov r2, r3 8004326: 2100 movs r1, #0 8004328: f004 fd4c bl 8008dc4 800432c: 683b ldr r3, [r7, #0] 800432e: b2db uxtb r3, r3 8004330: 4619 mov r1, r3 8004332: 6878 ldr r0, [r7, #4] 8004334: f006 fd22 bl 800ad7c 8004338: 2300 movs r3, #0 800433a: 4618 mov r0, r3 800433c: 3720 adds r7, #32 800433e: 46bd mov sp, r7 8004340: bd80 pop {r7, pc} 8004342: bf00 nop 8004344: 4f54300a .word 0x4f54300a 8004348: 4f54310a .word 0x4f54310a 0800434c : 800434c: b580 push {r7, lr} 800434e: b086 sub sp, #24 8004350: af00 add r7, sp, #0 8004352: 6078 str r0, [r7, #4] 8004354: 6039 str r1, [r7, #0] 8004356: 687b ldr r3, [r7, #4] 8004358: 681b ldr r3, [r3, #0] 800435a: 617b str r3, [r7, #20] 800435c: 697b ldr r3, [r7, #20] 800435e: 613b str r3, [r7, #16] 8004360: 697b ldr r3, [r7, #20] 8004362: 333c adds r3, #60 @ 0x3c 8004364: 3304 adds r3, #4 8004366: 681b ldr r3, [r3, #0] 8004368: 60fb str r3, [r7, #12] 800436a: 683b ldr r3, [r7, #0] 800436c: 015a lsls r2, r3, #5 800436e: 693b ldr r3, [r7, #16] 8004370: 4413 add r3, r2 8004372: f503 6330 add.w r3, r3, #2816 @ 0xb00 8004376: 689b ldr r3, [r3, #8] 8004378: 60bb str r3, [r7, #8] 800437a: 68fb ldr r3, [r7, #12] 800437c: 4a15 ldr r2, [pc, #84] @ (80043d4 ) 800437e: 4293 cmp r3, r2 8004380: d90e bls.n 80043a0 8004382: 68bb ldr r3, [r7, #8] 8004384: f403 4300 and.w r3, r3, #32768 @ 0x8000 8004388: 2b00 cmp r3, #0 800438a: d009 beq.n 80043a0 800438c: 683b ldr r3, [r7, #0] 800438e: 015a lsls r2, r3, #5 8004390: 693b ldr r3, [r7, #16] 8004392: 4413 add r3, r2 8004394: f503 6330 add.w r3, r3, #2816 @ 0xb00 8004398: 461a mov r2, r3 800439a: f44f 4300 mov.w r3, #32768 @ 0x8000 800439e: 6093 str r3, [r2, #8] 80043a0: 6878 ldr r0, [r7, #4] 80043a2: f006 fcd9 bl 800ad58 80043a6: 68fb ldr r3, [r7, #12] 80043a8: 4a0a ldr r2, [pc, #40] @ (80043d4 ) 80043aa: 4293 cmp r3, r2 80043ac: d90c bls.n 80043c8 80043ae: 687b ldr r3, [r7, #4] 80043b0: 799b ldrb r3, [r3, #6] 80043b2: 2b01 cmp r3, #1 80043b4: d108 bne.n 80043c8 80043b6: 687b ldr r3, [r7, #4] 80043b8: 6818 ldr r0, [r3, #0] 80043ba: 687b ldr r3, [r7, #4] 80043bc: f203 439c addw r3, r3, #1180 @ 0x49c 80043c0: 461a mov r2, r3 80043c2: 2101 movs r1, #1 80043c4: f004 fcfe bl 8008dc4 80043c8: 2300 movs r3, #0 80043ca: 4618 mov r0, r3 80043cc: 3718 adds r7, #24 80043ce: 46bd mov sp, r7 80043d0: bd80 pop {r7, pc} 80043d2: bf00 nop 80043d4: 4f54300a .word 0x4f54300a 080043d8 : 80043d8: b480 push {r7} 80043da: b085 sub sp, #20 80043dc: af00 add r7, sp, #0 80043de: 6078 str r0, [r7, #4] 80043e0: 460b mov r3, r1 80043e2: 70fb strb r3, [r7, #3] 80043e4: 4613 mov r3, r2 80043e6: 803b strh r3, [r7, #0] 80043e8: 687b ldr r3, [r7, #4] 80043ea: 681b ldr r3, [r3, #0] 80043ec: 6a5b ldr r3, [r3, #36] @ 0x24 80043ee: 60bb str r3, [r7, #8] 80043f0: 78fb ldrb r3, [r7, #3] 80043f2: 2b00 cmp r3, #0 80043f4: d107 bne.n 8004406 80043f6: 883b ldrh r3, [r7, #0] 80043f8: 0419 lsls r1, r3, #16 80043fa: 687b ldr r3, [r7, #4] 80043fc: 681b ldr r3, [r3, #0] 80043fe: 68ba ldr r2, [r7, #8] 8004400: 430a orrs r2, r1 8004402: 629a str r2, [r3, #40] @ 0x28 8004404: e028 b.n 8004458 8004406: 687b ldr r3, [r7, #4] 8004408: 681b ldr r3, [r3, #0] 800440a: 6a9b ldr r3, [r3, #40] @ 0x28 800440c: 0c1b lsrs r3, r3, #16 800440e: 68ba ldr r2, [r7, #8] 8004410: 4413 add r3, r2 8004412: 60bb str r3, [r7, #8] 8004414: 2300 movs r3, #0 8004416: 73fb strb r3, [r7, #15] 8004418: e00d b.n 8004436 800441a: 687b ldr r3, [r7, #4] 800441c: 681a ldr r2, [r3, #0] 800441e: 7bfb ldrb r3, [r7, #15] 8004420: 3340 adds r3, #64 @ 0x40 8004422: 009b lsls r3, r3, #2 8004424: 4413 add r3, r2 8004426: 685b ldr r3, [r3, #4] 8004428: 0c1b lsrs r3, r3, #16 800442a: 68ba ldr r2, [r7, #8] 800442c: 4413 add r3, r2 800442e: 60bb str r3, [r7, #8] 8004430: 7bfb ldrb r3, [r7, #15] 8004432: 3301 adds r3, #1 8004434: 73fb strb r3, [r7, #15] 8004436: 7bfa ldrb r2, [r7, #15] 8004438: 78fb ldrb r3, [r7, #3] 800443a: 3b01 subs r3, #1 800443c: 429a cmp r2, r3 800443e: d3ec bcc.n 800441a 8004440: 883b ldrh r3, [r7, #0] 8004442: 0418 lsls r0, r3, #16 8004444: 687b ldr r3, [r7, #4] 8004446: 6819 ldr r1, [r3, #0] 8004448: 78fb ldrb r3, [r7, #3] 800444a: 3b01 subs r3, #1 800444c: 68ba ldr r2, [r7, #8] 800444e: 4302 orrs r2, r0 8004450: 3340 adds r3, #64 @ 0x40 8004452: 009b lsls r3, r3, #2 8004454: 440b add r3, r1 8004456: 605a str r2, [r3, #4] 8004458: 2300 movs r3, #0 800445a: 4618 mov r0, r3 800445c: 3714 adds r7, #20 800445e: 46bd mov sp, r7 8004460: f85d 7b04 ldr.w r7, [sp], #4 8004464: 4770 bx lr 08004466 : 8004466: b480 push {r7} 8004468: b083 sub sp, #12 800446a: af00 add r7, sp, #0 800446c: 6078 str r0, [r7, #4] 800446e: 460b mov r3, r1 8004470: 807b strh r3, [r7, #2] 8004472: 687b ldr r3, [r7, #4] 8004474: 681b ldr r3, [r3, #0] 8004476: 887a ldrh r2, [r7, #2] 8004478: 625a str r2, [r3, #36] @ 0x24 800447a: 2300 movs r3, #0 800447c: 4618 mov r0, r3 800447e: 370c adds r7, #12 8004480: 46bd mov sp, r7 8004482: f85d 7b04 ldr.w r7, [sp], #4 8004486: 4770 bx lr 08004488 : 8004488: b480 push {r7} 800448a: b085 sub sp, #20 800448c: af00 add r7, sp, #0 800448e: 6078 str r0, [r7, #4] 8004490: 687b ldr r3, [r7, #4] 8004492: 681b ldr r3, [r3, #0] 8004494: 60fb str r3, [r7, #12] 8004496: 687b ldr r3, [r7, #4] 8004498: 2201 movs r2, #1 800449a: f8c3 24d8 str.w r2, [r3, #1240] @ 0x4d8 800449e: 687b ldr r3, [r7, #4] 80044a0: 2200 movs r2, #0 80044a2: f883 24cc strb.w r2, [r3, #1228] @ 0x4cc 80044a6: 68fb ldr r3, [r7, #12] 80044a8: 699b ldr r3, [r3, #24] 80044aa: f043 6200 orr.w r2, r3, #134217728 @ 0x8000000 80044ae: 68fb ldr r3, [r7, #12] 80044b0: 619a str r2, [r3, #24] 80044b2: 68fb ldr r3, [r7, #12] 80044b4: 6d5b ldr r3, [r3, #84] @ 0x54 80044b6: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 80044ba: f043 0303 orr.w r3, r3, #3 80044be: 68fa ldr r2, [r7, #12] 80044c0: 6553 str r3, [r2, #84] @ 0x54 80044c2: 2300 movs r3, #0 80044c4: 4618 mov r0, r3 80044c6: 3714 adds r7, #20 80044c8: 46bd mov sp, r7 80044ca: f85d 7b04 ldr.w r7, [sp], #4 80044ce: 4770 bx lr 080044d0 : 80044d0: b580 push {r7, lr} 80044d2: b084 sub sp, #16 80044d4: af00 add r7, sp, #0 80044d6: 6078 str r0, [r7, #4] 80044d8: 6039 str r1, [r7, #0] 80044da: 687b ldr r3, [r7, #4] 80044dc: 2b00 cmp r3, #0 80044de: d101 bne.n 80044e4 80044e0: 2301 movs r3, #1 80044e2: e0cc b.n 800467e 80044e4: 4b68 ldr r3, [pc, #416] @ (8004688 ) 80044e6: 681b ldr r3, [r3, #0] 80044e8: f003 030f and.w r3, r3, #15 80044ec: 683a ldr r2, [r7, #0] 80044ee: 429a cmp r2, r3 80044f0: d90c bls.n 800450c 80044f2: 4b65 ldr r3, [pc, #404] @ (8004688 ) 80044f4: 683a ldr r2, [r7, #0] 80044f6: b2d2 uxtb r2, r2 80044f8: 701a strb r2, [r3, #0] 80044fa: 4b63 ldr r3, [pc, #396] @ (8004688 ) 80044fc: 681b ldr r3, [r3, #0] 80044fe: f003 030f and.w r3, r3, #15 8004502: 683a ldr r2, [r7, #0] 8004504: 429a cmp r2, r3 8004506: d001 beq.n 800450c 8004508: 2301 movs r3, #1 800450a: e0b8 b.n 800467e 800450c: 687b ldr r3, [r7, #4] 800450e: 681b ldr r3, [r3, #0] 8004510: f003 0302 and.w r3, r3, #2 8004514: 2b00 cmp r3, #0 8004516: d020 beq.n 800455a 8004518: 687b ldr r3, [r7, #4] 800451a: 681b ldr r3, [r3, #0] 800451c: f003 0304 and.w r3, r3, #4 8004520: 2b00 cmp r3, #0 8004522: d005 beq.n 8004530 8004524: 4b59 ldr r3, [pc, #356] @ (800468c ) 8004526: 689b ldr r3, [r3, #8] 8004528: 4a58 ldr r2, [pc, #352] @ (800468c ) 800452a: f443 53e0 orr.w r3, r3, #7168 @ 0x1c00 800452e: 6093 str r3, [r2, #8] 8004530: 687b ldr r3, [r7, #4] 8004532: 681b ldr r3, [r3, #0] 8004534: f003 0308 and.w r3, r3, #8 8004538: 2b00 cmp r3, #0 800453a: d005 beq.n 8004548 800453c: 4b53 ldr r3, [pc, #332] @ (800468c ) 800453e: 689b ldr r3, [r3, #8] 8004540: 4a52 ldr r2, [pc, #328] @ (800468c ) 8004542: f443 4360 orr.w r3, r3, #57344 @ 0xe000 8004546: 6093 str r3, [r2, #8] 8004548: 4b50 ldr r3, [pc, #320] @ (800468c ) 800454a: 689b ldr r3, [r3, #8] 800454c: f023 02f0 bic.w r2, r3, #240 @ 0xf0 8004550: 687b ldr r3, [r7, #4] 8004552: 689b ldr r3, [r3, #8] 8004554: 494d ldr r1, [pc, #308] @ (800468c ) 8004556: 4313 orrs r3, r2 8004558: 608b str r3, [r1, #8] 800455a: 687b ldr r3, [r7, #4] 800455c: 681b ldr r3, [r3, #0] 800455e: f003 0301 and.w r3, r3, #1 8004562: 2b00 cmp r3, #0 8004564: d044 beq.n 80045f0 8004566: 687b ldr r3, [r7, #4] 8004568: 685b ldr r3, [r3, #4] 800456a: 2b01 cmp r3, #1 800456c: d107 bne.n 800457e 800456e: 4b47 ldr r3, [pc, #284] @ (800468c ) 8004570: 681b ldr r3, [r3, #0] 8004572: f403 3300 and.w r3, r3, #131072 @ 0x20000 8004576: 2b00 cmp r3, #0 8004578: d119 bne.n 80045ae 800457a: 2301 movs r3, #1 800457c: e07f b.n 800467e 800457e: 687b ldr r3, [r7, #4] 8004580: 685b ldr r3, [r3, #4] 8004582: 2b02 cmp r3, #2 8004584: d003 beq.n 800458e 8004586: 687b ldr r3, [r7, #4] 8004588: 685b ldr r3, [r3, #4] 800458a: 2b03 cmp r3, #3 800458c: d107 bne.n 800459e 800458e: 4b3f ldr r3, [pc, #252] @ (800468c ) 8004590: 681b ldr r3, [r3, #0] 8004592: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 8004596: 2b00 cmp r3, #0 8004598: d109 bne.n 80045ae 800459a: 2301 movs r3, #1 800459c: e06f b.n 800467e 800459e: 4b3b ldr r3, [pc, #236] @ (800468c ) 80045a0: 681b ldr r3, [r3, #0] 80045a2: f003 0302 and.w r3, r3, #2 80045a6: 2b00 cmp r3, #0 80045a8: d101 bne.n 80045ae 80045aa: 2301 movs r3, #1 80045ac: e067 b.n 800467e 80045ae: 4b37 ldr r3, [pc, #220] @ (800468c ) 80045b0: 689b ldr r3, [r3, #8] 80045b2: f023 0203 bic.w r2, r3, #3 80045b6: 687b ldr r3, [r7, #4] 80045b8: 685b ldr r3, [r3, #4] 80045ba: 4934 ldr r1, [pc, #208] @ (800468c ) 80045bc: 4313 orrs r3, r2 80045be: 608b str r3, [r1, #8] 80045c0: f7fd fcb2 bl 8001f28 80045c4: 60f8 str r0, [r7, #12] 80045c6: e00a b.n 80045de 80045c8: f7fd fcae bl 8001f28 80045cc: 4602 mov r2, r0 80045ce: 68fb ldr r3, [r7, #12] 80045d0: 1ad3 subs r3, r2, r3 80045d2: f241 3288 movw r2, #5000 @ 0x1388 80045d6: 4293 cmp r3, r2 80045d8: d901 bls.n 80045de 80045da: 2303 movs r3, #3 80045dc: e04f b.n 800467e 80045de: 4b2b ldr r3, [pc, #172] @ (800468c ) 80045e0: 689b ldr r3, [r3, #8] 80045e2: f003 020c and.w r2, r3, #12 80045e6: 687b ldr r3, [r7, #4] 80045e8: 685b ldr r3, [r3, #4] 80045ea: 009b lsls r3, r3, #2 80045ec: 429a cmp r2, r3 80045ee: d1eb bne.n 80045c8 80045f0: 4b25 ldr r3, [pc, #148] @ (8004688 ) 80045f2: 681b ldr r3, [r3, #0] 80045f4: f003 030f and.w r3, r3, #15 80045f8: 683a ldr r2, [r7, #0] 80045fa: 429a cmp r2, r3 80045fc: d20c bcs.n 8004618 80045fe: 4b22 ldr r3, [pc, #136] @ (8004688 ) 8004600: 683a ldr r2, [r7, #0] 8004602: b2d2 uxtb r2, r2 8004604: 701a strb r2, [r3, #0] 8004606: 4b20 ldr r3, [pc, #128] @ (8004688 ) 8004608: 681b ldr r3, [r3, #0] 800460a: f003 030f and.w r3, r3, #15 800460e: 683a ldr r2, [r7, #0] 8004610: 429a cmp r2, r3 8004612: d001 beq.n 8004618 8004614: 2301 movs r3, #1 8004616: e032 b.n 800467e 8004618: 687b ldr r3, [r7, #4] 800461a: 681b ldr r3, [r3, #0] 800461c: f003 0304 and.w r3, r3, #4 8004620: 2b00 cmp r3, #0 8004622: d008 beq.n 8004636 8004624: 4b19 ldr r3, [pc, #100] @ (800468c ) 8004626: 689b ldr r3, [r3, #8] 8004628: f423 52e0 bic.w r2, r3, #7168 @ 0x1c00 800462c: 687b ldr r3, [r7, #4] 800462e: 68db ldr r3, [r3, #12] 8004630: 4916 ldr r1, [pc, #88] @ (800468c ) 8004632: 4313 orrs r3, r2 8004634: 608b str r3, [r1, #8] 8004636: 687b ldr r3, [r7, #4] 8004638: 681b ldr r3, [r3, #0] 800463a: f003 0308 and.w r3, r3, #8 800463e: 2b00 cmp r3, #0 8004640: d009 beq.n 8004656 8004642: 4b12 ldr r3, [pc, #72] @ (800468c ) 8004644: 689b ldr r3, [r3, #8] 8004646: f423 4260 bic.w r2, r3, #57344 @ 0xe000 800464a: 687b ldr r3, [r7, #4] 800464c: 691b ldr r3, [r3, #16] 800464e: 00db lsls r3, r3, #3 8004650: 490e ldr r1, [pc, #56] @ (800468c ) 8004652: 4313 orrs r3, r2 8004654: 608b str r3, [r1, #8] 8004656: f000 fb7f bl 8004d58 800465a: 4602 mov r2, r0 800465c: 4b0b ldr r3, [pc, #44] @ (800468c ) 800465e: 689b ldr r3, [r3, #8] 8004660: 091b lsrs r3, r3, #4 8004662: f003 030f and.w r3, r3, #15 8004666: 490a ldr r1, [pc, #40] @ (8004690 ) 8004668: 5ccb ldrb r3, [r1, r3] 800466a: fa22 f303 lsr.w r3, r2, r3 800466e: 4a09 ldr r2, [pc, #36] @ (8004694 ) 8004670: 6013 str r3, [r2, #0] 8004672: 4b09 ldr r3, [pc, #36] @ (8004698 ) 8004674: 681b ldr r3, [r3, #0] 8004676: 4618 mov r0, r3 8004678: f7fd fc12 bl 8001ea0 800467c: 2300 movs r3, #0 800467e: 4618 mov r0, r3 8004680: 3710 adds r7, #16 8004682: 46bd mov sp, r7 8004684: bd80 pop {r7, pc} 8004686: bf00 nop 8004688: 40023c00 .word 0x40023c00 800468c: 40023800 .word 0x40023800 8004690: 0800b418 .word 0x0800b418 8004694: 20000090 .word 0x20000090 8004698: 20000094 .word 0x20000094 0800469c : 800469c: b480 push {r7} 800469e: af00 add r7, sp, #0 80046a0: 4b03 ldr r3, [pc, #12] @ (80046b0 ) 80046a2: 681b ldr r3, [r3, #0] 80046a4: 4618 mov r0, r3 80046a6: 46bd mov sp, r7 80046a8: f85d 7b04 ldr.w r7, [sp], #4 80046ac: 4770 bx lr 80046ae: bf00 nop 80046b0: 20000090 .word 0x20000090 080046b4 : 80046b4: b580 push {r7, lr} 80046b6: af00 add r7, sp, #0 80046b8: f7ff fff0 bl 800469c 80046bc: 4602 mov r2, r0 80046be: 4b05 ldr r3, [pc, #20] @ (80046d4 ) 80046c0: 689b ldr r3, [r3, #8] 80046c2: 0a9b lsrs r3, r3, #10 80046c4: f003 0307 and.w r3, r3, #7 80046c8: 4903 ldr r1, [pc, #12] @ (80046d8 ) 80046ca: 5ccb ldrb r3, [r1, r3] 80046cc: fa22 f303 lsr.w r3, r2, r3 80046d0: 4618 mov r0, r3 80046d2: bd80 pop {r7, pc} 80046d4: 40023800 .word 0x40023800 80046d8: 0800b428 .word 0x0800b428 080046dc : 80046dc: b580 push {r7, lr} 80046de: af00 add r7, sp, #0 80046e0: f7ff ffdc bl 800469c 80046e4: 4602 mov r2, r0 80046e6: 4b05 ldr r3, [pc, #20] @ (80046fc ) 80046e8: 689b ldr r3, [r3, #8] 80046ea: 0b5b lsrs r3, r3, #13 80046ec: f003 0307 and.w r3, r3, #7 80046f0: 4903 ldr r1, [pc, #12] @ (8004700 ) 80046f2: 5ccb ldrb r3, [r1, r3] 80046f4: fa22 f303 lsr.w r3, r2, r3 80046f8: 4618 mov r0, r3 80046fa: bd80 pop {r7, pc} 80046fc: 40023800 .word 0x40023800 8004700: 0800b428 .word 0x0800b428 08004704 : 8004704: b580 push {r7, lr} 8004706: b08c sub sp, #48 @ 0x30 8004708: af00 add r7, sp, #0 800470a: 6078 str r0, [r7, #4] 800470c: 2300 movs r3, #0 800470e: 627b str r3, [r7, #36] @ 0x24 8004710: 2300 movs r3, #0 8004712: 623b str r3, [r7, #32] 8004714: 2300 movs r3, #0 8004716: 61fb str r3, [r7, #28] 8004718: 2300 movs r3, #0 800471a: 61bb str r3, [r7, #24] 800471c: 2300 movs r3, #0 800471e: 617b str r3, [r7, #20] 8004720: 2300 movs r3, #0 8004722: 613b str r3, [r7, #16] 8004724: 2300 movs r3, #0 8004726: 60fb str r3, [r7, #12] 8004728: 2300 movs r3, #0 800472a: 62fb str r3, [r7, #44] @ 0x2c 800472c: 2300 movs r3, #0 800472e: 62bb str r3, [r7, #40] @ 0x28 8004730: 687b ldr r3, [r7, #4] 8004732: 681b ldr r3, [r3, #0] 8004734: f003 0301 and.w r3, r3, #1 8004738: 2b00 cmp r3, #0 800473a: d010 beq.n 800475e 800473c: 4b6f ldr r3, [pc, #444] @ (80048fc ) 800473e: f8d3 308c ldr.w r3, [r3, #140] @ 0x8c 8004742: f023 62c0 bic.w r2, r3, #100663296 @ 0x6000000 8004746: 687b ldr r3, [r7, #4] 8004748: 6b9b ldr r3, [r3, #56] @ 0x38 800474a: 496c ldr r1, [pc, #432] @ (80048fc ) 800474c: 4313 orrs r3, r2 800474e: f8c1 308c str.w r3, [r1, #140] @ 0x8c 8004752: 687b ldr r3, [r7, #4] 8004754: 6b9b ldr r3, [r3, #56] @ 0x38 8004756: 2b00 cmp r3, #0 8004758: d101 bne.n 800475e 800475a: 2301 movs r3, #1 800475c: 62fb str r3, [r7, #44] @ 0x2c 800475e: 687b ldr r3, [r7, #4] 8004760: 681b ldr r3, [r3, #0] 8004762: f003 0302 and.w r3, r3, #2 8004766: 2b00 cmp r3, #0 8004768: d010 beq.n 800478c 800476a: 4b64 ldr r3, [pc, #400] @ (80048fc ) 800476c: f8d3 308c ldr.w r3, [r3, #140] @ 0x8c 8004770: f023 52c0 bic.w r2, r3, #402653184 @ 0x18000000 8004774: 687b ldr r3, [r7, #4] 8004776: 6bdb ldr r3, [r3, #60] @ 0x3c 8004778: 4960 ldr r1, [pc, #384] @ (80048fc ) 800477a: 4313 orrs r3, r2 800477c: f8c1 308c str.w r3, [r1, #140] @ 0x8c 8004780: 687b ldr r3, [r7, #4] 8004782: 6bdb ldr r3, [r3, #60] @ 0x3c 8004784: 2b00 cmp r3, #0 8004786: d101 bne.n 800478c 8004788: 2301 movs r3, #1 800478a: 62fb str r3, [r7, #44] @ 0x2c 800478c: 687b ldr r3, [r7, #4] 800478e: 681b ldr r3, [r3, #0] 8004790: f003 0304 and.w r3, r3, #4 8004794: 2b00 cmp r3, #0 8004796: d017 beq.n 80047c8 8004798: 4b58 ldr r3, [pc, #352] @ (80048fc ) 800479a: f8d3 308c ldr.w r3, [r3, #140] @ 0x8c 800479e: f423 1240 bic.w r2, r3, #3145728 @ 0x300000 80047a2: 687b ldr r3, [r7, #4] 80047a4: 6b1b ldr r3, [r3, #48] @ 0x30 80047a6: 4955 ldr r1, [pc, #340] @ (80048fc ) 80047a8: 4313 orrs r3, r2 80047aa: f8c1 308c str.w r3, [r1, #140] @ 0x8c 80047ae: 687b ldr r3, [r7, #4] 80047b0: 6b1b ldr r3, [r3, #48] @ 0x30 80047b2: f5b3 1f80 cmp.w r3, #1048576 @ 0x100000 80047b6: d101 bne.n 80047bc 80047b8: 2301 movs r3, #1 80047ba: 62fb str r3, [r7, #44] @ 0x2c 80047bc: 687b ldr r3, [r7, #4] 80047be: 6b1b ldr r3, [r3, #48] @ 0x30 80047c0: 2b00 cmp r3, #0 80047c2: d101 bne.n 80047c8 80047c4: 2301 movs r3, #1 80047c6: 62bb str r3, [r7, #40] @ 0x28 80047c8: 687b ldr r3, [r7, #4] 80047ca: 681b ldr r3, [r3, #0] 80047cc: f003 0308 and.w r3, r3, #8 80047d0: 2b00 cmp r3, #0 80047d2: d017 beq.n 8004804 80047d4: 4b49 ldr r3, [pc, #292] @ (80048fc ) 80047d6: f8d3 308c ldr.w r3, [r3, #140] @ 0x8c 80047da: f423 0240 bic.w r2, r3, #12582912 @ 0xc00000 80047de: 687b ldr r3, [r7, #4] 80047e0: 6b5b ldr r3, [r3, #52] @ 0x34 80047e2: 4946 ldr r1, [pc, #280] @ (80048fc ) 80047e4: 4313 orrs r3, r2 80047e6: f8c1 308c str.w r3, [r1, #140] @ 0x8c 80047ea: 687b ldr r3, [r7, #4] 80047ec: 6b5b ldr r3, [r3, #52] @ 0x34 80047ee: f5b3 0f80 cmp.w r3, #4194304 @ 0x400000 80047f2: d101 bne.n 80047f8 80047f4: 2301 movs r3, #1 80047f6: 62fb str r3, [r7, #44] @ 0x2c 80047f8: 687b ldr r3, [r7, #4] 80047fa: 6b5b ldr r3, [r3, #52] @ 0x34 80047fc: 2b00 cmp r3, #0 80047fe: d101 bne.n 8004804 8004800: 2301 movs r3, #1 8004802: 62bb str r3, [r7, #40] @ 0x28 8004804: 687b ldr r3, [r7, #4] 8004806: 681b ldr r3, [r3, #0] 8004808: f003 0320 and.w r3, r3, #32 800480c: 2b00 cmp r3, #0 800480e: f000 808a beq.w 8004926 8004812: 2300 movs r3, #0 8004814: 60bb str r3, [r7, #8] 8004816: 4b39 ldr r3, [pc, #228] @ (80048fc ) 8004818: 6c1b ldr r3, [r3, #64] @ 0x40 800481a: 4a38 ldr r2, [pc, #224] @ (80048fc ) 800481c: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8004820: 6413 str r3, [r2, #64] @ 0x40 8004822: 4b36 ldr r3, [pc, #216] @ (80048fc ) 8004824: 6c1b ldr r3, [r3, #64] @ 0x40 8004826: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 800482a: 60bb str r3, [r7, #8] 800482c: 68bb ldr r3, [r7, #8] 800482e: 4b34 ldr r3, [pc, #208] @ (8004900 ) 8004830: 681b ldr r3, [r3, #0] 8004832: 4a33 ldr r2, [pc, #204] @ (8004900 ) 8004834: f443 7380 orr.w r3, r3, #256 @ 0x100 8004838: 6013 str r3, [r2, #0] 800483a: f7fd fb75 bl 8001f28 800483e: 6278 str r0, [r7, #36] @ 0x24 8004840: e008 b.n 8004854 8004842: f7fd fb71 bl 8001f28 8004846: 4602 mov r2, r0 8004848: 6a7b ldr r3, [r7, #36] @ 0x24 800484a: 1ad3 subs r3, r2, r3 800484c: 2b02 cmp r3, #2 800484e: d901 bls.n 8004854 8004850: 2303 movs r3, #3 8004852: e278 b.n 8004d46 8004854: 4b2a ldr r3, [pc, #168] @ (8004900 ) 8004856: 681b ldr r3, [r3, #0] 8004858: f403 7380 and.w r3, r3, #256 @ 0x100 800485c: 2b00 cmp r3, #0 800485e: d0f0 beq.n 8004842 8004860: 4b26 ldr r3, [pc, #152] @ (80048fc ) 8004862: 6f1b ldr r3, [r3, #112] @ 0x70 8004864: f403 7340 and.w r3, r3, #768 @ 0x300 8004868: 623b str r3, [r7, #32] 800486a: 6a3b ldr r3, [r7, #32] 800486c: 2b00 cmp r3, #0 800486e: d02f beq.n 80048d0 8004870: 687b ldr r3, [r7, #4] 8004872: 6c1b ldr r3, [r3, #64] @ 0x40 8004874: f403 7340 and.w r3, r3, #768 @ 0x300 8004878: 6a3a ldr r2, [r7, #32] 800487a: 429a cmp r2, r3 800487c: d028 beq.n 80048d0 800487e: 4b1f ldr r3, [pc, #124] @ (80048fc ) 8004880: 6f1b ldr r3, [r3, #112] @ 0x70 8004882: f423 7340 bic.w r3, r3, #768 @ 0x300 8004886: 623b str r3, [r7, #32] 8004888: 4b1e ldr r3, [pc, #120] @ (8004904 ) 800488a: 2201 movs r2, #1 800488c: 601a str r2, [r3, #0] 800488e: 4b1d ldr r3, [pc, #116] @ (8004904 ) 8004890: 2200 movs r2, #0 8004892: 601a str r2, [r3, #0] 8004894: 4a19 ldr r2, [pc, #100] @ (80048fc ) 8004896: 6a3b ldr r3, [r7, #32] 8004898: 6713 str r3, [r2, #112] @ 0x70 800489a: 4b18 ldr r3, [pc, #96] @ (80048fc ) 800489c: 6f1b ldr r3, [r3, #112] @ 0x70 800489e: f003 0301 and.w r3, r3, #1 80048a2: 2b01 cmp r3, #1 80048a4: d114 bne.n 80048d0 80048a6: f7fd fb3f bl 8001f28 80048aa: 6278 str r0, [r7, #36] @ 0x24 80048ac: e00a b.n 80048c4 80048ae: f7fd fb3b bl 8001f28 80048b2: 4602 mov r2, r0 80048b4: 6a7b ldr r3, [r7, #36] @ 0x24 80048b6: 1ad3 subs r3, r2, r3 80048b8: f241 3288 movw r2, #5000 @ 0x1388 80048bc: 4293 cmp r3, r2 80048be: d901 bls.n 80048c4 80048c0: 2303 movs r3, #3 80048c2: e240 b.n 8004d46 80048c4: 4b0d ldr r3, [pc, #52] @ (80048fc ) 80048c6: 6f1b ldr r3, [r3, #112] @ 0x70 80048c8: f003 0302 and.w r3, r3, #2 80048cc: 2b00 cmp r3, #0 80048ce: d0ee beq.n 80048ae 80048d0: 687b ldr r3, [r7, #4] 80048d2: 6c1b ldr r3, [r3, #64] @ 0x40 80048d4: f403 7340 and.w r3, r3, #768 @ 0x300 80048d8: f5b3 7f40 cmp.w r3, #768 @ 0x300 80048dc: d114 bne.n 8004908 80048de: 4b07 ldr r3, [pc, #28] @ (80048fc ) 80048e0: 689b ldr r3, [r3, #8] 80048e2: f423 12f8 bic.w r2, r3, #2031616 @ 0x1f0000 80048e6: 687b ldr r3, [r7, #4] 80048e8: 6c1b ldr r3, [r3, #64] @ 0x40 80048ea: f023 4370 bic.w r3, r3, #4026531840 @ 0xf0000000 80048ee: f423 7340 bic.w r3, r3, #768 @ 0x300 80048f2: 4902 ldr r1, [pc, #8] @ (80048fc ) 80048f4: 4313 orrs r3, r2 80048f6: 608b str r3, [r1, #8] 80048f8: e00c b.n 8004914 80048fa: bf00 nop 80048fc: 40023800 .word 0x40023800 8004900: 40007000 .word 0x40007000 8004904: 42470e40 .word 0x42470e40 8004908: 4b4a ldr r3, [pc, #296] @ (8004a34 ) 800490a: 689b ldr r3, [r3, #8] 800490c: 4a49 ldr r2, [pc, #292] @ (8004a34 ) 800490e: f423 13f8 bic.w r3, r3, #2031616 @ 0x1f0000 8004912: 6093 str r3, [r2, #8] 8004914: 4b47 ldr r3, [pc, #284] @ (8004a34 ) 8004916: 6f1a ldr r2, [r3, #112] @ 0x70 8004918: 687b ldr r3, [r7, #4] 800491a: 6c1b ldr r3, [r3, #64] @ 0x40 800491c: f3c3 030b ubfx r3, r3, #0, #12 8004920: 4944 ldr r1, [pc, #272] @ (8004a34 ) 8004922: 4313 orrs r3, r2 8004924: 670b str r3, [r1, #112] @ 0x70 8004926: 687b ldr r3, [r7, #4] 8004928: 681b ldr r3, [r3, #0] 800492a: f003 0310 and.w r3, r3, #16 800492e: 2b00 cmp r3, #0 8004930: d004 beq.n 800493c 8004932: 687b ldr r3, [r7, #4] 8004934: f893 2058 ldrb.w r2, [r3, #88] @ 0x58 8004938: 4b3f ldr r3, [pc, #252] @ (8004a38 ) 800493a: 601a str r2, [r3, #0] 800493c: 687b ldr r3, [r7, #4] 800493e: 681b ldr r3, [r3, #0] 8004940: f003 0380 and.w r3, r3, #128 @ 0x80 8004944: 2b00 cmp r3, #0 8004946: d00a beq.n 800495e 8004948: 4b3a ldr r3, [pc, #232] @ (8004a34 ) 800494a: f8d3 3094 ldr.w r3, [r3, #148] @ 0x94 800494e: f423 0240 bic.w r2, r3, #12582912 @ 0xc00000 8004952: 687b ldr r3, [r7, #4] 8004954: 6cdb ldr r3, [r3, #76] @ 0x4c 8004956: 4937 ldr r1, [pc, #220] @ (8004a34 ) 8004958: 4313 orrs r3, r2 800495a: f8c1 3094 str.w r3, [r1, #148] @ 0x94 800495e: 687b ldr r3, [r7, #4] 8004960: 681b ldr r3, [r3, #0] 8004962: f003 0340 and.w r3, r3, #64 @ 0x40 8004966: 2b00 cmp r3, #0 8004968: d00a beq.n 8004980 800496a: 4b32 ldr r3, [pc, #200] @ (8004a34 ) 800496c: f8d3 3094 ldr.w r3, [r3, #148] @ 0x94 8004970: f023 6280 bic.w r2, r3, #67108864 @ 0x4000000 8004974: 687b ldr r3, [r7, #4] 8004976: 6c9b ldr r3, [r3, #72] @ 0x48 8004978: 492e ldr r1, [pc, #184] @ (8004a34 ) 800497a: 4313 orrs r3, r2 800497c: f8c1 3094 str.w r3, [r1, #148] @ 0x94 8004980: 687b ldr r3, [r7, #4] 8004982: 681b ldr r3, [r3, #0] 8004984: f403 7380 and.w r3, r3, #256 @ 0x100 8004988: 2b00 cmp r3, #0 800498a: d011 beq.n 80049b0 800498c: 4b29 ldr r3, [pc, #164] @ (8004a34 ) 800498e: f8d3 3094 ldr.w r3, [r3, #148] @ 0x94 8004992: f023 6200 bic.w r2, r3, #134217728 @ 0x8000000 8004996: 687b ldr r3, [r7, #4] 8004998: 6d5b ldr r3, [r3, #84] @ 0x54 800499a: 4926 ldr r1, [pc, #152] @ (8004a34 ) 800499c: 4313 orrs r3, r2 800499e: f8c1 3094 str.w r3, [r1, #148] @ 0x94 80049a2: 687b ldr r3, [r7, #4] 80049a4: 6d5b ldr r3, [r3, #84] @ 0x54 80049a6: f1b3 6f00 cmp.w r3, #134217728 @ 0x8000000 80049aa: d101 bne.n 80049b0 80049ac: 2301 movs r3, #1 80049ae: 62bb str r3, [r7, #40] @ 0x28 80049b0: 687b ldr r3, [r7, #4] 80049b2: 681b ldr r3, [r3, #0] 80049b4: f403 7300 and.w r3, r3, #512 @ 0x200 80049b8: 2b00 cmp r3, #0 80049ba: d00a beq.n 80049d2 80049bc: 4b1d ldr r3, [pc, #116] @ (8004a34 ) 80049be: f8d3 3094 ldr.w r3, [r3, #148] @ 0x94 80049c2: f023 5280 bic.w r2, r3, #268435456 @ 0x10000000 80049c6: 687b ldr r3, [r7, #4] 80049c8: 6c5b ldr r3, [r3, #68] @ 0x44 80049ca: 491a ldr r1, [pc, #104] @ (8004a34 ) 80049cc: 4313 orrs r3, r2 80049ce: f8c1 3094 str.w r3, [r1, #148] @ 0x94 80049d2: 687b ldr r3, [r7, #4] 80049d4: 681b ldr r3, [r3, #0] 80049d6: f403 6380 and.w r3, r3, #1024 @ 0x400 80049da: 2b00 cmp r3, #0 80049dc: d011 beq.n 8004a02 80049de: 4b15 ldr r3, [pc, #84] @ (8004a34 ) 80049e0: f8d3 3094 ldr.w r3, [r3, #148] @ 0x94 80049e4: f023 5200 bic.w r2, r3, #536870912 @ 0x20000000 80049e8: 687b ldr r3, [r7, #4] 80049ea: 6d1b ldr r3, [r3, #80] @ 0x50 80049ec: 4911 ldr r1, [pc, #68] @ (8004a34 ) 80049ee: 4313 orrs r3, r2 80049f0: f8c1 3094 str.w r3, [r1, #148] @ 0x94 80049f4: 687b ldr r3, [r7, #4] 80049f6: 6d1b ldr r3, [r3, #80] @ 0x50 80049f8: f1b3 5f00 cmp.w r3, #536870912 @ 0x20000000 80049fc: d101 bne.n 8004a02 80049fe: 2301 movs r3, #1 8004a00: 62fb str r3, [r7, #44] @ 0x2c 8004a02: 6afb ldr r3, [r7, #44] @ 0x2c 8004a04: 2b01 cmp r3, #1 8004a06: d005 beq.n 8004a14 8004a08: 687b ldr r3, [r7, #4] 8004a0a: 681b ldr r3, [r3, #0] 8004a0c: f5b3 6f00 cmp.w r3, #2048 @ 0x800 8004a10: f040 80ff bne.w 8004c12 8004a14: 4b09 ldr r3, [pc, #36] @ (8004a3c ) 8004a16: 2200 movs r2, #0 8004a18: 601a str r2, [r3, #0] 8004a1a: f7fd fa85 bl 8001f28 8004a1e: 6278 str r0, [r7, #36] @ 0x24 8004a20: e00e b.n 8004a40 8004a22: f7fd fa81 bl 8001f28 8004a26: 4602 mov r2, r0 8004a28: 6a7b ldr r3, [r7, #36] @ 0x24 8004a2a: 1ad3 subs r3, r2, r3 8004a2c: 2b02 cmp r3, #2 8004a2e: d907 bls.n 8004a40 8004a30: 2303 movs r3, #3 8004a32: e188 b.n 8004d46 8004a34: 40023800 .word 0x40023800 8004a38: 424711e0 .word 0x424711e0 8004a3c: 42470068 .word 0x42470068 8004a40: 4b7e ldr r3, [pc, #504] @ (8004c3c ) 8004a42: 681b ldr r3, [r3, #0] 8004a44: f003 6300 and.w r3, r3, #134217728 @ 0x8000000 8004a48: 2b00 cmp r3, #0 8004a4a: d1ea bne.n 8004a22 8004a4c: 687b ldr r3, [r7, #4] 8004a4e: 681b ldr r3, [r3, #0] 8004a50: f003 0301 and.w r3, r3, #1 8004a54: 2b00 cmp r3, #0 8004a56: d003 beq.n 8004a60 8004a58: 687b ldr r3, [r7, #4] 8004a5a: 6b9b ldr r3, [r3, #56] @ 0x38 8004a5c: 2b00 cmp r3, #0 8004a5e: d009 beq.n 8004a74 8004a60: 687b ldr r3, [r7, #4] 8004a62: 681b ldr r3, [r3, #0] 8004a64: f003 0302 and.w r3, r3, #2 8004a68: 2b00 cmp r3, #0 8004a6a: d028 beq.n 8004abe 8004a6c: 687b ldr r3, [r7, #4] 8004a6e: 6bdb ldr r3, [r3, #60] @ 0x3c 8004a70: 2b00 cmp r3, #0 8004a72: d124 bne.n 8004abe 8004a74: 4b71 ldr r3, [pc, #452] @ (8004c3c ) 8004a76: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 8004a7a: 0c1b lsrs r3, r3, #16 8004a7c: f003 0303 and.w r3, r3, #3 8004a80: 3301 adds r3, #1 8004a82: 005b lsls r3, r3, #1 8004a84: 61fb str r3, [r7, #28] 8004a86: 4b6d ldr r3, [pc, #436] @ (8004c3c ) 8004a88: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 8004a8c: 0e1b lsrs r3, r3, #24 8004a8e: f003 030f and.w r3, r3, #15 8004a92: 61bb str r3, [r7, #24] 8004a94: 687b ldr r3, [r7, #4] 8004a96: 685a ldr r2, [r3, #4] 8004a98: 687b ldr r3, [r7, #4] 8004a9a: 689b ldr r3, [r3, #8] 8004a9c: 019b lsls r3, r3, #6 8004a9e: 431a orrs r2, r3 8004aa0: 69fb ldr r3, [r7, #28] 8004aa2: 085b lsrs r3, r3, #1 8004aa4: 3b01 subs r3, #1 8004aa6: 041b lsls r3, r3, #16 8004aa8: 431a orrs r2, r3 8004aaa: 69bb ldr r3, [r7, #24] 8004aac: 061b lsls r3, r3, #24 8004aae: 431a orrs r2, r3 8004ab0: 687b ldr r3, [r7, #4] 8004ab2: 695b ldr r3, [r3, #20] 8004ab4: 071b lsls r3, r3, #28 8004ab6: 4961 ldr r1, [pc, #388] @ (8004c3c ) 8004ab8: 4313 orrs r3, r2 8004aba: f8c1 3084 str.w r3, [r1, #132] @ 0x84 8004abe: 687b ldr r3, [r7, #4] 8004ac0: 681b ldr r3, [r3, #0] 8004ac2: f003 0304 and.w r3, r3, #4 8004ac6: 2b00 cmp r3, #0 8004ac8: d004 beq.n 8004ad4 8004aca: 687b ldr r3, [r7, #4] 8004acc: 6b1b ldr r3, [r3, #48] @ 0x30 8004ace: f5b3 1f80 cmp.w r3, #1048576 @ 0x100000 8004ad2: d00a beq.n 8004aea 8004ad4: 687b ldr r3, [r7, #4] 8004ad6: 681b ldr r3, [r3, #0] 8004ad8: f003 0308 and.w r3, r3, #8 8004adc: 2b00 cmp r3, #0 8004ade: d035 beq.n 8004b4c 8004ae0: 687b ldr r3, [r7, #4] 8004ae2: 6b5b ldr r3, [r3, #52] @ 0x34 8004ae4: f5b3 0f80 cmp.w r3, #4194304 @ 0x400000 8004ae8: d130 bne.n 8004b4c 8004aea: 4b54 ldr r3, [pc, #336] @ (8004c3c ) 8004aec: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 8004af0: 0c1b lsrs r3, r3, #16 8004af2: f003 0303 and.w r3, r3, #3 8004af6: 3301 adds r3, #1 8004af8: 005b lsls r3, r3, #1 8004afa: 61fb str r3, [r7, #28] 8004afc: 4b4f ldr r3, [pc, #316] @ (8004c3c ) 8004afe: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 8004b02: 0f1b lsrs r3, r3, #28 8004b04: f003 0307 and.w r3, r3, #7 8004b08: 617b str r3, [r7, #20] 8004b0a: 687b ldr r3, [r7, #4] 8004b0c: 685a ldr r2, [r3, #4] 8004b0e: 687b ldr r3, [r7, #4] 8004b10: 689b ldr r3, [r3, #8] 8004b12: 019b lsls r3, r3, #6 8004b14: 431a orrs r2, r3 8004b16: 69fb ldr r3, [r7, #28] 8004b18: 085b lsrs r3, r3, #1 8004b1a: 3b01 subs r3, #1 8004b1c: 041b lsls r3, r3, #16 8004b1e: 431a orrs r2, r3 8004b20: 687b ldr r3, [r7, #4] 8004b22: 691b ldr r3, [r3, #16] 8004b24: 061b lsls r3, r3, #24 8004b26: 431a orrs r2, r3 8004b28: 697b ldr r3, [r7, #20] 8004b2a: 071b lsls r3, r3, #28 8004b2c: 4943 ldr r1, [pc, #268] @ (8004c3c ) 8004b2e: 4313 orrs r3, r2 8004b30: f8c1 3084 str.w r3, [r1, #132] @ 0x84 8004b34: 4b41 ldr r3, [pc, #260] @ (8004c3c ) 8004b36: f8d3 308c ldr.w r3, [r3, #140] @ 0x8c 8004b3a: f023 021f bic.w r2, r3, #31 8004b3e: 687b ldr r3, [r7, #4] 8004b40: 6a9b ldr r3, [r3, #40] @ 0x28 8004b42: 3b01 subs r3, #1 8004b44: 493d ldr r1, [pc, #244] @ (8004c3c ) 8004b46: 4313 orrs r3, r2 8004b48: f8c1 308c str.w r3, [r1, #140] @ 0x8c 8004b4c: 687b ldr r3, [r7, #4] 8004b4e: 681b ldr r3, [r3, #0] 8004b50: f403 6380 and.w r3, r3, #1024 @ 0x400 8004b54: 2b00 cmp r3, #0 8004b56: d029 beq.n 8004bac 8004b58: 687b ldr r3, [r7, #4] 8004b5a: 6d1b ldr r3, [r3, #80] @ 0x50 8004b5c: f1b3 5f00 cmp.w r3, #536870912 @ 0x20000000 8004b60: d124 bne.n 8004bac 8004b62: 4b36 ldr r3, [pc, #216] @ (8004c3c ) 8004b64: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 8004b68: 0c1b lsrs r3, r3, #16 8004b6a: f003 0303 and.w r3, r3, #3 8004b6e: 3301 adds r3, #1 8004b70: 005b lsls r3, r3, #1 8004b72: 61bb str r3, [r7, #24] 8004b74: 4b31 ldr r3, [pc, #196] @ (8004c3c ) 8004b76: f8d3 3084 ldr.w r3, [r3, #132] @ 0x84 8004b7a: 0f1b lsrs r3, r3, #28 8004b7c: f003 0307 and.w r3, r3, #7 8004b80: 617b str r3, [r7, #20] 8004b82: 687b ldr r3, [r7, #4] 8004b84: 685a ldr r2, [r3, #4] 8004b86: 687b ldr r3, [r7, #4] 8004b88: 689b ldr r3, [r3, #8] 8004b8a: 019b lsls r3, r3, #6 8004b8c: 431a orrs r2, r3 8004b8e: 687b ldr r3, [r7, #4] 8004b90: 68db ldr r3, [r3, #12] 8004b92: 085b lsrs r3, r3, #1 8004b94: 3b01 subs r3, #1 8004b96: 041b lsls r3, r3, #16 8004b98: 431a orrs r2, r3 8004b9a: 69bb ldr r3, [r7, #24] 8004b9c: 061b lsls r3, r3, #24 8004b9e: 431a orrs r2, r3 8004ba0: 697b ldr r3, [r7, #20] 8004ba2: 071b lsls r3, r3, #28 8004ba4: 4925 ldr r1, [pc, #148] @ (8004c3c ) 8004ba6: 4313 orrs r3, r2 8004ba8: f8c1 3084 str.w r3, [r1, #132] @ 0x84 8004bac: 687b ldr r3, [r7, #4] 8004bae: 681b ldr r3, [r3, #0] 8004bb0: f403 6300 and.w r3, r3, #2048 @ 0x800 8004bb4: 2b00 cmp r3, #0 8004bb6: d016 beq.n 8004be6 8004bb8: 687b ldr r3, [r7, #4] 8004bba: 685a ldr r2, [r3, #4] 8004bbc: 687b ldr r3, [r7, #4] 8004bbe: 689b ldr r3, [r3, #8] 8004bc0: 019b lsls r3, r3, #6 8004bc2: 431a orrs r2, r3 8004bc4: 687b ldr r3, [r7, #4] 8004bc6: 68db ldr r3, [r3, #12] 8004bc8: 085b lsrs r3, r3, #1 8004bca: 3b01 subs r3, #1 8004bcc: 041b lsls r3, r3, #16 8004bce: 431a orrs r2, r3 8004bd0: 687b ldr r3, [r7, #4] 8004bd2: 691b ldr r3, [r3, #16] 8004bd4: 061b lsls r3, r3, #24 8004bd6: 431a orrs r2, r3 8004bd8: 687b ldr r3, [r7, #4] 8004bda: 695b ldr r3, [r3, #20] 8004bdc: 071b lsls r3, r3, #28 8004bde: 4917 ldr r1, [pc, #92] @ (8004c3c ) 8004be0: 4313 orrs r3, r2 8004be2: f8c1 3084 str.w r3, [r1, #132] @ 0x84 8004be6: 4b16 ldr r3, [pc, #88] @ (8004c40 ) 8004be8: 2201 movs r2, #1 8004bea: 601a str r2, [r3, #0] 8004bec: f7fd f99c bl 8001f28 8004bf0: 6278 str r0, [r7, #36] @ 0x24 8004bf2: e008 b.n 8004c06 8004bf4: f7fd f998 bl 8001f28 8004bf8: 4602 mov r2, r0 8004bfa: 6a7b ldr r3, [r7, #36] @ 0x24 8004bfc: 1ad3 subs r3, r2, r3 8004bfe: 2b02 cmp r3, #2 8004c00: d901 bls.n 8004c06 8004c02: 2303 movs r3, #3 8004c04: e09f b.n 8004d46 8004c06: 4b0d ldr r3, [pc, #52] @ (8004c3c ) 8004c08: 681b ldr r3, [r3, #0] 8004c0a: f003 6300 and.w r3, r3, #134217728 @ 0x8000000 8004c0e: 2b00 cmp r3, #0 8004c10: d0f0 beq.n 8004bf4 8004c12: 6abb ldr r3, [r7, #40] @ 0x28 8004c14: 2b01 cmp r3, #1 8004c16: f040 8095 bne.w 8004d44 8004c1a: 4b0a ldr r3, [pc, #40] @ (8004c44 ) 8004c1c: 2200 movs r2, #0 8004c1e: 601a str r2, [r3, #0] 8004c20: f7fd f982 bl 8001f28 8004c24: 6278 str r0, [r7, #36] @ 0x24 8004c26: e00f b.n 8004c48 8004c28: f7fd f97e bl 8001f28 8004c2c: 4602 mov r2, r0 8004c2e: 6a7b ldr r3, [r7, #36] @ 0x24 8004c30: 1ad3 subs r3, r2, r3 8004c32: 2b02 cmp r3, #2 8004c34: d908 bls.n 8004c48 8004c36: 2303 movs r3, #3 8004c38: e085 b.n 8004d46 8004c3a: bf00 nop 8004c3c: 40023800 .word 0x40023800 8004c40: 42470068 .word 0x42470068 8004c44: 42470070 .word 0x42470070 8004c48: 4b41 ldr r3, [pc, #260] @ (8004d50 ) 8004c4a: 681b ldr r3, [r3, #0] 8004c4c: f003 5300 and.w r3, r3, #536870912 @ 0x20000000 8004c50: f1b3 5f00 cmp.w r3, #536870912 @ 0x20000000 8004c54: d0e8 beq.n 8004c28 8004c56: 687b ldr r3, [r7, #4] 8004c58: 681b ldr r3, [r3, #0] 8004c5a: f003 0304 and.w r3, r3, #4 8004c5e: 2b00 cmp r3, #0 8004c60: d003 beq.n 8004c6a 8004c62: 687b ldr r3, [r7, #4] 8004c64: 6b1b ldr r3, [r3, #48] @ 0x30 8004c66: 2b00 cmp r3, #0 8004c68: d009 beq.n 8004c7e 8004c6a: 687b ldr r3, [r7, #4] 8004c6c: 681b ldr r3, [r3, #0] 8004c6e: f003 0308 and.w r3, r3, #8 8004c72: 2b00 cmp r3, #0 8004c74: d02b beq.n 8004cce 8004c76: 687b ldr r3, [r7, #4] 8004c78: 6b5b ldr r3, [r3, #52] @ 0x34 8004c7a: 2b00 cmp r3, #0 8004c7c: d127 bne.n 8004cce 8004c7e: 4b34 ldr r3, [pc, #208] @ (8004d50 ) 8004c80: f8d3 3088 ldr.w r3, [r3, #136] @ 0x88 8004c84: 0c1b lsrs r3, r3, #16 8004c86: f003 0303 and.w r3, r3, #3 8004c8a: 3301 adds r3, #1 8004c8c: 005b lsls r3, r3, #1 8004c8e: 613b str r3, [r7, #16] 8004c90: 687b ldr r3, [r7, #4] 8004c92: 699a ldr r2, [r3, #24] 8004c94: 687b ldr r3, [r7, #4] 8004c96: 69db ldr r3, [r3, #28] 8004c98: 019b lsls r3, r3, #6 8004c9a: 431a orrs r2, r3 8004c9c: 693b ldr r3, [r7, #16] 8004c9e: 085b lsrs r3, r3, #1 8004ca0: 3b01 subs r3, #1 8004ca2: 041b lsls r3, r3, #16 8004ca4: 431a orrs r2, r3 8004ca6: 687b ldr r3, [r7, #4] 8004ca8: 6a5b ldr r3, [r3, #36] @ 0x24 8004caa: 061b lsls r3, r3, #24 8004cac: 4928 ldr r1, [pc, #160] @ (8004d50 ) 8004cae: 4313 orrs r3, r2 8004cb0: f8c1 3088 str.w r3, [r1, #136] @ 0x88 8004cb4: 4b26 ldr r3, [pc, #152] @ (8004d50 ) 8004cb6: f8d3 308c ldr.w r3, [r3, #140] @ 0x8c 8004cba: f423 52f8 bic.w r2, r3, #7936 @ 0x1f00 8004cbe: 687b ldr r3, [r7, #4] 8004cc0: 6adb ldr r3, [r3, #44] @ 0x2c 8004cc2: 3b01 subs r3, #1 8004cc4: 021b lsls r3, r3, #8 8004cc6: 4922 ldr r1, [pc, #136] @ (8004d50 ) 8004cc8: 4313 orrs r3, r2 8004cca: f8c1 308c str.w r3, [r1, #140] @ 0x8c 8004cce: 687b ldr r3, [r7, #4] 8004cd0: 681b ldr r3, [r3, #0] 8004cd2: f403 7380 and.w r3, r3, #256 @ 0x100 8004cd6: 2b00 cmp r3, #0 8004cd8: d01d beq.n 8004d16 8004cda: 687b ldr r3, [r7, #4] 8004cdc: 6d5b ldr r3, [r3, #84] @ 0x54 8004cde: f1b3 6f00 cmp.w r3, #134217728 @ 0x8000000 8004ce2: d118 bne.n 8004d16 8004ce4: 4b1a ldr r3, [pc, #104] @ (8004d50 ) 8004ce6: f8d3 3088 ldr.w r3, [r3, #136] @ 0x88 8004cea: 0e1b lsrs r3, r3, #24 8004cec: f003 030f and.w r3, r3, #15 8004cf0: 60fb str r3, [r7, #12] 8004cf2: 687b ldr r3, [r7, #4] 8004cf4: 699a ldr r2, [r3, #24] 8004cf6: 687b ldr r3, [r7, #4] 8004cf8: 69db ldr r3, [r3, #28] 8004cfa: 019b lsls r3, r3, #6 8004cfc: 431a orrs r2, r3 8004cfe: 687b ldr r3, [r7, #4] 8004d00: 6a1b ldr r3, [r3, #32] 8004d02: 085b lsrs r3, r3, #1 8004d04: 3b01 subs r3, #1 8004d06: 041b lsls r3, r3, #16 8004d08: 431a orrs r2, r3 8004d0a: 68fb ldr r3, [r7, #12] 8004d0c: 061b lsls r3, r3, #24 8004d0e: 4910 ldr r1, [pc, #64] @ (8004d50 ) 8004d10: 4313 orrs r3, r2 8004d12: f8c1 3088 str.w r3, [r1, #136] @ 0x88 8004d16: 4b0f ldr r3, [pc, #60] @ (8004d54 ) 8004d18: 2201 movs r2, #1 8004d1a: 601a str r2, [r3, #0] 8004d1c: f7fd f904 bl 8001f28 8004d20: 6278 str r0, [r7, #36] @ 0x24 8004d22: e008 b.n 8004d36 8004d24: f7fd f900 bl 8001f28 8004d28: 4602 mov r2, r0 8004d2a: 6a7b ldr r3, [r7, #36] @ 0x24 8004d2c: 1ad3 subs r3, r2, r3 8004d2e: 2b02 cmp r3, #2 8004d30: d901 bls.n 8004d36 8004d32: 2303 movs r3, #3 8004d34: e007 b.n 8004d46 8004d36: 4b06 ldr r3, [pc, #24] @ (8004d50 ) 8004d38: 681b ldr r3, [r3, #0] 8004d3a: f003 5300 and.w r3, r3, #536870912 @ 0x20000000 8004d3e: f1b3 5f00 cmp.w r3, #536870912 @ 0x20000000 8004d42: d1ef bne.n 8004d24 8004d44: 2300 movs r3, #0 8004d46: 4618 mov r0, r3 8004d48: 3730 adds r7, #48 @ 0x30 8004d4a: 46bd mov sp, r7 8004d4c: bd80 pop {r7, pc} 8004d4e: bf00 nop 8004d50: 40023800 .word 0x40023800 8004d54: 42470070 .word 0x42470070 08004d58 : 8004d58: e92d 4fb0 stmdb sp!, {r4, r5, r7, r8, r9, sl, fp, lr} 8004d5c: b0ae sub sp, #184 @ 0xb8 8004d5e: af00 add r7, sp, #0 8004d60: 2300 movs r3, #0 8004d62: f8c7 30ac str.w r3, [r7, #172] @ 0xac 8004d66: 2300 movs r3, #0 8004d68: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 8004d6c: 2300 movs r3, #0 8004d6e: f8c7 30a8 str.w r3, [r7, #168] @ 0xa8 8004d72: 2300 movs r3, #0 8004d74: f8c7 30a4 str.w r3, [r7, #164] @ 0xa4 8004d78: 2300 movs r3, #0 8004d7a: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 8004d7e: 4bcb ldr r3, [pc, #812] @ (80050ac ) 8004d80: 689b ldr r3, [r3, #8] 8004d82: f003 030c and.w r3, r3, #12 8004d86: 2b0c cmp r3, #12 8004d88: f200 8206 bhi.w 8005198 8004d8c: a201 add r2, pc, #4 @ (adr r2, 8004d94 ) 8004d8e: f852 f023 ldr.w pc, [r2, r3, lsl #2] 8004d92: bf00 nop 8004d94: 08004dc9 .word 0x08004dc9 8004d98: 08005199 .word 0x08005199 8004d9c: 08005199 .word 0x08005199 8004da0: 08005199 .word 0x08005199 8004da4: 08004dd1 .word 0x08004dd1 8004da8: 08005199 .word 0x08005199 8004dac: 08005199 .word 0x08005199 8004db0: 08005199 .word 0x08005199 8004db4: 08004dd9 .word 0x08004dd9 8004db8: 08005199 .word 0x08005199 8004dbc: 08005199 .word 0x08005199 8004dc0: 08005199 .word 0x08005199 8004dc4: 08004fc9 .word 0x08004fc9 8004dc8: 4bb9 ldr r3, [pc, #740] @ (80050b0 ) 8004dca: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 8004dce: e1e7 b.n 80051a0 8004dd0: 4bb8 ldr r3, [pc, #736] @ (80050b4 ) 8004dd2: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 8004dd6: e1e3 b.n 80051a0 8004dd8: 4bb4 ldr r3, [pc, #720] @ (80050ac ) 8004dda: 685b ldr r3, [r3, #4] 8004ddc: f003 033f and.w r3, r3, #63 @ 0x3f 8004de0: f8c7 30ac str.w r3, [r7, #172] @ 0xac 8004de4: 4bb1 ldr r3, [pc, #708] @ (80050ac ) 8004de6: 685b ldr r3, [r3, #4] 8004de8: f403 0380 and.w r3, r3, #4194304 @ 0x400000 8004dec: 2b00 cmp r3, #0 8004dee: d071 beq.n 8004ed4 8004df0: 4bae ldr r3, [pc, #696] @ (80050ac ) 8004df2: 685b ldr r3, [r3, #4] 8004df4: 099b lsrs r3, r3, #6 8004df6: 2200 movs r2, #0 8004df8: f8c7 3098 str.w r3, [r7, #152] @ 0x98 8004dfc: f8c7 209c str.w r2, [r7, #156] @ 0x9c 8004e00: f8d7 3098 ldr.w r3, [r7, #152] @ 0x98 8004e04: f3c3 0308 ubfx r3, r3, #0, #9 8004e08: f8c7 3090 str.w r3, [r7, #144] @ 0x90 8004e0c: 2300 movs r3, #0 8004e0e: f8c7 3094 str.w r3, [r7, #148] @ 0x94 8004e12: e9d7 4524 ldrd r4, r5, [r7, #144] @ 0x90 8004e16: 4622 mov r2, r4 8004e18: 462b mov r3, r5 8004e1a: f04f 0000 mov.w r0, #0 8004e1e: f04f 0100 mov.w r1, #0 8004e22: 0159 lsls r1, r3, #5 8004e24: ea41 61d2 orr.w r1, r1, r2, lsr #27 8004e28: 0150 lsls r0, r2, #5 8004e2a: 4602 mov r2, r0 8004e2c: 460b mov r3, r1 8004e2e: 4621 mov r1, r4 8004e30: 1a51 subs r1, r2, r1 8004e32: 6439 str r1, [r7, #64] @ 0x40 8004e34: 4629 mov r1, r5 8004e36: eb63 0301 sbc.w r3, r3, r1 8004e3a: 647b str r3, [r7, #68] @ 0x44 8004e3c: f04f 0200 mov.w r2, #0 8004e40: f04f 0300 mov.w r3, #0 8004e44: e9d7 8910 ldrd r8, r9, [r7, #64] @ 0x40 8004e48: 4649 mov r1, r9 8004e4a: 018b lsls r3, r1, #6 8004e4c: 4641 mov r1, r8 8004e4e: ea43 6391 orr.w r3, r3, r1, lsr #26 8004e52: 4641 mov r1, r8 8004e54: 018a lsls r2, r1, #6 8004e56: 4641 mov r1, r8 8004e58: 1a51 subs r1, r2, r1 8004e5a: 63b9 str r1, [r7, #56] @ 0x38 8004e5c: 4649 mov r1, r9 8004e5e: eb63 0301 sbc.w r3, r3, r1 8004e62: 63fb str r3, [r7, #60] @ 0x3c 8004e64: f04f 0200 mov.w r2, #0 8004e68: f04f 0300 mov.w r3, #0 8004e6c: e9d7 890e ldrd r8, r9, [r7, #56] @ 0x38 8004e70: 4649 mov r1, r9 8004e72: 00cb lsls r3, r1, #3 8004e74: 4641 mov r1, r8 8004e76: ea43 7351 orr.w r3, r3, r1, lsr #29 8004e7a: 4641 mov r1, r8 8004e7c: 00ca lsls r2, r1, #3 8004e7e: 4610 mov r0, r2 8004e80: 4619 mov r1, r3 8004e82: 4603 mov r3, r0 8004e84: 4622 mov r2, r4 8004e86: 189b adds r3, r3, r2 8004e88: 633b str r3, [r7, #48] @ 0x30 8004e8a: 462b mov r3, r5 8004e8c: 460a mov r2, r1 8004e8e: eb42 0303 adc.w r3, r2, r3 8004e92: 637b str r3, [r7, #52] @ 0x34 8004e94: f04f 0200 mov.w r2, #0 8004e98: f04f 0300 mov.w r3, #0 8004e9c: e9d7 450c ldrd r4, r5, [r7, #48] @ 0x30 8004ea0: 4629 mov r1, r5 8004ea2: 024b lsls r3, r1, #9 8004ea4: 4621 mov r1, r4 8004ea6: ea43 53d1 orr.w r3, r3, r1, lsr #23 8004eaa: 4621 mov r1, r4 8004eac: 024a lsls r2, r1, #9 8004eae: 4610 mov r0, r2 8004eb0: 4619 mov r1, r3 8004eb2: f8d7 30ac ldr.w r3, [r7, #172] @ 0xac 8004eb6: 2200 movs r2, #0 8004eb8: f8c7 3088 str.w r3, [r7, #136] @ 0x88 8004ebc: f8c7 208c str.w r2, [r7, #140] @ 0x8c 8004ec0: e9d7 2322 ldrd r2, r3, [r7, #136] @ 0x88 8004ec4: f7fb f99e bl 8000204 <__aeabi_uldivmod> 8004ec8: 4602 mov r2, r0 8004eca: 460b mov r3, r1 8004ecc: 4613 mov r3, r2 8004ece: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 8004ed2: e067 b.n 8004fa4 8004ed4: 4b75 ldr r3, [pc, #468] @ (80050ac ) 8004ed6: 685b ldr r3, [r3, #4] 8004ed8: 099b lsrs r3, r3, #6 8004eda: 2200 movs r2, #0 8004edc: f8c7 3080 str.w r3, [r7, #128] @ 0x80 8004ee0: f8c7 2084 str.w r2, [r7, #132] @ 0x84 8004ee4: f8d7 3080 ldr.w r3, [r7, #128] @ 0x80 8004ee8: f3c3 0308 ubfx r3, r3, #0, #9 8004eec: 67bb str r3, [r7, #120] @ 0x78 8004eee: 2300 movs r3, #0 8004ef0: 67fb str r3, [r7, #124] @ 0x7c 8004ef2: e9d7 451e ldrd r4, r5, [r7, #120] @ 0x78 8004ef6: 4622 mov r2, r4 8004ef8: 462b mov r3, r5 8004efa: f04f 0000 mov.w r0, #0 8004efe: f04f 0100 mov.w r1, #0 8004f02: 0159 lsls r1, r3, #5 8004f04: ea41 61d2 orr.w r1, r1, r2, lsr #27 8004f08: 0150 lsls r0, r2, #5 8004f0a: 4602 mov r2, r0 8004f0c: 460b mov r3, r1 8004f0e: 4621 mov r1, r4 8004f10: 1a51 subs r1, r2, r1 8004f12: 62b9 str r1, [r7, #40] @ 0x28 8004f14: 4629 mov r1, r5 8004f16: eb63 0301 sbc.w r3, r3, r1 8004f1a: 62fb str r3, [r7, #44] @ 0x2c 8004f1c: f04f 0200 mov.w r2, #0 8004f20: f04f 0300 mov.w r3, #0 8004f24: e9d7 890a ldrd r8, r9, [r7, #40] @ 0x28 8004f28: 4649 mov r1, r9 8004f2a: 018b lsls r3, r1, #6 8004f2c: 4641 mov r1, r8 8004f2e: ea43 6391 orr.w r3, r3, r1, lsr #26 8004f32: 4641 mov r1, r8 8004f34: 018a lsls r2, r1, #6 8004f36: 4641 mov r1, r8 8004f38: ebb2 0a01 subs.w sl, r2, r1 8004f3c: 4649 mov r1, r9 8004f3e: eb63 0b01 sbc.w fp, r3, r1 8004f42: f04f 0200 mov.w r2, #0 8004f46: f04f 0300 mov.w r3, #0 8004f4a: ea4f 03cb mov.w r3, fp, lsl #3 8004f4e: ea43 735a orr.w r3, r3, sl, lsr #29 8004f52: ea4f 02ca mov.w r2, sl, lsl #3 8004f56: 4692 mov sl, r2 8004f58: 469b mov fp, r3 8004f5a: 4623 mov r3, r4 8004f5c: eb1a 0303 adds.w r3, sl, r3 8004f60: 623b str r3, [r7, #32] 8004f62: 462b mov r3, r5 8004f64: eb4b 0303 adc.w r3, fp, r3 8004f68: 627b str r3, [r7, #36] @ 0x24 8004f6a: f04f 0200 mov.w r2, #0 8004f6e: f04f 0300 mov.w r3, #0 8004f72: e9d7 4508 ldrd r4, r5, [r7, #32] 8004f76: 4629 mov r1, r5 8004f78: 028b lsls r3, r1, #10 8004f7a: 4621 mov r1, r4 8004f7c: ea43 5391 orr.w r3, r3, r1, lsr #22 8004f80: 4621 mov r1, r4 8004f82: 028a lsls r2, r1, #10 8004f84: 4610 mov r0, r2 8004f86: 4619 mov r1, r3 8004f88: f8d7 30ac ldr.w r3, [r7, #172] @ 0xac 8004f8c: 2200 movs r2, #0 8004f8e: 673b str r3, [r7, #112] @ 0x70 8004f90: 677a str r2, [r7, #116] @ 0x74 8004f92: e9d7 231c ldrd r2, r3, [r7, #112] @ 0x70 8004f96: f7fb f935 bl 8000204 <__aeabi_uldivmod> 8004f9a: 4602 mov r2, r0 8004f9c: 460b mov r3, r1 8004f9e: 4613 mov r3, r2 8004fa0: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 8004fa4: 4b41 ldr r3, [pc, #260] @ (80050ac ) 8004fa6: 685b ldr r3, [r3, #4] 8004fa8: 0c1b lsrs r3, r3, #16 8004faa: f003 0303 and.w r3, r3, #3 8004fae: 3301 adds r3, #1 8004fb0: 005b lsls r3, r3, #1 8004fb2: f8c7 30a8 str.w r3, [r7, #168] @ 0xa8 8004fb6: f8d7 20b4 ldr.w r2, [r7, #180] @ 0xb4 8004fba: f8d7 30a8 ldr.w r3, [r7, #168] @ 0xa8 8004fbe: fbb2 f3f3 udiv r3, r2, r3 8004fc2: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 8004fc6: e0eb b.n 80051a0 8004fc8: 4b38 ldr r3, [pc, #224] @ (80050ac ) 8004fca: 685b ldr r3, [r3, #4] 8004fcc: f003 033f and.w r3, r3, #63 @ 0x3f 8004fd0: f8c7 30ac str.w r3, [r7, #172] @ 0xac 8004fd4: 4b35 ldr r3, [pc, #212] @ (80050ac ) 8004fd6: 685b ldr r3, [r3, #4] 8004fd8: f403 0380 and.w r3, r3, #4194304 @ 0x400000 8004fdc: 2b00 cmp r3, #0 8004fde: d06b beq.n 80050b8 8004fe0: 4b32 ldr r3, [pc, #200] @ (80050ac ) 8004fe2: 685b ldr r3, [r3, #4] 8004fe4: 099b lsrs r3, r3, #6 8004fe6: 2200 movs r2, #0 8004fe8: 66bb str r3, [r7, #104] @ 0x68 8004fea: 66fa str r2, [r7, #108] @ 0x6c 8004fec: 6ebb ldr r3, [r7, #104] @ 0x68 8004fee: f3c3 0308 ubfx r3, r3, #0, #9 8004ff2: 663b str r3, [r7, #96] @ 0x60 8004ff4: 2300 movs r3, #0 8004ff6: 667b str r3, [r7, #100] @ 0x64 8004ff8: e9d7 4518 ldrd r4, r5, [r7, #96] @ 0x60 8004ffc: 4622 mov r2, r4 8004ffe: 462b mov r3, r5 8005000: f04f 0000 mov.w r0, #0 8005004: f04f 0100 mov.w r1, #0 8005008: 0159 lsls r1, r3, #5 800500a: ea41 61d2 orr.w r1, r1, r2, lsr #27 800500e: 0150 lsls r0, r2, #5 8005010: 4602 mov r2, r0 8005012: 460b mov r3, r1 8005014: 4621 mov r1, r4 8005016: 1a51 subs r1, r2, r1 8005018: 61b9 str r1, [r7, #24] 800501a: 4629 mov r1, r5 800501c: eb63 0301 sbc.w r3, r3, r1 8005020: 61fb str r3, [r7, #28] 8005022: f04f 0200 mov.w r2, #0 8005026: f04f 0300 mov.w r3, #0 800502a: e9d7 ab06 ldrd sl, fp, [r7, #24] 800502e: 4659 mov r1, fp 8005030: 018b lsls r3, r1, #6 8005032: 4651 mov r1, sl 8005034: ea43 6391 orr.w r3, r3, r1, lsr #26 8005038: 4651 mov r1, sl 800503a: 018a lsls r2, r1, #6 800503c: 4651 mov r1, sl 800503e: ebb2 0801 subs.w r8, r2, r1 8005042: 4659 mov r1, fp 8005044: eb63 0901 sbc.w r9, r3, r1 8005048: f04f 0200 mov.w r2, #0 800504c: f04f 0300 mov.w r3, #0 8005050: ea4f 03c9 mov.w r3, r9, lsl #3 8005054: ea43 7358 orr.w r3, r3, r8, lsr #29 8005058: ea4f 02c8 mov.w r2, r8, lsl #3 800505c: 4690 mov r8, r2 800505e: 4699 mov r9, r3 8005060: 4623 mov r3, r4 8005062: eb18 0303 adds.w r3, r8, r3 8005066: 613b str r3, [r7, #16] 8005068: 462b mov r3, r5 800506a: eb49 0303 adc.w r3, r9, r3 800506e: 617b str r3, [r7, #20] 8005070: f04f 0200 mov.w r2, #0 8005074: f04f 0300 mov.w r3, #0 8005078: e9d7 4504 ldrd r4, r5, [r7, #16] 800507c: 4629 mov r1, r5 800507e: 024b lsls r3, r1, #9 8005080: 4621 mov r1, r4 8005082: ea43 53d1 orr.w r3, r3, r1, lsr #23 8005086: 4621 mov r1, r4 8005088: 024a lsls r2, r1, #9 800508a: 4610 mov r0, r2 800508c: 4619 mov r1, r3 800508e: f8d7 30ac ldr.w r3, [r7, #172] @ 0xac 8005092: 2200 movs r2, #0 8005094: 65bb str r3, [r7, #88] @ 0x58 8005096: 65fa str r2, [r7, #92] @ 0x5c 8005098: e9d7 2316 ldrd r2, r3, [r7, #88] @ 0x58 800509c: f7fb f8b2 bl 8000204 <__aeabi_uldivmod> 80050a0: 4602 mov r2, r0 80050a2: 460b mov r3, r1 80050a4: 4613 mov r3, r2 80050a6: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 80050aa: e065 b.n 8005178 80050ac: 40023800 .word 0x40023800 80050b0: 00f42400 .word 0x00f42400 80050b4: 007a1200 .word 0x007a1200 80050b8: 4b3d ldr r3, [pc, #244] @ (80051b0 ) 80050ba: 685b ldr r3, [r3, #4] 80050bc: 099b lsrs r3, r3, #6 80050be: 2200 movs r2, #0 80050c0: 4618 mov r0, r3 80050c2: 4611 mov r1, r2 80050c4: f3c0 0308 ubfx r3, r0, #0, #9 80050c8: 653b str r3, [r7, #80] @ 0x50 80050ca: 2300 movs r3, #0 80050cc: 657b str r3, [r7, #84] @ 0x54 80050ce: e9d7 8914 ldrd r8, r9, [r7, #80] @ 0x50 80050d2: 4642 mov r2, r8 80050d4: 464b mov r3, r9 80050d6: f04f 0000 mov.w r0, #0 80050da: f04f 0100 mov.w r1, #0 80050de: 0159 lsls r1, r3, #5 80050e0: ea41 61d2 orr.w r1, r1, r2, lsr #27 80050e4: 0150 lsls r0, r2, #5 80050e6: 4602 mov r2, r0 80050e8: 460b mov r3, r1 80050ea: 4641 mov r1, r8 80050ec: 1a51 subs r1, r2, r1 80050ee: 60b9 str r1, [r7, #8] 80050f0: 4649 mov r1, r9 80050f2: eb63 0301 sbc.w r3, r3, r1 80050f6: 60fb str r3, [r7, #12] 80050f8: f04f 0200 mov.w r2, #0 80050fc: f04f 0300 mov.w r3, #0 8005100: e9d7 ab02 ldrd sl, fp, [r7, #8] 8005104: 4659 mov r1, fp 8005106: 018b lsls r3, r1, #6 8005108: 4651 mov r1, sl 800510a: ea43 6391 orr.w r3, r3, r1, lsr #26 800510e: 4651 mov r1, sl 8005110: 018a lsls r2, r1, #6 8005112: 4651 mov r1, sl 8005114: 1a54 subs r4, r2, r1 8005116: 4659 mov r1, fp 8005118: eb63 0501 sbc.w r5, r3, r1 800511c: f04f 0200 mov.w r2, #0 8005120: f04f 0300 mov.w r3, #0 8005124: 00eb lsls r3, r5, #3 8005126: ea43 7354 orr.w r3, r3, r4, lsr #29 800512a: 00e2 lsls r2, r4, #3 800512c: 4614 mov r4, r2 800512e: 461d mov r5, r3 8005130: 4643 mov r3, r8 8005132: 18e3 adds r3, r4, r3 8005134: 603b str r3, [r7, #0] 8005136: 464b mov r3, r9 8005138: eb45 0303 adc.w r3, r5, r3 800513c: 607b str r3, [r7, #4] 800513e: f04f 0200 mov.w r2, #0 8005142: f04f 0300 mov.w r3, #0 8005146: e9d7 4500 ldrd r4, r5, [r7] 800514a: 4629 mov r1, r5 800514c: 028b lsls r3, r1, #10 800514e: 4621 mov r1, r4 8005150: ea43 5391 orr.w r3, r3, r1, lsr #22 8005154: 4621 mov r1, r4 8005156: 028a lsls r2, r1, #10 8005158: 4610 mov r0, r2 800515a: 4619 mov r1, r3 800515c: f8d7 30ac ldr.w r3, [r7, #172] @ 0xac 8005160: 2200 movs r2, #0 8005162: 64bb str r3, [r7, #72] @ 0x48 8005164: 64fa str r2, [r7, #76] @ 0x4c 8005166: e9d7 2312 ldrd r2, r3, [r7, #72] @ 0x48 800516a: f7fb f84b bl 8000204 <__aeabi_uldivmod> 800516e: 4602 mov r2, r0 8005170: 460b mov r3, r1 8005172: 4613 mov r3, r2 8005174: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 8005178: 4b0d ldr r3, [pc, #52] @ (80051b0 ) 800517a: 685b ldr r3, [r3, #4] 800517c: 0f1b lsrs r3, r3, #28 800517e: f003 0307 and.w r3, r3, #7 8005182: f8c7 30a4 str.w r3, [r7, #164] @ 0xa4 8005186: f8d7 20b4 ldr.w r2, [r7, #180] @ 0xb4 800518a: f8d7 30a4 ldr.w r3, [r7, #164] @ 0xa4 800518e: fbb2 f3f3 udiv r3, r2, r3 8005192: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 8005196: e003 b.n 80051a0 8005198: 4b06 ldr r3, [pc, #24] @ (80051b4 ) 800519a: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 800519e: bf00 nop 80051a0: f8d7 30b0 ldr.w r3, [r7, #176] @ 0xb0 80051a4: 4618 mov r0, r3 80051a6: 37b8 adds r7, #184 @ 0xb8 80051a8: 46bd mov sp, r7 80051aa: e8bd 8fb0 ldmia.w sp!, {r4, r5, r7, r8, r9, sl, fp, pc} 80051ae: bf00 nop 80051b0: 40023800 .word 0x40023800 80051b4: 00f42400 .word 0x00f42400 080051b8 : 80051b8: b580 push {r7, lr} 80051ba: b086 sub sp, #24 80051bc: af00 add r7, sp, #0 80051be: 6078 str r0, [r7, #4] 80051c0: 687b ldr r3, [r7, #4] 80051c2: 2b00 cmp r3, #0 80051c4: d101 bne.n 80051ca 80051c6: 2301 movs r3, #1 80051c8: e28d b.n 80056e6 80051ca: 687b ldr r3, [r7, #4] 80051cc: 681b ldr r3, [r3, #0] 80051ce: f003 0301 and.w r3, r3, #1 80051d2: 2b00 cmp r3, #0 80051d4: f000 8083 beq.w 80052de 80051d8: 4b94 ldr r3, [pc, #592] @ (800542c ) 80051da: 689b ldr r3, [r3, #8] 80051dc: f003 030c and.w r3, r3, #12 80051e0: 2b04 cmp r3, #4 80051e2: d019 beq.n 8005218 80051e4: 4b91 ldr r3, [pc, #580] @ (800542c ) 80051e6: 689b ldr r3, [r3, #8] 80051e8: f003 030c and.w r3, r3, #12 80051ec: 2b08 cmp r3, #8 80051ee: d106 bne.n 80051fe 80051f0: 4b8e ldr r3, [pc, #568] @ (800542c ) 80051f2: 685b ldr r3, [r3, #4] 80051f4: f403 0380 and.w r3, r3, #4194304 @ 0x400000 80051f8: f5b3 0f80 cmp.w r3, #4194304 @ 0x400000 80051fc: d00c beq.n 8005218 80051fe: 4b8b ldr r3, [pc, #556] @ (800542c ) 8005200: 689b ldr r3, [r3, #8] 8005202: f003 030c and.w r3, r3, #12 8005206: 2b0c cmp r3, #12 8005208: d112 bne.n 8005230 800520a: 4b88 ldr r3, [pc, #544] @ (800542c ) 800520c: 685b ldr r3, [r3, #4] 800520e: f403 0380 and.w r3, r3, #4194304 @ 0x400000 8005212: f5b3 0f80 cmp.w r3, #4194304 @ 0x400000 8005216: d10b bne.n 8005230 8005218: 4b84 ldr r3, [pc, #528] @ (800542c ) 800521a: 681b ldr r3, [r3, #0] 800521c: f403 3300 and.w r3, r3, #131072 @ 0x20000 8005220: 2b00 cmp r3, #0 8005222: d05b beq.n 80052dc 8005224: 687b ldr r3, [r7, #4] 8005226: 685b ldr r3, [r3, #4] 8005228: 2b00 cmp r3, #0 800522a: d157 bne.n 80052dc 800522c: 2301 movs r3, #1 800522e: e25a b.n 80056e6 8005230: 687b ldr r3, [r7, #4] 8005232: 685b ldr r3, [r3, #4] 8005234: f5b3 3f80 cmp.w r3, #65536 @ 0x10000 8005238: d106 bne.n 8005248 800523a: 4b7c ldr r3, [pc, #496] @ (800542c ) 800523c: 681b ldr r3, [r3, #0] 800523e: 4a7b ldr r2, [pc, #492] @ (800542c ) 8005240: f443 3380 orr.w r3, r3, #65536 @ 0x10000 8005244: 6013 str r3, [r2, #0] 8005246: e01d b.n 8005284 8005248: 687b ldr r3, [r7, #4] 800524a: 685b ldr r3, [r3, #4] 800524c: f5b3 2fa0 cmp.w r3, #327680 @ 0x50000 8005250: d10c bne.n 800526c 8005252: 4b76 ldr r3, [pc, #472] @ (800542c ) 8005254: 681b ldr r3, [r3, #0] 8005256: 4a75 ldr r2, [pc, #468] @ (800542c ) 8005258: f443 2380 orr.w r3, r3, #262144 @ 0x40000 800525c: 6013 str r3, [r2, #0] 800525e: 4b73 ldr r3, [pc, #460] @ (800542c ) 8005260: 681b ldr r3, [r3, #0] 8005262: 4a72 ldr r2, [pc, #456] @ (800542c ) 8005264: f443 3380 orr.w r3, r3, #65536 @ 0x10000 8005268: 6013 str r3, [r2, #0] 800526a: e00b b.n 8005284 800526c: 4b6f ldr r3, [pc, #444] @ (800542c ) 800526e: 681b ldr r3, [r3, #0] 8005270: 4a6e ldr r2, [pc, #440] @ (800542c ) 8005272: f423 3380 bic.w r3, r3, #65536 @ 0x10000 8005276: 6013 str r3, [r2, #0] 8005278: 4b6c ldr r3, [pc, #432] @ (800542c ) 800527a: 681b ldr r3, [r3, #0] 800527c: 4a6b ldr r2, [pc, #428] @ (800542c ) 800527e: f423 2380 bic.w r3, r3, #262144 @ 0x40000 8005282: 6013 str r3, [r2, #0] 8005284: 687b ldr r3, [r7, #4] 8005286: 685b ldr r3, [r3, #4] 8005288: 2b00 cmp r3, #0 800528a: d013 beq.n 80052b4 800528c: f7fc fe4c bl 8001f28 8005290: 6138 str r0, [r7, #16] 8005292: e008 b.n 80052a6 8005294: f7fc fe48 bl 8001f28 8005298: 4602 mov r2, r0 800529a: 693b ldr r3, [r7, #16] 800529c: 1ad3 subs r3, r2, r3 800529e: 2b64 cmp r3, #100 @ 0x64 80052a0: d901 bls.n 80052a6 80052a2: 2303 movs r3, #3 80052a4: e21f b.n 80056e6 80052a6: 4b61 ldr r3, [pc, #388] @ (800542c ) 80052a8: 681b ldr r3, [r3, #0] 80052aa: f403 3300 and.w r3, r3, #131072 @ 0x20000 80052ae: 2b00 cmp r3, #0 80052b0: d0f0 beq.n 8005294 80052b2: e014 b.n 80052de 80052b4: f7fc fe38 bl 8001f28 80052b8: 6138 str r0, [r7, #16] 80052ba: e008 b.n 80052ce 80052bc: f7fc fe34 bl 8001f28 80052c0: 4602 mov r2, r0 80052c2: 693b ldr r3, [r7, #16] 80052c4: 1ad3 subs r3, r2, r3 80052c6: 2b64 cmp r3, #100 @ 0x64 80052c8: d901 bls.n 80052ce 80052ca: 2303 movs r3, #3 80052cc: e20b b.n 80056e6 80052ce: 4b57 ldr r3, [pc, #348] @ (800542c ) 80052d0: 681b ldr r3, [r3, #0] 80052d2: f403 3300 and.w r3, r3, #131072 @ 0x20000 80052d6: 2b00 cmp r3, #0 80052d8: d1f0 bne.n 80052bc 80052da: e000 b.n 80052de 80052dc: bf00 nop 80052de: 687b ldr r3, [r7, #4] 80052e0: 681b ldr r3, [r3, #0] 80052e2: f003 0302 and.w r3, r3, #2 80052e6: 2b00 cmp r3, #0 80052e8: d06f beq.n 80053ca 80052ea: 4b50 ldr r3, [pc, #320] @ (800542c ) 80052ec: 689b ldr r3, [r3, #8] 80052ee: f003 030c and.w r3, r3, #12 80052f2: 2b00 cmp r3, #0 80052f4: d017 beq.n 8005326 80052f6: 4b4d ldr r3, [pc, #308] @ (800542c ) 80052f8: 689b ldr r3, [r3, #8] 80052fa: f003 030c and.w r3, r3, #12 80052fe: 2b08 cmp r3, #8 8005300: d105 bne.n 800530e 8005302: 4b4a ldr r3, [pc, #296] @ (800542c ) 8005304: 685b ldr r3, [r3, #4] 8005306: f403 0380 and.w r3, r3, #4194304 @ 0x400000 800530a: 2b00 cmp r3, #0 800530c: d00b beq.n 8005326 800530e: 4b47 ldr r3, [pc, #284] @ (800542c ) 8005310: 689b ldr r3, [r3, #8] 8005312: f003 030c and.w r3, r3, #12 8005316: 2b0c cmp r3, #12 8005318: d11c bne.n 8005354 800531a: 4b44 ldr r3, [pc, #272] @ (800542c ) 800531c: 685b ldr r3, [r3, #4] 800531e: f403 0380 and.w r3, r3, #4194304 @ 0x400000 8005322: 2b00 cmp r3, #0 8005324: d116 bne.n 8005354 8005326: 4b41 ldr r3, [pc, #260] @ (800542c ) 8005328: 681b ldr r3, [r3, #0] 800532a: f003 0302 and.w r3, r3, #2 800532e: 2b00 cmp r3, #0 8005330: d005 beq.n 800533e 8005332: 687b ldr r3, [r7, #4] 8005334: 68db ldr r3, [r3, #12] 8005336: 2b01 cmp r3, #1 8005338: d001 beq.n 800533e 800533a: 2301 movs r3, #1 800533c: e1d3 b.n 80056e6 800533e: 4b3b ldr r3, [pc, #236] @ (800542c ) 8005340: 681b ldr r3, [r3, #0] 8005342: f023 02f8 bic.w r2, r3, #248 @ 0xf8 8005346: 687b ldr r3, [r7, #4] 8005348: 691b ldr r3, [r3, #16] 800534a: 00db lsls r3, r3, #3 800534c: 4937 ldr r1, [pc, #220] @ (800542c ) 800534e: 4313 orrs r3, r2 8005350: 600b str r3, [r1, #0] 8005352: e03a b.n 80053ca 8005354: 687b ldr r3, [r7, #4] 8005356: 68db ldr r3, [r3, #12] 8005358: 2b00 cmp r3, #0 800535a: d020 beq.n 800539e 800535c: 4b34 ldr r3, [pc, #208] @ (8005430 ) 800535e: 2201 movs r2, #1 8005360: 601a str r2, [r3, #0] 8005362: f7fc fde1 bl 8001f28 8005366: 6138 str r0, [r7, #16] 8005368: e008 b.n 800537c 800536a: f7fc fddd bl 8001f28 800536e: 4602 mov r2, r0 8005370: 693b ldr r3, [r7, #16] 8005372: 1ad3 subs r3, r2, r3 8005374: 2b02 cmp r3, #2 8005376: d901 bls.n 800537c 8005378: 2303 movs r3, #3 800537a: e1b4 b.n 80056e6 800537c: 4b2b ldr r3, [pc, #172] @ (800542c ) 800537e: 681b ldr r3, [r3, #0] 8005380: f003 0302 and.w r3, r3, #2 8005384: 2b00 cmp r3, #0 8005386: d0f0 beq.n 800536a 8005388: 4b28 ldr r3, [pc, #160] @ (800542c ) 800538a: 681b ldr r3, [r3, #0] 800538c: f023 02f8 bic.w r2, r3, #248 @ 0xf8 8005390: 687b ldr r3, [r7, #4] 8005392: 691b ldr r3, [r3, #16] 8005394: 00db lsls r3, r3, #3 8005396: 4925 ldr r1, [pc, #148] @ (800542c ) 8005398: 4313 orrs r3, r2 800539a: 600b str r3, [r1, #0] 800539c: e015 b.n 80053ca 800539e: 4b24 ldr r3, [pc, #144] @ (8005430 ) 80053a0: 2200 movs r2, #0 80053a2: 601a str r2, [r3, #0] 80053a4: f7fc fdc0 bl 8001f28 80053a8: 6138 str r0, [r7, #16] 80053aa: e008 b.n 80053be 80053ac: f7fc fdbc bl 8001f28 80053b0: 4602 mov r2, r0 80053b2: 693b ldr r3, [r7, #16] 80053b4: 1ad3 subs r3, r2, r3 80053b6: 2b02 cmp r3, #2 80053b8: d901 bls.n 80053be 80053ba: 2303 movs r3, #3 80053bc: e193 b.n 80056e6 80053be: 4b1b ldr r3, [pc, #108] @ (800542c ) 80053c0: 681b ldr r3, [r3, #0] 80053c2: f003 0302 and.w r3, r3, #2 80053c6: 2b00 cmp r3, #0 80053c8: d1f0 bne.n 80053ac 80053ca: 687b ldr r3, [r7, #4] 80053cc: 681b ldr r3, [r3, #0] 80053ce: f003 0308 and.w r3, r3, #8 80053d2: 2b00 cmp r3, #0 80053d4: d036 beq.n 8005444 80053d6: 687b ldr r3, [r7, #4] 80053d8: 695b ldr r3, [r3, #20] 80053da: 2b00 cmp r3, #0 80053dc: d016 beq.n 800540c 80053de: 4b15 ldr r3, [pc, #84] @ (8005434 ) 80053e0: 2201 movs r2, #1 80053e2: 601a str r2, [r3, #0] 80053e4: f7fc fda0 bl 8001f28 80053e8: 6138 str r0, [r7, #16] 80053ea: e008 b.n 80053fe 80053ec: f7fc fd9c bl 8001f28 80053f0: 4602 mov r2, r0 80053f2: 693b ldr r3, [r7, #16] 80053f4: 1ad3 subs r3, r2, r3 80053f6: 2b02 cmp r3, #2 80053f8: d901 bls.n 80053fe 80053fa: 2303 movs r3, #3 80053fc: e173 b.n 80056e6 80053fe: 4b0b ldr r3, [pc, #44] @ (800542c ) 8005400: 6f5b ldr r3, [r3, #116] @ 0x74 8005402: f003 0302 and.w r3, r3, #2 8005406: 2b00 cmp r3, #0 8005408: d0f0 beq.n 80053ec 800540a: e01b b.n 8005444 800540c: 4b09 ldr r3, [pc, #36] @ (8005434 ) 800540e: 2200 movs r2, #0 8005410: 601a str r2, [r3, #0] 8005412: f7fc fd89 bl 8001f28 8005416: 6138 str r0, [r7, #16] 8005418: e00e b.n 8005438 800541a: f7fc fd85 bl 8001f28 800541e: 4602 mov r2, r0 8005420: 693b ldr r3, [r7, #16] 8005422: 1ad3 subs r3, r2, r3 8005424: 2b02 cmp r3, #2 8005426: d907 bls.n 8005438 8005428: 2303 movs r3, #3 800542a: e15c b.n 80056e6 800542c: 40023800 .word 0x40023800 8005430: 42470000 .word 0x42470000 8005434: 42470e80 .word 0x42470e80 8005438: 4b8a ldr r3, [pc, #552] @ (8005664 ) 800543a: 6f5b ldr r3, [r3, #116] @ 0x74 800543c: f003 0302 and.w r3, r3, #2 8005440: 2b00 cmp r3, #0 8005442: d1ea bne.n 800541a 8005444: 687b ldr r3, [r7, #4] 8005446: 681b ldr r3, [r3, #0] 8005448: f003 0304 and.w r3, r3, #4 800544c: 2b00 cmp r3, #0 800544e: f000 8097 beq.w 8005580 8005452: 2300 movs r3, #0 8005454: 75fb strb r3, [r7, #23] 8005456: 4b83 ldr r3, [pc, #524] @ (8005664 ) 8005458: 6c1b ldr r3, [r3, #64] @ 0x40 800545a: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 800545e: 2b00 cmp r3, #0 8005460: d10f bne.n 8005482 8005462: 2300 movs r3, #0 8005464: 60bb str r3, [r7, #8] 8005466: 4b7f ldr r3, [pc, #508] @ (8005664 ) 8005468: 6c1b ldr r3, [r3, #64] @ 0x40 800546a: 4a7e ldr r2, [pc, #504] @ (8005664 ) 800546c: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8005470: 6413 str r3, [r2, #64] @ 0x40 8005472: 4b7c ldr r3, [pc, #496] @ (8005664 ) 8005474: 6c1b ldr r3, [r3, #64] @ 0x40 8005476: f003 5380 and.w r3, r3, #268435456 @ 0x10000000 800547a: 60bb str r3, [r7, #8] 800547c: 68bb ldr r3, [r7, #8] 800547e: 2301 movs r3, #1 8005480: 75fb strb r3, [r7, #23] 8005482: 4b79 ldr r3, [pc, #484] @ (8005668 ) 8005484: 681b ldr r3, [r3, #0] 8005486: f403 7380 and.w r3, r3, #256 @ 0x100 800548a: 2b00 cmp r3, #0 800548c: d118 bne.n 80054c0 800548e: 4b76 ldr r3, [pc, #472] @ (8005668 ) 8005490: 681b ldr r3, [r3, #0] 8005492: 4a75 ldr r2, [pc, #468] @ (8005668 ) 8005494: f443 7380 orr.w r3, r3, #256 @ 0x100 8005498: 6013 str r3, [r2, #0] 800549a: f7fc fd45 bl 8001f28 800549e: 6138 str r0, [r7, #16] 80054a0: e008 b.n 80054b4 80054a2: f7fc fd41 bl 8001f28 80054a6: 4602 mov r2, r0 80054a8: 693b ldr r3, [r7, #16] 80054aa: 1ad3 subs r3, r2, r3 80054ac: 2b02 cmp r3, #2 80054ae: d901 bls.n 80054b4 80054b0: 2303 movs r3, #3 80054b2: e118 b.n 80056e6 80054b4: 4b6c ldr r3, [pc, #432] @ (8005668 ) 80054b6: 681b ldr r3, [r3, #0] 80054b8: f403 7380 and.w r3, r3, #256 @ 0x100 80054bc: 2b00 cmp r3, #0 80054be: d0f0 beq.n 80054a2 80054c0: 687b ldr r3, [r7, #4] 80054c2: 689b ldr r3, [r3, #8] 80054c4: 2b01 cmp r3, #1 80054c6: d106 bne.n 80054d6 80054c8: 4b66 ldr r3, [pc, #408] @ (8005664 ) 80054ca: 6f1b ldr r3, [r3, #112] @ 0x70 80054cc: 4a65 ldr r2, [pc, #404] @ (8005664 ) 80054ce: f043 0301 orr.w r3, r3, #1 80054d2: 6713 str r3, [r2, #112] @ 0x70 80054d4: e01c b.n 8005510 80054d6: 687b ldr r3, [r7, #4] 80054d8: 689b ldr r3, [r3, #8] 80054da: 2b05 cmp r3, #5 80054dc: d10c bne.n 80054f8 80054de: 4b61 ldr r3, [pc, #388] @ (8005664 ) 80054e0: 6f1b ldr r3, [r3, #112] @ 0x70 80054e2: 4a60 ldr r2, [pc, #384] @ (8005664 ) 80054e4: f043 0304 orr.w r3, r3, #4 80054e8: 6713 str r3, [r2, #112] @ 0x70 80054ea: 4b5e ldr r3, [pc, #376] @ (8005664 ) 80054ec: 6f1b ldr r3, [r3, #112] @ 0x70 80054ee: 4a5d ldr r2, [pc, #372] @ (8005664 ) 80054f0: f043 0301 orr.w r3, r3, #1 80054f4: 6713 str r3, [r2, #112] @ 0x70 80054f6: e00b b.n 8005510 80054f8: 4b5a ldr r3, [pc, #360] @ (8005664 ) 80054fa: 6f1b ldr r3, [r3, #112] @ 0x70 80054fc: 4a59 ldr r2, [pc, #356] @ (8005664 ) 80054fe: f023 0301 bic.w r3, r3, #1 8005502: 6713 str r3, [r2, #112] @ 0x70 8005504: 4b57 ldr r3, [pc, #348] @ (8005664 ) 8005506: 6f1b ldr r3, [r3, #112] @ 0x70 8005508: 4a56 ldr r2, [pc, #344] @ (8005664 ) 800550a: f023 0304 bic.w r3, r3, #4 800550e: 6713 str r3, [r2, #112] @ 0x70 8005510: 687b ldr r3, [r7, #4] 8005512: 689b ldr r3, [r3, #8] 8005514: 2b00 cmp r3, #0 8005516: d015 beq.n 8005544 8005518: f7fc fd06 bl 8001f28 800551c: 6138 str r0, [r7, #16] 800551e: e00a b.n 8005536 8005520: f7fc fd02 bl 8001f28 8005524: 4602 mov r2, r0 8005526: 693b ldr r3, [r7, #16] 8005528: 1ad3 subs r3, r2, r3 800552a: f241 3288 movw r2, #5000 @ 0x1388 800552e: 4293 cmp r3, r2 8005530: d901 bls.n 8005536 8005532: 2303 movs r3, #3 8005534: e0d7 b.n 80056e6 8005536: 4b4b ldr r3, [pc, #300] @ (8005664 ) 8005538: 6f1b ldr r3, [r3, #112] @ 0x70 800553a: f003 0302 and.w r3, r3, #2 800553e: 2b00 cmp r3, #0 8005540: d0ee beq.n 8005520 8005542: e014 b.n 800556e 8005544: f7fc fcf0 bl 8001f28 8005548: 6138 str r0, [r7, #16] 800554a: e00a b.n 8005562 800554c: f7fc fcec bl 8001f28 8005550: 4602 mov r2, r0 8005552: 693b ldr r3, [r7, #16] 8005554: 1ad3 subs r3, r2, r3 8005556: f241 3288 movw r2, #5000 @ 0x1388 800555a: 4293 cmp r3, r2 800555c: d901 bls.n 8005562 800555e: 2303 movs r3, #3 8005560: e0c1 b.n 80056e6 8005562: 4b40 ldr r3, [pc, #256] @ (8005664 ) 8005564: 6f1b ldr r3, [r3, #112] @ 0x70 8005566: f003 0302 and.w r3, r3, #2 800556a: 2b00 cmp r3, #0 800556c: d1ee bne.n 800554c 800556e: 7dfb ldrb r3, [r7, #23] 8005570: 2b01 cmp r3, #1 8005572: d105 bne.n 8005580 8005574: 4b3b ldr r3, [pc, #236] @ (8005664 ) 8005576: 6c1b ldr r3, [r3, #64] @ 0x40 8005578: 4a3a ldr r2, [pc, #232] @ (8005664 ) 800557a: f023 5380 bic.w r3, r3, #268435456 @ 0x10000000 800557e: 6413 str r3, [r2, #64] @ 0x40 8005580: 687b ldr r3, [r7, #4] 8005582: 699b ldr r3, [r3, #24] 8005584: 2b00 cmp r3, #0 8005586: f000 80ad beq.w 80056e4 800558a: 4b36 ldr r3, [pc, #216] @ (8005664 ) 800558c: 689b ldr r3, [r3, #8] 800558e: f003 030c and.w r3, r3, #12 8005592: 2b08 cmp r3, #8 8005594: d060 beq.n 8005658 8005596: 687b ldr r3, [r7, #4] 8005598: 699b ldr r3, [r3, #24] 800559a: 2b02 cmp r3, #2 800559c: d145 bne.n 800562a 800559e: 4b33 ldr r3, [pc, #204] @ (800566c ) 80055a0: 2200 movs r2, #0 80055a2: 601a str r2, [r3, #0] 80055a4: f7fc fcc0 bl 8001f28 80055a8: 6138 str r0, [r7, #16] 80055aa: e008 b.n 80055be 80055ac: f7fc fcbc bl 8001f28 80055b0: 4602 mov r2, r0 80055b2: 693b ldr r3, [r7, #16] 80055b4: 1ad3 subs r3, r2, r3 80055b6: 2b02 cmp r3, #2 80055b8: d901 bls.n 80055be 80055ba: 2303 movs r3, #3 80055bc: e093 b.n 80056e6 80055be: 4b29 ldr r3, [pc, #164] @ (8005664 ) 80055c0: 681b ldr r3, [r3, #0] 80055c2: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 80055c6: 2b00 cmp r3, #0 80055c8: d1f0 bne.n 80055ac 80055ca: 687b ldr r3, [r7, #4] 80055cc: 69da ldr r2, [r3, #28] 80055ce: 687b ldr r3, [r7, #4] 80055d0: 6a1b ldr r3, [r3, #32] 80055d2: 431a orrs r2, r3 80055d4: 687b ldr r3, [r7, #4] 80055d6: 6a5b ldr r3, [r3, #36] @ 0x24 80055d8: 019b lsls r3, r3, #6 80055da: 431a orrs r2, r3 80055dc: 687b ldr r3, [r7, #4] 80055de: 6a9b ldr r3, [r3, #40] @ 0x28 80055e0: 085b lsrs r3, r3, #1 80055e2: 3b01 subs r3, #1 80055e4: 041b lsls r3, r3, #16 80055e6: 431a orrs r2, r3 80055e8: 687b ldr r3, [r7, #4] 80055ea: 6adb ldr r3, [r3, #44] @ 0x2c 80055ec: 061b lsls r3, r3, #24 80055ee: 431a orrs r2, r3 80055f0: 687b ldr r3, [r7, #4] 80055f2: 6b1b ldr r3, [r3, #48] @ 0x30 80055f4: 071b lsls r3, r3, #28 80055f6: 491b ldr r1, [pc, #108] @ (8005664 ) 80055f8: 4313 orrs r3, r2 80055fa: 604b str r3, [r1, #4] 80055fc: 4b1b ldr r3, [pc, #108] @ (800566c ) 80055fe: 2201 movs r2, #1 8005600: 601a str r2, [r3, #0] 8005602: f7fc fc91 bl 8001f28 8005606: 6138 str r0, [r7, #16] 8005608: e008 b.n 800561c 800560a: f7fc fc8d bl 8001f28 800560e: 4602 mov r2, r0 8005610: 693b ldr r3, [r7, #16] 8005612: 1ad3 subs r3, r2, r3 8005614: 2b02 cmp r3, #2 8005616: d901 bls.n 800561c 8005618: 2303 movs r3, #3 800561a: e064 b.n 80056e6 800561c: 4b11 ldr r3, [pc, #68] @ (8005664 ) 800561e: 681b ldr r3, [r3, #0] 8005620: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 8005624: 2b00 cmp r3, #0 8005626: d0f0 beq.n 800560a 8005628: e05c b.n 80056e4 800562a: 4b10 ldr r3, [pc, #64] @ (800566c ) 800562c: 2200 movs r2, #0 800562e: 601a str r2, [r3, #0] 8005630: f7fc fc7a bl 8001f28 8005634: 6138 str r0, [r7, #16] 8005636: e008 b.n 800564a 8005638: f7fc fc76 bl 8001f28 800563c: 4602 mov r2, r0 800563e: 693b ldr r3, [r7, #16] 8005640: 1ad3 subs r3, r2, r3 8005642: 2b02 cmp r3, #2 8005644: d901 bls.n 800564a 8005646: 2303 movs r3, #3 8005648: e04d b.n 80056e6 800564a: 4b06 ldr r3, [pc, #24] @ (8005664 ) 800564c: 681b ldr r3, [r3, #0] 800564e: f003 7300 and.w r3, r3, #33554432 @ 0x2000000 8005652: 2b00 cmp r3, #0 8005654: d1f0 bne.n 8005638 8005656: e045 b.n 80056e4 8005658: 687b ldr r3, [r7, #4] 800565a: 699b ldr r3, [r3, #24] 800565c: 2b01 cmp r3, #1 800565e: d107 bne.n 8005670 8005660: 2301 movs r3, #1 8005662: e040 b.n 80056e6 8005664: 40023800 .word 0x40023800 8005668: 40007000 .word 0x40007000 800566c: 42470060 .word 0x42470060 8005670: 4b1f ldr r3, [pc, #124] @ (80056f0 ) 8005672: 685b ldr r3, [r3, #4] 8005674: 60fb str r3, [r7, #12] 8005676: 687b ldr r3, [r7, #4] 8005678: 699b ldr r3, [r3, #24] 800567a: 2b01 cmp r3, #1 800567c: d030 beq.n 80056e0 800567e: 68fb ldr r3, [r7, #12] 8005680: f403 0280 and.w r2, r3, #4194304 @ 0x400000 8005684: 687b ldr r3, [r7, #4] 8005686: 69db ldr r3, [r3, #28] 8005688: 429a cmp r2, r3 800568a: d129 bne.n 80056e0 800568c: 68fb ldr r3, [r7, #12] 800568e: f003 023f and.w r2, r3, #63 @ 0x3f 8005692: 687b ldr r3, [r7, #4] 8005694: 6a1b ldr r3, [r3, #32] 8005696: 429a cmp r2, r3 8005698: d122 bne.n 80056e0 800569a: 68fa ldr r2, [r7, #12] 800569c: f647 73c0 movw r3, #32704 @ 0x7fc0 80056a0: 4013 ands r3, r2 80056a2: 687a ldr r2, [r7, #4] 80056a4: 6a52 ldr r2, [r2, #36] @ 0x24 80056a6: 0192 lsls r2, r2, #6 80056a8: 4293 cmp r3, r2 80056aa: d119 bne.n 80056e0 80056ac: 68fb ldr r3, [r7, #12] 80056ae: f403 3240 and.w r2, r3, #196608 @ 0x30000 80056b2: 687b ldr r3, [r7, #4] 80056b4: 6a9b ldr r3, [r3, #40] @ 0x28 80056b6: 085b lsrs r3, r3, #1 80056b8: 3b01 subs r3, #1 80056ba: 041b lsls r3, r3, #16 80056bc: 429a cmp r2, r3 80056be: d10f bne.n 80056e0 80056c0: 68fb ldr r3, [r7, #12] 80056c2: f003 6270 and.w r2, r3, #251658240 @ 0xf000000 80056c6: 687b ldr r3, [r7, #4] 80056c8: 6adb ldr r3, [r3, #44] @ 0x2c 80056ca: 061b lsls r3, r3, #24 80056cc: 429a cmp r2, r3 80056ce: d107 bne.n 80056e0 80056d0: 68fb ldr r3, [r7, #12] 80056d2: f003 42e0 and.w r2, r3, #1879048192 @ 0x70000000 80056d6: 687b ldr r3, [r7, #4] 80056d8: 6b1b ldr r3, [r3, #48] @ 0x30 80056da: 071b lsls r3, r3, #28 80056dc: 429a cmp r2, r3 80056de: d001 beq.n 80056e4 80056e0: 2301 movs r3, #1 80056e2: e000 b.n 80056e6 80056e4: 2300 movs r3, #0 80056e6: 4618 mov r0, r3 80056e8: 3718 adds r7, #24 80056ea: 46bd mov sp, r7 80056ec: bd80 pop {r7, pc} 80056ee: bf00 nop 80056f0: 40023800 .word 0x40023800 080056f4 : 80056f4: b580 push {r7, lr} 80056f6: b082 sub sp, #8 80056f8: af00 add r7, sp, #0 80056fa: 6078 str r0, [r7, #4] 80056fc: 687b ldr r3, [r7, #4] 80056fe: 2b00 cmp r3, #0 8005700: d101 bne.n 8005706 8005702: 2301 movs r3, #1 8005704: e041 b.n 800578a 8005706: 687b ldr r3, [r7, #4] 8005708: f893 303d ldrb.w r3, [r3, #61] @ 0x3d 800570c: b2db uxtb r3, r3 800570e: 2b00 cmp r3, #0 8005710: d106 bne.n 8005720 8005712: 687b ldr r3, [r7, #4] 8005714: 2200 movs r2, #0 8005716: f883 203c strb.w r2, [r3, #60] @ 0x3c 800571a: 6878 ldr r0, [r7, #4] 800571c: f7fb ff6a bl 80015f4 8005720: 687b ldr r3, [r7, #4] 8005722: 2202 movs r2, #2 8005724: f883 203d strb.w r2, [r3, #61] @ 0x3d 8005728: 687b ldr r3, [r7, #4] 800572a: 681a ldr r2, [r3, #0] 800572c: 687b ldr r3, [r7, #4] 800572e: 3304 adds r3, #4 8005730: 4619 mov r1, r3 8005732: 4610 mov r0, r2 8005734: f000 fba0 bl 8005e78 8005738: 687b ldr r3, [r7, #4] 800573a: 2201 movs r2, #1 800573c: f883 2046 strb.w r2, [r3, #70] @ 0x46 8005740: 687b ldr r3, [r7, #4] 8005742: 2201 movs r2, #1 8005744: f883 203e strb.w r2, [r3, #62] @ 0x3e 8005748: 687b ldr r3, [r7, #4] 800574a: 2201 movs r2, #1 800574c: f883 203f strb.w r2, [r3, #63] @ 0x3f 8005750: 687b ldr r3, [r7, #4] 8005752: 2201 movs r2, #1 8005754: f883 2040 strb.w r2, [r3, #64] @ 0x40 8005758: 687b ldr r3, [r7, #4] 800575a: 2201 movs r2, #1 800575c: f883 2041 strb.w r2, [r3, #65] @ 0x41 8005760: 687b ldr r3, [r7, #4] 8005762: 2201 movs r2, #1 8005764: f883 2042 strb.w r2, [r3, #66] @ 0x42 8005768: 687b ldr r3, [r7, #4] 800576a: 2201 movs r2, #1 800576c: f883 2043 strb.w r2, [r3, #67] @ 0x43 8005770: 687b ldr r3, [r7, #4] 8005772: 2201 movs r2, #1 8005774: f883 2044 strb.w r2, [r3, #68] @ 0x44 8005778: 687b ldr r3, [r7, #4] 800577a: 2201 movs r2, #1 800577c: f883 2045 strb.w r2, [r3, #69] @ 0x45 8005780: 687b ldr r3, [r7, #4] 8005782: 2201 movs r2, #1 8005784: f883 203d strb.w r2, [r3, #61] @ 0x3d 8005788: 2300 movs r3, #0 800578a: 4618 mov r0, r3 800578c: 3708 adds r7, #8 800578e: 46bd mov sp, r7 8005790: bd80 pop {r7, pc} 08005792 : 8005792: b580 push {r7, lr} 8005794: b082 sub sp, #8 8005796: af00 add r7, sp, #0 8005798: 6078 str r0, [r7, #4] 800579a: 687b ldr r3, [r7, #4] 800579c: 2b00 cmp r3, #0 800579e: d101 bne.n 80057a4 80057a0: 2301 movs r3, #1 80057a2: e041 b.n 8005828 80057a4: 687b ldr r3, [r7, #4] 80057a6: f893 303d ldrb.w r3, [r3, #61] @ 0x3d 80057aa: b2db uxtb r3, r3 80057ac: 2b00 cmp r3, #0 80057ae: d106 bne.n 80057be 80057b0: 687b ldr r3, [r7, #4] 80057b2: 2200 movs r2, #0 80057b4: f883 203c strb.w r2, [r3, #60] @ 0x3c 80057b8: 6878 ldr r0, [r7, #4] 80057ba: f000 f839 bl 8005830 80057be: 687b ldr r3, [r7, #4] 80057c0: 2202 movs r2, #2 80057c2: f883 203d strb.w r2, [r3, #61] @ 0x3d 80057c6: 687b ldr r3, [r7, #4] 80057c8: 681a ldr r2, [r3, #0] 80057ca: 687b ldr r3, [r7, #4] 80057cc: 3304 adds r3, #4 80057ce: 4619 mov r1, r3 80057d0: 4610 mov r0, r2 80057d2: f000 fb51 bl 8005e78 80057d6: 687b ldr r3, [r7, #4] 80057d8: 2201 movs r2, #1 80057da: f883 2046 strb.w r2, [r3, #70] @ 0x46 80057de: 687b ldr r3, [r7, #4] 80057e0: 2201 movs r2, #1 80057e2: f883 203e strb.w r2, [r3, #62] @ 0x3e 80057e6: 687b ldr r3, [r7, #4] 80057e8: 2201 movs r2, #1 80057ea: f883 203f strb.w r2, [r3, #63] @ 0x3f 80057ee: 687b ldr r3, [r7, #4] 80057f0: 2201 movs r2, #1 80057f2: f883 2040 strb.w r2, [r3, #64] @ 0x40 80057f6: 687b ldr r3, [r7, #4] 80057f8: 2201 movs r2, #1 80057fa: f883 2041 strb.w r2, [r3, #65] @ 0x41 80057fe: 687b ldr r3, [r7, #4] 8005800: 2201 movs r2, #1 8005802: f883 2042 strb.w r2, [r3, #66] @ 0x42 8005806: 687b ldr r3, [r7, #4] 8005808: 2201 movs r2, #1 800580a: f883 2043 strb.w r2, [r3, #67] @ 0x43 800580e: 687b ldr r3, [r7, #4] 8005810: 2201 movs r2, #1 8005812: f883 2044 strb.w r2, [r3, #68] @ 0x44 8005816: 687b ldr r3, [r7, #4] 8005818: 2201 movs r2, #1 800581a: f883 2045 strb.w r2, [r3, #69] @ 0x45 800581e: 687b ldr r3, [r7, #4] 8005820: 2201 movs r2, #1 8005822: f883 203d strb.w r2, [r3, #61] @ 0x3d 8005826: 2300 movs r3, #0 8005828: 4618 mov r0, r3 800582a: 3708 adds r7, #8 800582c: 46bd mov sp, r7 800582e: bd80 pop {r7, pc} 08005830 : 8005830: b480 push {r7} 8005832: b083 sub sp, #12 8005834: af00 add r7, sp, #0 8005836: 6078 str r0, [r7, #4] 8005838: bf00 nop 800583a: 370c adds r7, #12 800583c: 46bd mov sp, r7 800583e: f85d 7b04 ldr.w r7, [sp], #4 8005842: 4770 bx lr 08005844 : 8005844: b580 push {r7, lr} 8005846: b084 sub sp, #16 8005848: af00 add r7, sp, #0 800584a: 6078 str r0, [r7, #4] 800584c: 6039 str r1, [r7, #0] 800584e: 683b ldr r3, [r7, #0] 8005850: 2b00 cmp r3, #0 8005852: d109 bne.n 8005868 8005854: 687b ldr r3, [r7, #4] 8005856: f893 303e ldrb.w r3, [r3, #62] @ 0x3e 800585a: b2db uxtb r3, r3 800585c: 2b01 cmp r3, #1 800585e: bf14 ite ne 8005860: 2301 movne r3, #1 8005862: 2300 moveq r3, #0 8005864: b2db uxtb r3, r3 8005866: e022 b.n 80058ae 8005868: 683b ldr r3, [r7, #0] 800586a: 2b04 cmp r3, #4 800586c: d109 bne.n 8005882 800586e: 687b ldr r3, [r7, #4] 8005870: f893 303f ldrb.w r3, [r3, #63] @ 0x3f 8005874: b2db uxtb r3, r3 8005876: 2b01 cmp r3, #1 8005878: bf14 ite ne 800587a: 2301 movne r3, #1 800587c: 2300 moveq r3, #0 800587e: b2db uxtb r3, r3 8005880: e015 b.n 80058ae 8005882: 683b ldr r3, [r7, #0] 8005884: 2b08 cmp r3, #8 8005886: d109 bne.n 800589c 8005888: 687b ldr r3, [r7, #4] 800588a: f893 3040 ldrb.w r3, [r3, #64] @ 0x40 800588e: b2db uxtb r3, r3 8005890: 2b01 cmp r3, #1 8005892: bf14 ite ne 8005894: 2301 movne r3, #1 8005896: 2300 moveq r3, #0 8005898: b2db uxtb r3, r3 800589a: e008 b.n 80058ae 800589c: 687b ldr r3, [r7, #4] 800589e: f893 3041 ldrb.w r3, [r3, #65] @ 0x41 80058a2: b2db uxtb r3, r3 80058a4: 2b01 cmp r3, #1 80058a6: bf14 ite ne 80058a8: 2301 movne r3, #1 80058aa: 2300 moveq r3, #0 80058ac: b2db uxtb r3, r3 80058ae: 2b00 cmp r3, #0 80058b0: d001 beq.n 80058b6 80058b2: 2301 movs r3, #1 80058b4: e07c b.n 80059b0 80058b6: 683b ldr r3, [r7, #0] 80058b8: 2b00 cmp r3, #0 80058ba: d104 bne.n 80058c6 80058bc: 687b ldr r3, [r7, #4] 80058be: 2202 movs r2, #2 80058c0: f883 203e strb.w r2, [r3, #62] @ 0x3e 80058c4: e013 b.n 80058ee 80058c6: 683b ldr r3, [r7, #0] 80058c8: 2b04 cmp r3, #4 80058ca: d104 bne.n 80058d6 80058cc: 687b ldr r3, [r7, #4] 80058ce: 2202 movs r2, #2 80058d0: f883 203f strb.w r2, [r3, #63] @ 0x3f 80058d4: e00b b.n 80058ee 80058d6: 683b ldr r3, [r7, #0] 80058d8: 2b08 cmp r3, #8 80058da: d104 bne.n 80058e6 80058dc: 687b ldr r3, [r7, #4] 80058de: 2202 movs r2, #2 80058e0: f883 2040 strb.w r2, [r3, #64] @ 0x40 80058e4: e003 b.n 80058ee 80058e6: 687b ldr r3, [r7, #4] 80058e8: 2202 movs r2, #2 80058ea: f883 2041 strb.w r2, [r3, #65] @ 0x41 80058ee: 687b ldr r3, [r7, #4] 80058f0: 681b ldr r3, [r3, #0] 80058f2: 2201 movs r2, #1 80058f4: 6839 ldr r1, [r7, #0] 80058f6: 4618 mov r0, r3 80058f8: f000 fd14 bl 8006324 80058fc: 687b ldr r3, [r7, #4] 80058fe: 681b ldr r3, [r3, #0] 8005900: 4a2d ldr r2, [pc, #180] @ (80059b8 ) 8005902: 4293 cmp r3, r2 8005904: d004 beq.n 8005910 8005906: 687b ldr r3, [r7, #4] 8005908: 681b ldr r3, [r3, #0] 800590a: 4a2c ldr r2, [pc, #176] @ (80059bc ) 800590c: 4293 cmp r3, r2 800590e: d101 bne.n 8005914 8005910: 2301 movs r3, #1 8005912: e000 b.n 8005916 8005914: 2300 movs r3, #0 8005916: 2b00 cmp r3, #0 8005918: d007 beq.n 800592a 800591a: 687b ldr r3, [r7, #4] 800591c: 681b ldr r3, [r3, #0] 800591e: 6c5a ldr r2, [r3, #68] @ 0x44 8005920: 687b ldr r3, [r7, #4] 8005922: 681b ldr r3, [r3, #0] 8005924: f442 4200 orr.w r2, r2, #32768 @ 0x8000 8005928: 645a str r2, [r3, #68] @ 0x44 800592a: 687b ldr r3, [r7, #4] 800592c: 681b ldr r3, [r3, #0] 800592e: 4a22 ldr r2, [pc, #136] @ (80059b8 ) 8005930: 4293 cmp r3, r2 8005932: d022 beq.n 800597a 8005934: 687b ldr r3, [r7, #4] 8005936: 681b ldr r3, [r3, #0] 8005938: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 800593c: d01d beq.n 800597a 800593e: 687b ldr r3, [r7, #4] 8005940: 681b ldr r3, [r3, #0] 8005942: 4a1f ldr r2, [pc, #124] @ (80059c0 ) 8005944: 4293 cmp r3, r2 8005946: d018 beq.n 800597a 8005948: 687b ldr r3, [r7, #4] 800594a: 681b ldr r3, [r3, #0] 800594c: 4a1d ldr r2, [pc, #116] @ (80059c4 ) 800594e: 4293 cmp r3, r2 8005950: d013 beq.n 800597a 8005952: 687b ldr r3, [r7, #4] 8005954: 681b ldr r3, [r3, #0] 8005956: 4a1c ldr r2, [pc, #112] @ (80059c8 ) 8005958: 4293 cmp r3, r2 800595a: d00e beq.n 800597a 800595c: 687b ldr r3, [r7, #4] 800595e: 681b ldr r3, [r3, #0] 8005960: 4a16 ldr r2, [pc, #88] @ (80059bc ) 8005962: 4293 cmp r3, r2 8005964: d009 beq.n 800597a 8005966: 687b ldr r3, [r7, #4] 8005968: 681b ldr r3, [r3, #0] 800596a: 4a18 ldr r2, [pc, #96] @ (80059cc ) 800596c: 4293 cmp r3, r2 800596e: d004 beq.n 800597a 8005970: 687b ldr r3, [r7, #4] 8005972: 681b ldr r3, [r3, #0] 8005974: 4a16 ldr r2, [pc, #88] @ (80059d0 ) 8005976: 4293 cmp r3, r2 8005978: d111 bne.n 800599e 800597a: 687b ldr r3, [r7, #4] 800597c: 681b ldr r3, [r3, #0] 800597e: 689b ldr r3, [r3, #8] 8005980: f003 0307 and.w r3, r3, #7 8005984: 60fb str r3, [r7, #12] 8005986: 68fb ldr r3, [r7, #12] 8005988: 2b06 cmp r3, #6 800598a: d010 beq.n 80059ae 800598c: 687b ldr r3, [r7, #4] 800598e: 681b ldr r3, [r3, #0] 8005990: 681a ldr r2, [r3, #0] 8005992: 687b ldr r3, [r7, #4] 8005994: 681b ldr r3, [r3, #0] 8005996: f042 0201 orr.w r2, r2, #1 800599a: 601a str r2, [r3, #0] 800599c: e007 b.n 80059ae 800599e: 687b ldr r3, [r7, #4] 80059a0: 681b ldr r3, [r3, #0] 80059a2: 681a ldr r2, [r3, #0] 80059a4: 687b ldr r3, [r7, #4] 80059a6: 681b ldr r3, [r3, #0] 80059a8: f042 0201 orr.w r2, r2, #1 80059ac: 601a str r2, [r3, #0] 80059ae: 2300 movs r3, #0 80059b0: 4618 mov r0, r3 80059b2: 3710 adds r7, #16 80059b4: 46bd mov sp, r7 80059b6: bd80 pop {r7, pc} 80059b8: 40010000 .word 0x40010000 80059bc: 40010400 .word 0x40010400 80059c0: 40000400 .word 0x40000400 80059c4: 40000800 .word 0x40000800 80059c8: 40000c00 .word 0x40000c00 80059cc: 40014000 .word 0x40014000 80059d0: 40001800 .word 0x40001800 080059d4 : 80059d4: b580 push {r7, lr} 80059d6: b086 sub sp, #24 80059d8: af00 add r7, sp, #0 80059da: 6078 str r0, [r7, #4] 80059dc: 6039 str r1, [r7, #0] 80059de: 687b ldr r3, [r7, #4] 80059e0: 2b00 cmp r3, #0 80059e2: d101 bne.n 80059e8 80059e4: 2301 movs r3, #1 80059e6: e097 b.n 8005b18 80059e8: 687b ldr r3, [r7, #4] 80059ea: f893 303d ldrb.w r3, [r3, #61] @ 0x3d 80059ee: b2db uxtb r3, r3 80059f0: 2b00 cmp r3, #0 80059f2: d106 bne.n 8005a02 80059f4: 687b ldr r3, [r7, #4] 80059f6: 2200 movs r2, #0 80059f8: f883 203c strb.w r2, [r3, #60] @ 0x3c 80059fc: 6878 ldr r0, [r7, #4] 80059fe: f7fb fe19 bl 8001634 8005a02: 687b ldr r3, [r7, #4] 8005a04: 2202 movs r2, #2 8005a06: f883 203d strb.w r2, [r3, #61] @ 0x3d 8005a0a: 687b ldr r3, [r7, #4] 8005a0c: 681b ldr r3, [r3, #0] 8005a0e: 689b ldr r3, [r3, #8] 8005a10: 687a ldr r2, [r7, #4] 8005a12: 6812 ldr r2, [r2, #0] 8005a14: f423 4380 bic.w r3, r3, #16384 @ 0x4000 8005a18: f023 0307 bic.w r3, r3, #7 8005a1c: 6093 str r3, [r2, #8] 8005a1e: 687b ldr r3, [r7, #4] 8005a20: 681a ldr r2, [r3, #0] 8005a22: 687b ldr r3, [r7, #4] 8005a24: 3304 adds r3, #4 8005a26: 4619 mov r1, r3 8005a28: 4610 mov r0, r2 8005a2a: f000 fa25 bl 8005e78 8005a2e: 687b ldr r3, [r7, #4] 8005a30: 681b ldr r3, [r3, #0] 8005a32: 689b ldr r3, [r3, #8] 8005a34: 617b str r3, [r7, #20] 8005a36: 687b ldr r3, [r7, #4] 8005a38: 681b ldr r3, [r3, #0] 8005a3a: 699b ldr r3, [r3, #24] 8005a3c: 613b str r3, [r7, #16] 8005a3e: 687b ldr r3, [r7, #4] 8005a40: 681b ldr r3, [r3, #0] 8005a42: 6a1b ldr r3, [r3, #32] 8005a44: 60fb str r3, [r7, #12] 8005a46: 683b ldr r3, [r7, #0] 8005a48: 681b ldr r3, [r3, #0] 8005a4a: 697a ldr r2, [r7, #20] 8005a4c: 4313 orrs r3, r2 8005a4e: 617b str r3, [r7, #20] 8005a50: 693b ldr r3, [r7, #16] 8005a52: f423 7340 bic.w r3, r3, #768 @ 0x300 8005a56: f023 0303 bic.w r3, r3, #3 8005a5a: 613b str r3, [r7, #16] 8005a5c: 683b ldr r3, [r7, #0] 8005a5e: 689a ldr r2, [r3, #8] 8005a60: 683b ldr r3, [r7, #0] 8005a62: 699b ldr r3, [r3, #24] 8005a64: 021b lsls r3, r3, #8 8005a66: 4313 orrs r3, r2 8005a68: 693a ldr r2, [r7, #16] 8005a6a: 4313 orrs r3, r2 8005a6c: 613b str r3, [r7, #16] 8005a6e: 693b ldr r3, [r7, #16] 8005a70: f423 6340 bic.w r3, r3, #3072 @ 0xc00 8005a74: f023 030c bic.w r3, r3, #12 8005a78: 613b str r3, [r7, #16] 8005a7a: 693b ldr r3, [r7, #16] 8005a7c: f423 4370 bic.w r3, r3, #61440 @ 0xf000 8005a80: f023 03f0 bic.w r3, r3, #240 @ 0xf0 8005a84: 613b str r3, [r7, #16] 8005a86: 683b ldr r3, [r7, #0] 8005a88: 68da ldr r2, [r3, #12] 8005a8a: 683b ldr r3, [r7, #0] 8005a8c: 69db ldr r3, [r3, #28] 8005a8e: 021b lsls r3, r3, #8 8005a90: 4313 orrs r3, r2 8005a92: 693a ldr r2, [r7, #16] 8005a94: 4313 orrs r3, r2 8005a96: 613b str r3, [r7, #16] 8005a98: 683b ldr r3, [r7, #0] 8005a9a: 691b ldr r3, [r3, #16] 8005a9c: 011a lsls r2, r3, #4 8005a9e: 683b ldr r3, [r7, #0] 8005aa0: 6a1b ldr r3, [r3, #32] 8005aa2: 031b lsls r3, r3, #12 8005aa4: 4313 orrs r3, r2 8005aa6: 693a ldr r2, [r7, #16] 8005aa8: 4313 orrs r3, r2 8005aaa: 613b str r3, [r7, #16] 8005aac: 68fb ldr r3, [r7, #12] 8005aae: f023 0322 bic.w r3, r3, #34 @ 0x22 8005ab2: 60fb str r3, [r7, #12] 8005ab4: 68fb ldr r3, [r7, #12] 8005ab6: f023 0388 bic.w r3, r3, #136 @ 0x88 8005aba: 60fb str r3, [r7, #12] 8005abc: 683b ldr r3, [r7, #0] 8005abe: 685a ldr r2, [r3, #4] 8005ac0: 683b ldr r3, [r7, #0] 8005ac2: 695b ldr r3, [r3, #20] 8005ac4: 011b lsls r3, r3, #4 8005ac6: 4313 orrs r3, r2 8005ac8: 68fa ldr r2, [r7, #12] 8005aca: 4313 orrs r3, r2 8005acc: 60fb str r3, [r7, #12] 8005ace: 687b ldr r3, [r7, #4] 8005ad0: 681b ldr r3, [r3, #0] 8005ad2: 697a ldr r2, [r7, #20] 8005ad4: 609a str r2, [r3, #8] 8005ad6: 687b ldr r3, [r7, #4] 8005ad8: 681b ldr r3, [r3, #0] 8005ada: 693a ldr r2, [r7, #16] 8005adc: 619a str r2, [r3, #24] 8005ade: 687b ldr r3, [r7, #4] 8005ae0: 681b ldr r3, [r3, #0] 8005ae2: 68fa ldr r2, [r7, #12] 8005ae4: 621a str r2, [r3, #32] 8005ae6: 687b ldr r3, [r7, #4] 8005ae8: 2201 movs r2, #1 8005aea: f883 2046 strb.w r2, [r3, #70] @ 0x46 8005aee: 687b ldr r3, [r7, #4] 8005af0: 2201 movs r2, #1 8005af2: f883 203e strb.w r2, [r3, #62] @ 0x3e 8005af6: 687b ldr r3, [r7, #4] 8005af8: 2201 movs r2, #1 8005afa: f883 203f strb.w r2, [r3, #63] @ 0x3f 8005afe: 687b ldr r3, [r7, #4] 8005b00: 2201 movs r2, #1 8005b02: f883 2042 strb.w r2, [r3, #66] @ 0x42 8005b06: 687b ldr r3, [r7, #4] 8005b08: 2201 movs r2, #1 8005b0a: f883 2043 strb.w r2, [r3, #67] @ 0x43 8005b0e: 687b ldr r3, [r7, #4] 8005b10: 2201 movs r2, #1 8005b12: f883 203d strb.w r2, [r3, #61] @ 0x3d 8005b16: 2300 movs r3, #0 8005b18: 4618 mov r0, r3 8005b1a: 3718 adds r7, #24 8005b1c: 46bd mov sp, r7 8005b1e: bd80 pop {r7, pc} 08005b20 : 8005b20: b580 push {r7, lr} 8005b22: b084 sub sp, #16 8005b24: af00 add r7, sp, #0 8005b26: 6078 str r0, [r7, #4] 8005b28: 6039 str r1, [r7, #0] 8005b2a: 687b ldr r3, [r7, #4] 8005b2c: f893 303e ldrb.w r3, [r3, #62] @ 0x3e 8005b30: 73fb strb r3, [r7, #15] 8005b32: 687b ldr r3, [r7, #4] 8005b34: f893 303f ldrb.w r3, [r3, #63] @ 0x3f 8005b38: 73bb strb r3, [r7, #14] 8005b3a: 687b ldr r3, [r7, #4] 8005b3c: f893 3042 ldrb.w r3, [r3, #66] @ 0x42 8005b40: 737b strb r3, [r7, #13] 8005b42: 687b ldr r3, [r7, #4] 8005b44: f893 3043 ldrb.w r3, [r3, #67] @ 0x43 8005b48: 733b strb r3, [r7, #12] 8005b4a: 683b ldr r3, [r7, #0] 8005b4c: 2b00 cmp r3, #0 8005b4e: d110 bne.n 8005b72 8005b50: 7bfb ldrb r3, [r7, #15] 8005b52: 2b01 cmp r3, #1 8005b54: d102 bne.n 8005b5c 8005b56: 7b7b ldrb r3, [r7, #13] 8005b58: 2b01 cmp r3, #1 8005b5a: d001 beq.n 8005b60 8005b5c: 2301 movs r3, #1 8005b5e: e069 b.n 8005c34 8005b60: 687b ldr r3, [r7, #4] 8005b62: 2202 movs r2, #2 8005b64: f883 203e strb.w r2, [r3, #62] @ 0x3e 8005b68: 687b ldr r3, [r7, #4] 8005b6a: 2202 movs r2, #2 8005b6c: f883 2042 strb.w r2, [r3, #66] @ 0x42 8005b70: e031 b.n 8005bd6 8005b72: 683b ldr r3, [r7, #0] 8005b74: 2b04 cmp r3, #4 8005b76: d110 bne.n 8005b9a 8005b78: 7bbb ldrb r3, [r7, #14] 8005b7a: 2b01 cmp r3, #1 8005b7c: d102 bne.n 8005b84 8005b7e: 7b3b ldrb r3, [r7, #12] 8005b80: 2b01 cmp r3, #1 8005b82: d001 beq.n 8005b88 8005b84: 2301 movs r3, #1 8005b86: e055 b.n 8005c34 8005b88: 687b ldr r3, [r7, #4] 8005b8a: 2202 movs r2, #2 8005b8c: f883 203f strb.w r2, [r3, #63] @ 0x3f 8005b90: 687b ldr r3, [r7, #4] 8005b92: 2202 movs r2, #2 8005b94: f883 2043 strb.w r2, [r3, #67] @ 0x43 8005b98: e01d b.n 8005bd6 8005b9a: 7bfb ldrb r3, [r7, #15] 8005b9c: 2b01 cmp r3, #1 8005b9e: d108 bne.n 8005bb2 8005ba0: 7bbb ldrb r3, [r7, #14] 8005ba2: 2b01 cmp r3, #1 8005ba4: d105 bne.n 8005bb2 8005ba6: 7b7b ldrb r3, [r7, #13] 8005ba8: 2b01 cmp r3, #1 8005baa: d102 bne.n 8005bb2 8005bac: 7b3b ldrb r3, [r7, #12] 8005bae: 2b01 cmp r3, #1 8005bb0: d001 beq.n 8005bb6 8005bb2: 2301 movs r3, #1 8005bb4: e03e b.n 8005c34 8005bb6: 687b ldr r3, [r7, #4] 8005bb8: 2202 movs r2, #2 8005bba: f883 203e strb.w r2, [r3, #62] @ 0x3e 8005bbe: 687b ldr r3, [r7, #4] 8005bc0: 2202 movs r2, #2 8005bc2: f883 203f strb.w r2, [r3, #63] @ 0x3f 8005bc6: 687b ldr r3, [r7, #4] 8005bc8: 2202 movs r2, #2 8005bca: f883 2042 strb.w r2, [r3, #66] @ 0x42 8005bce: 687b ldr r3, [r7, #4] 8005bd0: 2202 movs r2, #2 8005bd2: f883 2043 strb.w r2, [r3, #67] @ 0x43 8005bd6: 683b ldr r3, [r7, #0] 8005bd8: 2b00 cmp r3, #0 8005bda: d003 beq.n 8005be4 8005bdc: 683b ldr r3, [r7, #0] 8005bde: 2b04 cmp r3, #4 8005be0: d008 beq.n 8005bf4 8005be2: e00f b.n 8005c04 8005be4: 687b ldr r3, [r7, #4] 8005be6: 681b ldr r3, [r3, #0] 8005be8: 2201 movs r2, #1 8005bea: 2100 movs r1, #0 8005bec: 4618 mov r0, r3 8005bee: f000 fb99 bl 8006324 8005bf2: e016 b.n 8005c22 8005bf4: 687b ldr r3, [r7, #4] 8005bf6: 681b ldr r3, [r3, #0] 8005bf8: 2201 movs r2, #1 8005bfa: 2104 movs r1, #4 8005bfc: 4618 mov r0, r3 8005bfe: f000 fb91 bl 8006324 8005c02: e00e b.n 8005c22 8005c04: 687b ldr r3, [r7, #4] 8005c06: 681b ldr r3, [r3, #0] 8005c08: 2201 movs r2, #1 8005c0a: 2100 movs r1, #0 8005c0c: 4618 mov r0, r3 8005c0e: f000 fb89 bl 8006324 8005c12: 687b ldr r3, [r7, #4] 8005c14: 681b ldr r3, [r3, #0] 8005c16: 2201 movs r2, #1 8005c18: 2104 movs r1, #4 8005c1a: 4618 mov r0, r3 8005c1c: f000 fb82 bl 8006324 8005c20: bf00 nop 8005c22: 687b ldr r3, [r7, #4] 8005c24: 681b ldr r3, [r3, #0] 8005c26: 681a ldr r2, [r3, #0] 8005c28: 687b ldr r3, [r7, #4] 8005c2a: 681b ldr r3, [r3, #0] 8005c2c: f042 0201 orr.w r2, r2, #1 8005c30: 601a str r2, [r3, #0] 8005c32: 2300 movs r3, #0 8005c34: 4618 mov r0, r3 8005c36: 3710 adds r7, #16 8005c38: 46bd mov sp, r7 8005c3a: bd80 pop {r7, pc} 08005c3c : 8005c3c: b580 push {r7, lr} 8005c3e: b086 sub sp, #24 8005c40: af00 add r7, sp, #0 8005c42: 60f8 str r0, [r7, #12] 8005c44: 60b9 str r1, [r7, #8] 8005c46: 607a str r2, [r7, #4] 8005c48: 2300 movs r3, #0 8005c4a: 75fb strb r3, [r7, #23] 8005c4c: 68fb ldr r3, [r7, #12] 8005c4e: f893 303c ldrb.w r3, [r3, #60] @ 0x3c 8005c52: 2b01 cmp r3, #1 8005c54: d101 bne.n 8005c5a 8005c56: 2302 movs r3, #2 8005c58: e048 b.n 8005cec 8005c5a: 68fb ldr r3, [r7, #12] 8005c5c: 2201 movs r2, #1 8005c5e: f883 203c strb.w r2, [r3, #60] @ 0x3c 8005c62: 687b ldr r3, [r7, #4] 8005c64: 2b0c cmp r3, #12 8005c66: d839 bhi.n 8005cdc 8005c68: a201 add r2, pc, #4 @ (adr r2, 8005c70 ) 8005c6a: f852 f023 ldr.w pc, [r2, r3, lsl #2] 8005c6e: bf00 nop 8005c70: 08005ca5 .word 0x08005ca5 8005c74: 08005cdd .word 0x08005cdd 8005c78: 08005cdd .word 0x08005cdd 8005c7c: 08005cdd .word 0x08005cdd 8005c80: 08005cb3 .word 0x08005cb3 8005c84: 08005cdd .word 0x08005cdd 8005c88: 08005cdd .word 0x08005cdd 8005c8c: 08005cdd .word 0x08005cdd 8005c90: 08005cc1 .word 0x08005cc1 8005c94: 08005cdd .word 0x08005cdd 8005c98: 08005cdd .word 0x08005cdd 8005c9c: 08005cdd .word 0x08005cdd 8005ca0: 08005ccf .word 0x08005ccf 8005ca4: 68fb ldr r3, [r7, #12] 8005ca6: 681b ldr r3, [r3, #0] 8005ca8: 68b9 ldr r1, [r7, #8] 8005caa: 4618 mov r0, r3 8005cac: f000 f98a bl 8005fc4 8005cb0: e017 b.n 8005ce2 8005cb2: 68fb ldr r3, [r7, #12] 8005cb4: 681b ldr r3, [r3, #0] 8005cb6: 68b9 ldr r1, [r7, #8] 8005cb8: 4618 mov r0, r3 8005cba: f000 f9f3 bl 80060a4 8005cbe: e010 b.n 8005ce2 8005cc0: 68fb ldr r3, [r7, #12] 8005cc2: 681b ldr r3, [r3, #0] 8005cc4: 68b9 ldr r1, [r7, #8] 8005cc6: 4618 mov r0, r3 8005cc8: f000 fa62 bl 8006190 8005ccc: e009 b.n 8005ce2 8005cce: 68fb ldr r3, [r7, #12] 8005cd0: 681b ldr r3, [r3, #0] 8005cd2: 68b9 ldr r1, [r7, #8] 8005cd4: 4618 mov r0, r3 8005cd6: f000 facf bl 8006278 8005cda: e002 b.n 8005ce2 8005cdc: 2301 movs r3, #1 8005cde: 75fb strb r3, [r7, #23] 8005ce0: bf00 nop 8005ce2: 68fb ldr r3, [r7, #12] 8005ce4: 2200 movs r2, #0 8005ce6: f883 203c strb.w r2, [r3, #60] @ 0x3c 8005cea: 7dfb ldrb r3, [r7, #23] 8005cec: 4618 mov r0, r3 8005cee: 3718 adds r7, #24 8005cf0: 46bd mov sp, r7 8005cf2: bd80 pop {r7, pc} 08005cf4 : 8005cf4: b580 push {r7, lr} 8005cf6: b086 sub sp, #24 8005cf8: af00 add r7, sp, #0 8005cfa: 60f8 str r0, [r7, #12] 8005cfc: 60b9 str r1, [r7, #8] 8005cfe: 607a str r2, [r7, #4] 8005d00: 2300 movs r3, #0 8005d02: 75fb strb r3, [r7, #23] 8005d04: 68fb ldr r3, [r7, #12] 8005d06: f893 303c ldrb.w r3, [r3, #60] @ 0x3c 8005d0a: 2b01 cmp r3, #1 8005d0c: d101 bne.n 8005d12 8005d0e: 2302 movs r3, #2 8005d10: e0ae b.n 8005e70 8005d12: 68fb ldr r3, [r7, #12] 8005d14: 2201 movs r2, #1 8005d16: f883 203c strb.w r2, [r3, #60] @ 0x3c 8005d1a: 687b ldr r3, [r7, #4] 8005d1c: 2b0c cmp r3, #12 8005d1e: f200 809f bhi.w 8005e60 8005d22: a201 add r2, pc, #4 @ (adr r2, 8005d28 ) 8005d24: f852 f023 ldr.w pc, [r2, r3, lsl #2] 8005d28: 08005d5d .word 0x08005d5d 8005d2c: 08005e61 .word 0x08005e61 8005d30: 08005e61 .word 0x08005e61 8005d34: 08005e61 .word 0x08005e61 8005d38: 08005d9d .word 0x08005d9d 8005d3c: 08005e61 .word 0x08005e61 8005d40: 08005e61 .word 0x08005e61 8005d44: 08005e61 .word 0x08005e61 8005d48: 08005ddf .word 0x08005ddf 8005d4c: 08005e61 .word 0x08005e61 8005d50: 08005e61 .word 0x08005e61 8005d54: 08005e61 .word 0x08005e61 8005d58: 08005e1f .word 0x08005e1f 8005d5c: 68fb ldr r3, [r7, #12] 8005d5e: 681b ldr r3, [r3, #0] 8005d60: 68b9 ldr r1, [r7, #8] 8005d62: 4618 mov r0, r3 8005d64: f000 f92e bl 8005fc4 8005d68: 68fb ldr r3, [r7, #12] 8005d6a: 681b ldr r3, [r3, #0] 8005d6c: 699a ldr r2, [r3, #24] 8005d6e: 68fb ldr r3, [r7, #12] 8005d70: 681b ldr r3, [r3, #0] 8005d72: f042 0208 orr.w r2, r2, #8 8005d76: 619a str r2, [r3, #24] 8005d78: 68fb ldr r3, [r7, #12] 8005d7a: 681b ldr r3, [r3, #0] 8005d7c: 699a ldr r2, [r3, #24] 8005d7e: 68fb ldr r3, [r7, #12] 8005d80: 681b ldr r3, [r3, #0] 8005d82: f022 0204 bic.w r2, r2, #4 8005d86: 619a str r2, [r3, #24] 8005d88: 68fb ldr r3, [r7, #12] 8005d8a: 681b ldr r3, [r3, #0] 8005d8c: 6999 ldr r1, [r3, #24] 8005d8e: 68bb ldr r3, [r7, #8] 8005d90: 691a ldr r2, [r3, #16] 8005d92: 68fb ldr r3, [r7, #12] 8005d94: 681b ldr r3, [r3, #0] 8005d96: 430a orrs r2, r1 8005d98: 619a str r2, [r3, #24] 8005d9a: e064 b.n 8005e66 8005d9c: 68fb ldr r3, [r7, #12] 8005d9e: 681b ldr r3, [r3, #0] 8005da0: 68b9 ldr r1, [r7, #8] 8005da2: 4618 mov r0, r3 8005da4: f000 f97e bl 80060a4 8005da8: 68fb ldr r3, [r7, #12] 8005daa: 681b ldr r3, [r3, #0] 8005dac: 699a ldr r2, [r3, #24] 8005dae: 68fb ldr r3, [r7, #12] 8005db0: 681b ldr r3, [r3, #0] 8005db2: f442 6200 orr.w r2, r2, #2048 @ 0x800 8005db6: 619a str r2, [r3, #24] 8005db8: 68fb ldr r3, [r7, #12] 8005dba: 681b ldr r3, [r3, #0] 8005dbc: 699a ldr r2, [r3, #24] 8005dbe: 68fb ldr r3, [r7, #12] 8005dc0: 681b ldr r3, [r3, #0] 8005dc2: f422 6280 bic.w r2, r2, #1024 @ 0x400 8005dc6: 619a str r2, [r3, #24] 8005dc8: 68fb ldr r3, [r7, #12] 8005dca: 681b ldr r3, [r3, #0] 8005dcc: 6999 ldr r1, [r3, #24] 8005dce: 68bb ldr r3, [r7, #8] 8005dd0: 691b ldr r3, [r3, #16] 8005dd2: 021a lsls r2, r3, #8 8005dd4: 68fb ldr r3, [r7, #12] 8005dd6: 681b ldr r3, [r3, #0] 8005dd8: 430a orrs r2, r1 8005dda: 619a str r2, [r3, #24] 8005ddc: e043 b.n 8005e66 8005dde: 68fb ldr r3, [r7, #12] 8005de0: 681b ldr r3, [r3, #0] 8005de2: 68b9 ldr r1, [r7, #8] 8005de4: 4618 mov r0, r3 8005de6: f000 f9d3 bl 8006190 8005dea: 68fb ldr r3, [r7, #12] 8005dec: 681b ldr r3, [r3, #0] 8005dee: 69da ldr r2, [r3, #28] 8005df0: 68fb ldr r3, [r7, #12] 8005df2: 681b ldr r3, [r3, #0] 8005df4: f042 0208 orr.w r2, r2, #8 8005df8: 61da str r2, [r3, #28] 8005dfa: 68fb ldr r3, [r7, #12] 8005dfc: 681b ldr r3, [r3, #0] 8005dfe: 69da ldr r2, [r3, #28] 8005e00: 68fb ldr r3, [r7, #12] 8005e02: 681b ldr r3, [r3, #0] 8005e04: f022 0204 bic.w r2, r2, #4 8005e08: 61da str r2, [r3, #28] 8005e0a: 68fb ldr r3, [r7, #12] 8005e0c: 681b ldr r3, [r3, #0] 8005e0e: 69d9 ldr r1, [r3, #28] 8005e10: 68bb ldr r3, [r7, #8] 8005e12: 691a ldr r2, [r3, #16] 8005e14: 68fb ldr r3, [r7, #12] 8005e16: 681b ldr r3, [r3, #0] 8005e18: 430a orrs r2, r1 8005e1a: 61da str r2, [r3, #28] 8005e1c: e023 b.n 8005e66 8005e1e: 68fb ldr r3, [r7, #12] 8005e20: 681b ldr r3, [r3, #0] 8005e22: 68b9 ldr r1, [r7, #8] 8005e24: 4618 mov r0, r3 8005e26: f000 fa27 bl 8006278 8005e2a: 68fb ldr r3, [r7, #12] 8005e2c: 681b ldr r3, [r3, #0] 8005e2e: 69da ldr r2, [r3, #28] 8005e30: 68fb ldr r3, [r7, #12] 8005e32: 681b ldr r3, [r3, #0] 8005e34: f442 6200 orr.w r2, r2, #2048 @ 0x800 8005e38: 61da str r2, [r3, #28] 8005e3a: 68fb ldr r3, [r7, #12] 8005e3c: 681b ldr r3, [r3, #0] 8005e3e: 69da ldr r2, [r3, #28] 8005e40: 68fb ldr r3, [r7, #12] 8005e42: 681b ldr r3, [r3, #0] 8005e44: f422 6280 bic.w r2, r2, #1024 @ 0x400 8005e48: 61da str r2, [r3, #28] 8005e4a: 68fb ldr r3, [r7, #12] 8005e4c: 681b ldr r3, [r3, #0] 8005e4e: 69d9 ldr r1, [r3, #28] 8005e50: 68bb ldr r3, [r7, #8] 8005e52: 691b ldr r3, [r3, #16] 8005e54: 021a lsls r2, r3, #8 8005e56: 68fb ldr r3, [r7, #12] 8005e58: 681b ldr r3, [r3, #0] 8005e5a: 430a orrs r2, r1 8005e5c: 61da str r2, [r3, #28] 8005e5e: e002 b.n 8005e66 8005e60: 2301 movs r3, #1 8005e62: 75fb strb r3, [r7, #23] 8005e64: bf00 nop 8005e66: 68fb ldr r3, [r7, #12] 8005e68: 2200 movs r2, #0 8005e6a: f883 203c strb.w r2, [r3, #60] @ 0x3c 8005e6e: 7dfb ldrb r3, [r7, #23] 8005e70: 4618 mov r0, r3 8005e72: 3718 adds r7, #24 8005e74: 46bd mov sp, r7 8005e76: bd80 pop {r7, pc} 08005e78 : 8005e78: b480 push {r7} 8005e7a: b085 sub sp, #20 8005e7c: af00 add r7, sp, #0 8005e7e: 6078 str r0, [r7, #4] 8005e80: 6039 str r1, [r7, #0] 8005e82: 687b ldr r3, [r7, #4] 8005e84: 681b ldr r3, [r3, #0] 8005e86: 60fb str r3, [r7, #12] 8005e88: 687b ldr r3, [r7, #4] 8005e8a: 4a43 ldr r2, [pc, #268] @ (8005f98 ) 8005e8c: 4293 cmp r3, r2 8005e8e: d013 beq.n 8005eb8 8005e90: 687b ldr r3, [r7, #4] 8005e92: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 8005e96: d00f beq.n 8005eb8 8005e98: 687b ldr r3, [r7, #4] 8005e9a: 4a40 ldr r2, [pc, #256] @ (8005f9c ) 8005e9c: 4293 cmp r3, r2 8005e9e: d00b beq.n 8005eb8 8005ea0: 687b ldr r3, [r7, #4] 8005ea2: 4a3f ldr r2, [pc, #252] @ (8005fa0 ) 8005ea4: 4293 cmp r3, r2 8005ea6: d007 beq.n 8005eb8 8005ea8: 687b ldr r3, [r7, #4] 8005eaa: 4a3e ldr r2, [pc, #248] @ (8005fa4 ) 8005eac: 4293 cmp r3, r2 8005eae: d003 beq.n 8005eb8 8005eb0: 687b ldr r3, [r7, #4] 8005eb2: 4a3d ldr r2, [pc, #244] @ (8005fa8 ) 8005eb4: 4293 cmp r3, r2 8005eb6: d108 bne.n 8005eca 8005eb8: 68fb ldr r3, [r7, #12] 8005eba: f023 0370 bic.w r3, r3, #112 @ 0x70 8005ebe: 60fb str r3, [r7, #12] 8005ec0: 683b ldr r3, [r7, #0] 8005ec2: 685b ldr r3, [r3, #4] 8005ec4: 68fa ldr r2, [r7, #12] 8005ec6: 4313 orrs r3, r2 8005ec8: 60fb str r3, [r7, #12] 8005eca: 687b ldr r3, [r7, #4] 8005ecc: 4a32 ldr r2, [pc, #200] @ (8005f98 ) 8005ece: 4293 cmp r3, r2 8005ed0: d02b beq.n 8005f2a 8005ed2: 687b ldr r3, [r7, #4] 8005ed4: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 8005ed8: d027 beq.n 8005f2a 8005eda: 687b ldr r3, [r7, #4] 8005edc: 4a2f ldr r2, [pc, #188] @ (8005f9c ) 8005ede: 4293 cmp r3, r2 8005ee0: d023 beq.n 8005f2a 8005ee2: 687b ldr r3, [r7, #4] 8005ee4: 4a2e ldr r2, [pc, #184] @ (8005fa0 ) 8005ee6: 4293 cmp r3, r2 8005ee8: d01f beq.n 8005f2a 8005eea: 687b ldr r3, [r7, #4] 8005eec: 4a2d ldr r2, [pc, #180] @ (8005fa4 ) 8005eee: 4293 cmp r3, r2 8005ef0: d01b beq.n 8005f2a 8005ef2: 687b ldr r3, [r7, #4] 8005ef4: 4a2c ldr r2, [pc, #176] @ (8005fa8 ) 8005ef6: 4293 cmp r3, r2 8005ef8: d017 beq.n 8005f2a 8005efa: 687b ldr r3, [r7, #4] 8005efc: 4a2b ldr r2, [pc, #172] @ (8005fac ) 8005efe: 4293 cmp r3, r2 8005f00: d013 beq.n 8005f2a 8005f02: 687b ldr r3, [r7, #4] 8005f04: 4a2a ldr r2, [pc, #168] @ (8005fb0 ) 8005f06: 4293 cmp r3, r2 8005f08: d00f beq.n 8005f2a 8005f0a: 687b ldr r3, [r7, #4] 8005f0c: 4a29 ldr r2, [pc, #164] @ (8005fb4 ) 8005f0e: 4293 cmp r3, r2 8005f10: d00b beq.n 8005f2a 8005f12: 687b ldr r3, [r7, #4] 8005f14: 4a28 ldr r2, [pc, #160] @ (8005fb8 ) 8005f16: 4293 cmp r3, r2 8005f18: d007 beq.n 8005f2a 8005f1a: 687b ldr r3, [r7, #4] 8005f1c: 4a27 ldr r2, [pc, #156] @ (8005fbc ) 8005f1e: 4293 cmp r3, r2 8005f20: d003 beq.n 8005f2a 8005f22: 687b ldr r3, [r7, #4] 8005f24: 4a26 ldr r2, [pc, #152] @ (8005fc0 ) 8005f26: 4293 cmp r3, r2 8005f28: d108 bne.n 8005f3c 8005f2a: 68fb ldr r3, [r7, #12] 8005f2c: f423 7340 bic.w r3, r3, #768 @ 0x300 8005f30: 60fb str r3, [r7, #12] 8005f32: 683b ldr r3, [r7, #0] 8005f34: 68db ldr r3, [r3, #12] 8005f36: 68fa ldr r2, [r7, #12] 8005f38: 4313 orrs r3, r2 8005f3a: 60fb str r3, [r7, #12] 8005f3c: 68fb ldr r3, [r7, #12] 8005f3e: f023 0280 bic.w r2, r3, #128 @ 0x80 8005f42: 683b ldr r3, [r7, #0] 8005f44: 695b ldr r3, [r3, #20] 8005f46: 4313 orrs r3, r2 8005f48: 60fb str r3, [r7, #12] 8005f4a: 683b ldr r3, [r7, #0] 8005f4c: 689a ldr r2, [r3, #8] 8005f4e: 687b ldr r3, [r7, #4] 8005f50: 62da str r2, [r3, #44] @ 0x2c 8005f52: 683b ldr r3, [r7, #0] 8005f54: 681a ldr r2, [r3, #0] 8005f56: 687b ldr r3, [r7, #4] 8005f58: 629a str r2, [r3, #40] @ 0x28 8005f5a: 687b ldr r3, [r7, #4] 8005f5c: 4a0e ldr r2, [pc, #56] @ (8005f98 ) 8005f5e: 4293 cmp r3, r2 8005f60: d003 beq.n 8005f6a 8005f62: 687b ldr r3, [r7, #4] 8005f64: 4a10 ldr r2, [pc, #64] @ (8005fa8 ) 8005f66: 4293 cmp r3, r2 8005f68: d103 bne.n 8005f72 8005f6a: 683b ldr r3, [r7, #0] 8005f6c: 691a ldr r2, [r3, #16] 8005f6e: 687b ldr r3, [r7, #4] 8005f70: 631a str r2, [r3, #48] @ 0x30 8005f72: 687b ldr r3, [r7, #4] 8005f74: 681b ldr r3, [r3, #0] 8005f76: f043 0204 orr.w r2, r3, #4 8005f7a: 687b ldr r3, [r7, #4] 8005f7c: 601a str r2, [r3, #0] 8005f7e: 687b ldr r3, [r7, #4] 8005f80: 2201 movs r2, #1 8005f82: 615a str r2, [r3, #20] 8005f84: 687b ldr r3, [r7, #4] 8005f86: 68fa ldr r2, [r7, #12] 8005f88: 601a str r2, [r3, #0] 8005f8a: bf00 nop 8005f8c: 3714 adds r7, #20 8005f8e: 46bd mov sp, r7 8005f90: f85d 7b04 ldr.w r7, [sp], #4 8005f94: 4770 bx lr 8005f96: bf00 nop 8005f98: 40010000 .word 0x40010000 8005f9c: 40000400 .word 0x40000400 8005fa0: 40000800 .word 0x40000800 8005fa4: 40000c00 .word 0x40000c00 8005fa8: 40010400 .word 0x40010400 8005fac: 40014000 .word 0x40014000 8005fb0: 40014400 .word 0x40014400 8005fb4: 40014800 .word 0x40014800 8005fb8: 40001800 .word 0x40001800 8005fbc: 40001c00 .word 0x40001c00 8005fc0: 40002000 .word 0x40002000 08005fc4 : 8005fc4: b480 push {r7} 8005fc6: b087 sub sp, #28 8005fc8: af00 add r7, sp, #0 8005fca: 6078 str r0, [r7, #4] 8005fcc: 6039 str r1, [r7, #0] 8005fce: 687b ldr r3, [r7, #4] 8005fd0: 6a1b ldr r3, [r3, #32] 8005fd2: 617b str r3, [r7, #20] 8005fd4: 687b ldr r3, [r7, #4] 8005fd6: 6a1b ldr r3, [r3, #32] 8005fd8: f023 0201 bic.w r2, r3, #1 8005fdc: 687b ldr r3, [r7, #4] 8005fde: 621a str r2, [r3, #32] 8005fe0: 687b ldr r3, [r7, #4] 8005fe2: 685b ldr r3, [r3, #4] 8005fe4: 613b str r3, [r7, #16] 8005fe6: 687b ldr r3, [r7, #4] 8005fe8: 699b ldr r3, [r3, #24] 8005fea: 60fb str r3, [r7, #12] 8005fec: 68fb ldr r3, [r7, #12] 8005fee: f023 0370 bic.w r3, r3, #112 @ 0x70 8005ff2: 60fb str r3, [r7, #12] 8005ff4: 68fb ldr r3, [r7, #12] 8005ff6: f023 0303 bic.w r3, r3, #3 8005ffa: 60fb str r3, [r7, #12] 8005ffc: 683b ldr r3, [r7, #0] 8005ffe: 681b ldr r3, [r3, #0] 8006000: 68fa ldr r2, [r7, #12] 8006002: 4313 orrs r3, r2 8006004: 60fb str r3, [r7, #12] 8006006: 697b ldr r3, [r7, #20] 8006008: f023 0302 bic.w r3, r3, #2 800600c: 617b str r3, [r7, #20] 800600e: 683b ldr r3, [r7, #0] 8006010: 689b ldr r3, [r3, #8] 8006012: 697a ldr r2, [r7, #20] 8006014: 4313 orrs r3, r2 8006016: 617b str r3, [r7, #20] 8006018: 687b ldr r3, [r7, #4] 800601a: 4a20 ldr r2, [pc, #128] @ (800609c ) 800601c: 4293 cmp r3, r2 800601e: d003 beq.n 8006028 8006020: 687b ldr r3, [r7, #4] 8006022: 4a1f ldr r2, [pc, #124] @ (80060a0 ) 8006024: 4293 cmp r3, r2 8006026: d10c bne.n 8006042 8006028: 697b ldr r3, [r7, #20] 800602a: f023 0308 bic.w r3, r3, #8 800602e: 617b str r3, [r7, #20] 8006030: 683b ldr r3, [r7, #0] 8006032: 68db ldr r3, [r3, #12] 8006034: 697a ldr r2, [r7, #20] 8006036: 4313 orrs r3, r2 8006038: 617b str r3, [r7, #20] 800603a: 697b ldr r3, [r7, #20] 800603c: f023 0304 bic.w r3, r3, #4 8006040: 617b str r3, [r7, #20] 8006042: 687b ldr r3, [r7, #4] 8006044: 4a15 ldr r2, [pc, #84] @ (800609c ) 8006046: 4293 cmp r3, r2 8006048: d003 beq.n 8006052 800604a: 687b ldr r3, [r7, #4] 800604c: 4a14 ldr r2, [pc, #80] @ (80060a0 ) 800604e: 4293 cmp r3, r2 8006050: d111 bne.n 8006076 8006052: 693b ldr r3, [r7, #16] 8006054: f423 7380 bic.w r3, r3, #256 @ 0x100 8006058: 613b str r3, [r7, #16] 800605a: 693b ldr r3, [r7, #16] 800605c: f423 7300 bic.w r3, r3, #512 @ 0x200 8006060: 613b str r3, [r7, #16] 8006062: 683b ldr r3, [r7, #0] 8006064: 695b ldr r3, [r3, #20] 8006066: 693a ldr r2, [r7, #16] 8006068: 4313 orrs r3, r2 800606a: 613b str r3, [r7, #16] 800606c: 683b ldr r3, [r7, #0] 800606e: 699b ldr r3, [r3, #24] 8006070: 693a ldr r2, [r7, #16] 8006072: 4313 orrs r3, r2 8006074: 613b str r3, [r7, #16] 8006076: 687b ldr r3, [r7, #4] 8006078: 693a ldr r2, [r7, #16] 800607a: 605a str r2, [r3, #4] 800607c: 687b ldr r3, [r7, #4] 800607e: 68fa ldr r2, [r7, #12] 8006080: 619a str r2, [r3, #24] 8006082: 683b ldr r3, [r7, #0] 8006084: 685a ldr r2, [r3, #4] 8006086: 687b ldr r3, [r7, #4] 8006088: 635a str r2, [r3, #52] @ 0x34 800608a: 687b ldr r3, [r7, #4] 800608c: 697a ldr r2, [r7, #20] 800608e: 621a str r2, [r3, #32] 8006090: bf00 nop 8006092: 371c adds r7, #28 8006094: 46bd mov sp, r7 8006096: f85d 7b04 ldr.w r7, [sp], #4 800609a: 4770 bx lr 800609c: 40010000 .word 0x40010000 80060a0: 40010400 .word 0x40010400 080060a4 : 80060a4: b480 push {r7} 80060a6: b087 sub sp, #28 80060a8: af00 add r7, sp, #0 80060aa: 6078 str r0, [r7, #4] 80060ac: 6039 str r1, [r7, #0] 80060ae: 687b ldr r3, [r7, #4] 80060b0: 6a1b ldr r3, [r3, #32] 80060b2: 617b str r3, [r7, #20] 80060b4: 687b ldr r3, [r7, #4] 80060b6: 6a1b ldr r3, [r3, #32] 80060b8: f023 0210 bic.w r2, r3, #16 80060bc: 687b ldr r3, [r7, #4] 80060be: 621a str r2, [r3, #32] 80060c0: 687b ldr r3, [r7, #4] 80060c2: 685b ldr r3, [r3, #4] 80060c4: 613b str r3, [r7, #16] 80060c6: 687b ldr r3, [r7, #4] 80060c8: 699b ldr r3, [r3, #24] 80060ca: 60fb str r3, [r7, #12] 80060cc: 68fb ldr r3, [r7, #12] 80060ce: f423 43e0 bic.w r3, r3, #28672 @ 0x7000 80060d2: 60fb str r3, [r7, #12] 80060d4: 68fb ldr r3, [r7, #12] 80060d6: f423 7340 bic.w r3, r3, #768 @ 0x300 80060da: 60fb str r3, [r7, #12] 80060dc: 683b ldr r3, [r7, #0] 80060de: 681b ldr r3, [r3, #0] 80060e0: 021b lsls r3, r3, #8 80060e2: 68fa ldr r2, [r7, #12] 80060e4: 4313 orrs r3, r2 80060e6: 60fb str r3, [r7, #12] 80060e8: 697b ldr r3, [r7, #20] 80060ea: f023 0320 bic.w r3, r3, #32 80060ee: 617b str r3, [r7, #20] 80060f0: 683b ldr r3, [r7, #0] 80060f2: 689b ldr r3, [r3, #8] 80060f4: 011b lsls r3, r3, #4 80060f6: 697a ldr r2, [r7, #20] 80060f8: 4313 orrs r3, r2 80060fa: 617b str r3, [r7, #20] 80060fc: 687b ldr r3, [r7, #4] 80060fe: 4a22 ldr r2, [pc, #136] @ (8006188 ) 8006100: 4293 cmp r3, r2 8006102: d003 beq.n 800610c 8006104: 687b ldr r3, [r7, #4] 8006106: 4a21 ldr r2, [pc, #132] @ (800618c ) 8006108: 4293 cmp r3, r2 800610a: d10d bne.n 8006128 800610c: 697b ldr r3, [r7, #20] 800610e: f023 0380 bic.w r3, r3, #128 @ 0x80 8006112: 617b str r3, [r7, #20] 8006114: 683b ldr r3, [r7, #0] 8006116: 68db ldr r3, [r3, #12] 8006118: 011b lsls r3, r3, #4 800611a: 697a ldr r2, [r7, #20] 800611c: 4313 orrs r3, r2 800611e: 617b str r3, [r7, #20] 8006120: 697b ldr r3, [r7, #20] 8006122: f023 0340 bic.w r3, r3, #64 @ 0x40 8006126: 617b str r3, [r7, #20] 8006128: 687b ldr r3, [r7, #4] 800612a: 4a17 ldr r2, [pc, #92] @ (8006188 ) 800612c: 4293 cmp r3, r2 800612e: d003 beq.n 8006138 8006130: 687b ldr r3, [r7, #4] 8006132: 4a16 ldr r2, [pc, #88] @ (800618c ) 8006134: 4293 cmp r3, r2 8006136: d113 bne.n 8006160 8006138: 693b ldr r3, [r7, #16] 800613a: f423 6380 bic.w r3, r3, #1024 @ 0x400 800613e: 613b str r3, [r7, #16] 8006140: 693b ldr r3, [r7, #16] 8006142: f423 6300 bic.w r3, r3, #2048 @ 0x800 8006146: 613b str r3, [r7, #16] 8006148: 683b ldr r3, [r7, #0] 800614a: 695b ldr r3, [r3, #20] 800614c: 009b lsls r3, r3, #2 800614e: 693a ldr r2, [r7, #16] 8006150: 4313 orrs r3, r2 8006152: 613b str r3, [r7, #16] 8006154: 683b ldr r3, [r7, #0] 8006156: 699b ldr r3, [r3, #24] 8006158: 009b lsls r3, r3, #2 800615a: 693a ldr r2, [r7, #16] 800615c: 4313 orrs r3, r2 800615e: 613b str r3, [r7, #16] 8006160: 687b ldr r3, [r7, #4] 8006162: 693a ldr r2, [r7, #16] 8006164: 605a str r2, [r3, #4] 8006166: 687b ldr r3, [r7, #4] 8006168: 68fa ldr r2, [r7, #12] 800616a: 619a str r2, [r3, #24] 800616c: 683b ldr r3, [r7, #0] 800616e: 685a ldr r2, [r3, #4] 8006170: 687b ldr r3, [r7, #4] 8006172: 639a str r2, [r3, #56] @ 0x38 8006174: 687b ldr r3, [r7, #4] 8006176: 697a ldr r2, [r7, #20] 8006178: 621a str r2, [r3, #32] 800617a: bf00 nop 800617c: 371c adds r7, #28 800617e: 46bd mov sp, r7 8006180: f85d 7b04 ldr.w r7, [sp], #4 8006184: 4770 bx lr 8006186: bf00 nop 8006188: 40010000 .word 0x40010000 800618c: 40010400 .word 0x40010400 08006190 : 8006190: b480 push {r7} 8006192: b087 sub sp, #28 8006194: af00 add r7, sp, #0 8006196: 6078 str r0, [r7, #4] 8006198: 6039 str r1, [r7, #0] 800619a: 687b ldr r3, [r7, #4] 800619c: 6a1b ldr r3, [r3, #32] 800619e: 617b str r3, [r7, #20] 80061a0: 687b ldr r3, [r7, #4] 80061a2: 6a1b ldr r3, [r3, #32] 80061a4: f423 7280 bic.w r2, r3, #256 @ 0x100 80061a8: 687b ldr r3, [r7, #4] 80061aa: 621a str r2, [r3, #32] 80061ac: 687b ldr r3, [r7, #4] 80061ae: 685b ldr r3, [r3, #4] 80061b0: 613b str r3, [r7, #16] 80061b2: 687b ldr r3, [r7, #4] 80061b4: 69db ldr r3, [r3, #28] 80061b6: 60fb str r3, [r7, #12] 80061b8: 68fb ldr r3, [r7, #12] 80061ba: f023 0370 bic.w r3, r3, #112 @ 0x70 80061be: 60fb str r3, [r7, #12] 80061c0: 68fb ldr r3, [r7, #12] 80061c2: f023 0303 bic.w r3, r3, #3 80061c6: 60fb str r3, [r7, #12] 80061c8: 683b ldr r3, [r7, #0] 80061ca: 681b ldr r3, [r3, #0] 80061cc: 68fa ldr r2, [r7, #12] 80061ce: 4313 orrs r3, r2 80061d0: 60fb str r3, [r7, #12] 80061d2: 697b ldr r3, [r7, #20] 80061d4: f423 7300 bic.w r3, r3, #512 @ 0x200 80061d8: 617b str r3, [r7, #20] 80061da: 683b ldr r3, [r7, #0] 80061dc: 689b ldr r3, [r3, #8] 80061de: 021b lsls r3, r3, #8 80061e0: 697a ldr r2, [r7, #20] 80061e2: 4313 orrs r3, r2 80061e4: 617b str r3, [r7, #20] 80061e6: 687b ldr r3, [r7, #4] 80061e8: 4a21 ldr r2, [pc, #132] @ (8006270 ) 80061ea: 4293 cmp r3, r2 80061ec: d003 beq.n 80061f6 80061ee: 687b ldr r3, [r7, #4] 80061f0: 4a20 ldr r2, [pc, #128] @ (8006274 ) 80061f2: 4293 cmp r3, r2 80061f4: d10d bne.n 8006212 80061f6: 697b ldr r3, [r7, #20] 80061f8: f423 6300 bic.w r3, r3, #2048 @ 0x800 80061fc: 617b str r3, [r7, #20] 80061fe: 683b ldr r3, [r7, #0] 8006200: 68db ldr r3, [r3, #12] 8006202: 021b lsls r3, r3, #8 8006204: 697a ldr r2, [r7, #20] 8006206: 4313 orrs r3, r2 8006208: 617b str r3, [r7, #20] 800620a: 697b ldr r3, [r7, #20] 800620c: f423 6380 bic.w r3, r3, #1024 @ 0x400 8006210: 617b str r3, [r7, #20] 8006212: 687b ldr r3, [r7, #4] 8006214: 4a16 ldr r2, [pc, #88] @ (8006270 ) 8006216: 4293 cmp r3, r2 8006218: d003 beq.n 8006222 800621a: 687b ldr r3, [r7, #4] 800621c: 4a15 ldr r2, [pc, #84] @ (8006274 ) 800621e: 4293 cmp r3, r2 8006220: d113 bne.n 800624a 8006222: 693b ldr r3, [r7, #16] 8006224: f423 5380 bic.w r3, r3, #4096 @ 0x1000 8006228: 613b str r3, [r7, #16] 800622a: 693b ldr r3, [r7, #16] 800622c: f423 5300 bic.w r3, r3, #8192 @ 0x2000 8006230: 613b str r3, [r7, #16] 8006232: 683b ldr r3, [r7, #0] 8006234: 695b ldr r3, [r3, #20] 8006236: 011b lsls r3, r3, #4 8006238: 693a ldr r2, [r7, #16] 800623a: 4313 orrs r3, r2 800623c: 613b str r3, [r7, #16] 800623e: 683b ldr r3, [r7, #0] 8006240: 699b ldr r3, [r3, #24] 8006242: 011b lsls r3, r3, #4 8006244: 693a ldr r2, [r7, #16] 8006246: 4313 orrs r3, r2 8006248: 613b str r3, [r7, #16] 800624a: 687b ldr r3, [r7, #4] 800624c: 693a ldr r2, [r7, #16] 800624e: 605a str r2, [r3, #4] 8006250: 687b ldr r3, [r7, #4] 8006252: 68fa ldr r2, [r7, #12] 8006254: 61da str r2, [r3, #28] 8006256: 683b ldr r3, [r7, #0] 8006258: 685a ldr r2, [r3, #4] 800625a: 687b ldr r3, [r7, #4] 800625c: 63da str r2, [r3, #60] @ 0x3c 800625e: 687b ldr r3, [r7, #4] 8006260: 697a ldr r2, [r7, #20] 8006262: 621a str r2, [r3, #32] 8006264: bf00 nop 8006266: 371c adds r7, #28 8006268: 46bd mov sp, r7 800626a: f85d 7b04 ldr.w r7, [sp], #4 800626e: 4770 bx lr 8006270: 40010000 .word 0x40010000 8006274: 40010400 .word 0x40010400 08006278 : 8006278: b480 push {r7} 800627a: b087 sub sp, #28 800627c: af00 add r7, sp, #0 800627e: 6078 str r0, [r7, #4] 8006280: 6039 str r1, [r7, #0] 8006282: 687b ldr r3, [r7, #4] 8006284: 6a1b ldr r3, [r3, #32] 8006286: 613b str r3, [r7, #16] 8006288: 687b ldr r3, [r7, #4] 800628a: 6a1b ldr r3, [r3, #32] 800628c: f423 5280 bic.w r2, r3, #4096 @ 0x1000 8006290: 687b ldr r3, [r7, #4] 8006292: 621a str r2, [r3, #32] 8006294: 687b ldr r3, [r7, #4] 8006296: 685b ldr r3, [r3, #4] 8006298: 617b str r3, [r7, #20] 800629a: 687b ldr r3, [r7, #4] 800629c: 69db ldr r3, [r3, #28] 800629e: 60fb str r3, [r7, #12] 80062a0: 68fb ldr r3, [r7, #12] 80062a2: f423 43e0 bic.w r3, r3, #28672 @ 0x7000 80062a6: 60fb str r3, [r7, #12] 80062a8: 68fb ldr r3, [r7, #12] 80062aa: f423 7340 bic.w r3, r3, #768 @ 0x300 80062ae: 60fb str r3, [r7, #12] 80062b0: 683b ldr r3, [r7, #0] 80062b2: 681b ldr r3, [r3, #0] 80062b4: 021b lsls r3, r3, #8 80062b6: 68fa ldr r2, [r7, #12] 80062b8: 4313 orrs r3, r2 80062ba: 60fb str r3, [r7, #12] 80062bc: 693b ldr r3, [r7, #16] 80062be: f423 5300 bic.w r3, r3, #8192 @ 0x2000 80062c2: 613b str r3, [r7, #16] 80062c4: 683b ldr r3, [r7, #0] 80062c6: 689b ldr r3, [r3, #8] 80062c8: 031b lsls r3, r3, #12 80062ca: 693a ldr r2, [r7, #16] 80062cc: 4313 orrs r3, r2 80062ce: 613b str r3, [r7, #16] 80062d0: 687b ldr r3, [r7, #4] 80062d2: 4a12 ldr r2, [pc, #72] @ (800631c ) 80062d4: 4293 cmp r3, r2 80062d6: d003 beq.n 80062e0 80062d8: 687b ldr r3, [r7, #4] 80062da: 4a11 ldr r2, [pc, #68] @ (8006320 ) 80062dc: 4293 cmp r3, r2 80062de: d109 bne.n 80062f4 80062e0: 697b ldr r3, [r7, #20] 80062e2: f423 4380 bic.w r3, r3, #16384 @ 0x4000 80062e6: 617b str r3, [r7, #20] 80062e8: 683b ldr r3, [r7, #0] 80062ea: 695b ldr r3, [r3, #20] 80062ec: 019b lsls r3, r3, #6 80062ee: 697a ldr r2, [r7, #20] 80062f0: 4313 orrs r3, r2 80062f2: 617b str r3, [r7, #20] 80062f4: 687b ldr r3, [r7, #4] 80062f6: 697a ldr r2, [r7, #20] 80062f8: 605a str r2, [r3, #4] 80062fa: 687b ldr r3, [r7, #4] 80062fc: 68fa ldr r2, [r7, #12] 80062fe: 61da str r2, [r3, #28] 8006300: 683b ldr r3, [r7, #0] 8006302: 685a ldr r2, [r3, #4] 8006304: 687b ldr r3, [r7, #4] 8006306: 641a str r2, [r3, #64] @ 0x40 8006308: 687b ldr r3, [r7, #4] 800630a: 693a ldr r2, [r7, #16] 800630c: 621a str r2, [r3, #32] 800630e: bf00 nop 8006310: 371c adds r7, #28 8006312: 46bd mov sp, r7 8006314: f85d 7b04 ldr.w r7, [sp], #4 8006318: 4770 bx lr 800631a: bf00 nop 800631c: 40010000 .word 0x40010000 8006320: 40010400 .word 0x40010400 08006324 : 8006324: b480 push {r7} 8006326: b087 sub sp, #28 8006328: af00 add r7, sp, #0 800632a: 60f8 str r0, [r7, #12] 800632c: 60b9 str r1, [r7, #8] 800632e: 607a str r2, [r7, #4] 8006330: 68bb ldr r3, [r7, #8] 8006332: f003 031f and.w r3, r3, #31 8006336: 2201 movs r2, #1 8006338: fa02 f303 lsl.w r3, r2, r3 800633c: 617b str r3, [r7, #20] 800633e: 68fb ldr r3, [r7, #12] 8006340: 6a1a ldr r2, [r3, #32] 8006342: 697b ldr r3, [r7, #20] 8006344: 43db mvns r3, r3 8006346: 401a ands r2, r3 8006348: 68fb ldr r3, [r7, #12] 800634a: 621a str r2, [r3, #32] 800634c: 68fb ldr r3, [r7, #12] 800634e: 6a1a ldr r2, [r3, #32] 8006350: 68bb ldr r3, [r7, #8] 8006352: f003 031f and.w r3, r3, #31 8006356: 6879 ldr r1, [r7, #4] 8006358: fa01 f303 lsl.w r3, r1, r3 800635c: 431a orrs r2, r3 800635e: 68fb ldr r3, [r7, #12] 8006360: 621a str r2, [r3, #32] 8006362: bf00 nop 8006364: 371c adds r7, #28 8006366: 46bd mov sp, r7 8006368: f85d 7b04 ldr.w r7, [sp], #4 800636c: 4770 bx lr ... 08006370 : 8006370: b480 push {r7} 8006372: b085 sub sp, #20 8006374: af00 add r7, sp, #0 8006376: 6078 str r0, [r7, #4] 8006378: 6039 str r1, [r7, #0] 800637a: 687b ldr r3, [r7, #4] 800637c: f893 303c ldrb.w r3, [r3, #60] @ 0x3c 8006380: 2b01 cmp r3, #1 8006382: d101 bne.n 8006388 8006384: 2302 movs r3, #2 8006386: e05a b.n 800643e 8006388: 687b ldr r3, [r7, #4] 800638a: 2201 movs r2, #1 800638c: f883 203c strb.w r2, [r3, #60] @ 0x3c 8006390: 687b ldr r3, [r7, #4] 8006392: 2202 movs r2, #2 8006394: f883 203d strb.w r2, [r3, #61] @ 0x3d 8006398: 687b ldr r3, [r7, #4] 800639a: 681b ldr r3, [r3, #0] 800639c: 685b ldr r3, [r3, #4] 800639e: 60fb str r3, [r7, #12] 80063a0: 687b ldr r3, [r7, #4] 80063a2: 681b ldr r3, [r3, #0] 80063a4: 689b ldr r3, [r3, #8] 80063a6: 60bb str r3, [r7, #8] 80063a8: 68fb ldr r3, [r7, #12] 80063aa: f023 0370 bic.w r3, r3, #112 @ 0x70 80063ae: 60fb str r3, [r7, #12] 80063b0: 683b ldr r3, [r7, #0] 80063b2: 681b ldr r3, [r3, #0] 80063b4: 68fa ldr r2, [r7, #12] 80063b6: 4313 orrs r3, r2 80063b8: 60fb str r3, [r7, #12] 80063ba: 687b ldr r3, [r7, #4] 80063bc: 681b ldr r3, [r3, #0] 80063be: 68fa ldr r2, [r7, #12] 80063c0: 605a str r2, [r3, #4] 80063c2: 687b ldr r3, [r7, #4] 80063c4: 681b ldr r3, [r3, #0] 80063c6: 4a21 ldr r2, [pc, #132] @ (800644c ) 80063c8: 4293 cmp r3, r2 80063ca: d022 beq.n 8006412 80063cc: 687b ldr r3, [r7, #4] 80063ce: 681b ldr r3, [r3, #0] 80063d0: f1b3 4f80 cmp.w r3, #1073741824 @ 0x40000000 80063d4: d01d beq.n 8006412 80063d6: 687b ldr r3, [r7, #4] 80063d8: 681b ldr r3, [r3, #0] 80063da: 4a1d ldr r2, [pc, #116] @ (8006450 ) 80063dc: 4293 cmp r3, r2 80063de: d018 beq.n 8006412 80063e0: 687b ldr r3, [r7, #4] 80063e2: 681b ldr r3, [r3, #0] 80063e4: 4a1b ldr r2, [pc, #108] @ (8006454 ) 80063e6: 4293 cmp r3, r2 80063e8: d013 beq.n 8006412 80063ea: 687b ldr r3, [r7, #4] 80063ec: 681b ldr r3, [r3, #0] 80063ee: 4a1a ldr r2, [pc, #104] @ (8006458 ) 80063f0: 4293 cmp r3, r2 80063f2: d00e beq.n 8006412 80063f4: 687b ldr r3, [r7, #4] 80063f6: 681b ldr r3, [r3, #0] 80063f8: 4a18 ldr r2, [pc, #96] @ (800645c ) 80063fa: 4293 cmp r3, r2 80063fc: d009 beq.n 8006412 80063fe: 687b ldr r3, [r7, #4] 8006400: 681b ldr r3, [r3, #0] 8006402: 4a17 ldr r2, [pc, #92] @ (8006460 ) 8006404: 4293 cmp r3, r2 8006406: d004 beq.n 8006412 8006408: 687b ldr r3, [r7, #4] 800640a: 681b ldr r3, [r3, #0] 800640c: 4a15 ldr r2, [pc, #84] @ (8006464 ) 800640e: 4293 cmp r3, r2 8006410: d10c bne.n 800642c 8006412: 68bb ldr r3, [r7, #8] 8006414: f023 0380 bic.w r3, r3, #128 @ 0x80 8006418: 60bb str r3, [r7, #8] 800641a: 683b ldr r3, [r7, #0] 800641c: 685b ldr r3, [r3, #4] 800641e: 68ba ldr r2, [r7, #8] 8006420: 4313 orrs r3, r2 8006422: 60bb str r3, [r7, #8] 8006424: 687b ldr r3, [r7, #4] 8006426: 681b ldr r3, [r3, #0] 8006428: 68ba ldr r2, [r7, #8] 800642a: 609a str r2, [r3, #8] 800642c: 687b ldr r3, [r7, #4] 800642e: 2201 movs r2, #1 8006430: f883 203d strb.w r2, [r3, #61] @ 0x3d 8006434: 687b ldr r3, [r7, #4] 8006436: 2200 movs r2, #0 8006438: f883 203c strb.w r2, [r3, #60] @ 0x3c 800643c: 2300 movs r3, #0 800643e: 4618 mov r0, r3 8006440: 3714 adds r7, #20 8006442: 46bd mov sp, r7 8006444: f85d 7b04 ldr.w r7, [sp], #4 8006448: 4770 bx lr 800644a: bf00 nop 800644c: 40010000 .word 0x40010000 8006450: 40000400 .word 0x40000400 8006454: 40000800 .word 0x40000800 8006458: 40000c00 .word 0x40000c00 800645c: 40010400 .word 0x40010400 8006460: 40014000 .word 0x40014000 8006464: 40001800 .word 0x40001800 08006468 : 8006468: b580 push {r7, lr} 800646a: b082 sub sp, #8 800646c: af00 add r7, sp, #0 800646e: 6078 str r0, [r7, #4] 8006470: 687b ldr r3, [r7, #4] 8006472: 2b00 cmp r3, #0 8006474: d101 bne.n 800647a 8006476: 2301 movs r3, #1 8006478: e042 b.n 8006500 800647a: 687b ldr r3, [r7, #4] 800647c: f893 3041 ldrb.w r3, [r3, #65] @ 0x41 8006480: b2db uxtb r3, r3 8006482: 2b00 cmp r3, #0 8006484: d106 bne.n 8006494 8006486: 687b ldr r3, [r7, #4] 8006488: 2200 movs r2, #0 800648a: f883 2040 strb.w r2, [r3, #64] @ 0x40 800648e: 6878 ldr r0, [r7, #4] 8006490: f7fb f9f8 bl 8001884 8006494: 687b ldr r3, [r7, #4] 8006496: 2224 movs r2, #36 @ 0x24 8006498: f883 2041 strb.w r2, [r3, #65] @ 0x41 800649c: 687b ldr r3, [r7, #4] 800649e: 681b ldr r3, [r3, #0] 80064a0: 68da ldr r2, [r3, #12] 80064a2: 687b ldr r3, [r7, #4] 80064a4: 681b ldr r3, [r3, #0] 80064a6: f422 5200 bic.w r2, r2, #8192 @ 0x2000 80064aa: 60da str r2, [r3, #12] 80064ac: 6878 ldr r0, [r7, #4] 80064ae: f000 ff63 bl 8007378 80064b2: 687b ldr r3, [r7, #4] 80064b4: 681b ldr r3, [r3, #0] 80064b6: 691a ldr r2, [r3, #16] 80064b8: 687b ldr r3, [r7, #4] 80064ba: 681b ldr r3, [r3, #0] 80064bc: f422 4290 bic.w r2, r2, #18432 @ 0x4800 80064c0: 611a str r2, [r3, #16] 80064c2: 687b ldr r3, [r7, #4] 80064c4: 681b ldr r3, [r3, #0] 80064c6: 695a ldr r2, [r3, #20] 80064c8: 687b ldr r3, [r7, #4] 80064ca: 681b ldr r3, [r3, #0] 80064cc: f022 022a bic.w r2, r2, #42 @ 0x2a 80064d0: 615a str r2, [r3, #20] 80064d2: 687b ldr r3, [r7, #4] 80064d4: 681b ldr r3, [r3, #0] 80064d6: 68da ldr r2, [r3, #12] 80064d8: 687b ldr r3, [r7, #4] 80064da: 681b ldr r3, [r3, #0] 80064dc: f442 5200 orr.w r2, r2, #8192 @ 0x2000 80064e0: 60da str r2, [r3, #12] 80064e2: 687b ldr r3, [r7, #4] 80064e4: 2200 movs r2, #0 80064e6: 645a str r2, [r3, #68] @ 0x44 80064e8: 687b ldr r3, [r7, #4] 80064ea: 2220 movs r2, #32 80064ec: f883 2041 strb.w r2, [r3, #65] @ 0x41 80064f0: 687b ldr r3, [r7, #4] 80064f2: 2220 movs r2, #32 80064f4: f883 2042 strb.w r2, [r3, #66] @ 0x42 80064f8: 687b ldr r3, [r7, #4] 80064fa: 2200 movs r2, #0 80064fc: 635a str r2, [r3, #52] @ 0x34 80064fe: 2300 movs r3, #0 8006500: 4618 mov r0, r3 8006502: 3708 adds r7, #8 8006504: 46bd mov sp, r7 8006506: bd80 pop {r7, pc} 08006508 : 8006508: b580 push {r7, lr} 800650a: b08c sub sp, #48 @ 0x30 800650c: af00 add r7, sp, #0 800650e: 60f8 str r0, [r7, #12] 8006510: 60b9 str r1, [r7, #8] 8006512: 4613 mov r3, r2 8006514: 80fb strh r3, [r7, #6] 8006516: 68fb ldr r3, [r7, #12] 8006518: f893 3041 ldrb.w r3, [r3, #65] @ 0x41 800651c: b2db uxtb r3, r3 800651e: 2b20 cmp r3, #32 8006520: d162 bne.n 80065e8 8006522: 68bb ldr r3, [r7, #8] 8006524: 2b00 cmp r3, #0 8006526: d002 beq.n 800652e 8006528: 88fb ldrh r3, [r7, #6] 800652a: 2b00 cmp r3, #0 800652c: d101 bne.n 8006532 800652e: 2301 movs r3, #1 8006530: e05b b.n 80065ea 8006532: 68ba ldr r2, [r7, #8] 8006534: 68fb ldr r3, [r7, #12] 8006536: 621a str r2, [r3, #32] 8006538: 68fb ldr r3, [r7, #12] 800653a: 88fa ldrh r2, [r7, #6] 800653c: 849a strh r2, [r3, #36] @ 0x24 800653e: 68fb ldr r3, [r7, #12] 8006540: 88fa ldrh r2, [r7, #6] 8006542: 84da strh r2, [r3, #38] @ 0x26 8006544: 68fb ldr r3, [r7, #12] 8006546: 2200 movs r2, #0 8006548: 645a str r2, [r3, #68] @ 0x44 800654a: 68fb ldr r3, [r7, #12] 800654c: 2221 movs r2, #33 @ 0x21 800654e: f883 2041 strb.w r2, [r3, #65] @ 0x41 8006552: 68fb ldr r3, [r7, #12] 8006554: 6b9b ldr r3, [r3, #56] @ 0x38 8006556: 4a27 ldr r2, [pc, #156] @ (80065f4 ) 8006558: 63da str r2, [r3, #60] @ 0x3c 800655a: 68fb ldr r3, [r7, #12] 800655c: 6b9b ldr r3, [r3, #56] @ 0x38 800655e: 4a26 ldr r2, [pc, #152] @ (80065f8 ) 8006560: 641a str r2, [r3, #64] @ 0x40 8006562: 68fb ldr r3, [r7, #12] 8006564: 6b9b ldr r3, [r3, #56] @ 0x38 8006566: 4a25 ldr r2, [pc, #148] @ (80065fc ) 8006568: 64da str r2, [r3, #76] @ 0x4c 800656a: 68fb ldr r3, [r7, #12] 800656c: 6b9b ldr r3, [r3, #56] @ 0x38 800656e: 2200 movs r2, #0 8006570: 651a str r2, [r3, #80] @ 0x50 8006572: f107 0308 add.w r3, r7, #8 8006576: 62fb str r3, [r7, #44] @ 0x2c 8006578: 68fb ldr r3, [r7, #12] 800657a: 6b98 ldr r0, [r3, #56] @ 0x38 800657c: 6afb ldr r3, [r7, #44] @ 0x2c 800657e: 6819 ldr r1, [r3, #0] 8006580: 68fb ldr r3, [r7, #12] 8006582: 681b ldr r3, [r3, #0] 8006584: 3304 adds r3, #4 8006586: 461a mov r2, r3 8006588: 88fb ldrh r3, [r7, #6] 800658a: f7fb febd bl 8002308 800658e: 4603 mov r3, r0 8006590: 2b00 cmp r3, #0 8006592: d008 beq.n 80065a6 8006594: 68fb ldr r3, [r7, #12] 8006596: 2210 movs r2, #16 8006598: 645a str r2, [r3, #68] @ 0x44 800659a: 68fb ldr r3, [r7, #12] 800659c: 2220 movs r2, #32 800659e: f883 2041 strb.w r2, [r3, #65] @ 0x41 80065a2: 2301 movs r3, #1 80065a4: e021 b.n 80065ea 80065a6: 68fb ldr r3, [r7, #12] 80065a8: 681b ldr r3, [r3, #0] 80065aa: f06f 0240 mvn.w r2, #64 @ 0x40 80065ae: 601a str r2, [r3, #0] 80065b0: 68fb ldr r3, [r7, #12] 80065b2: 681b ldr r3, [r3, #0] 80065b4: 3314 adds r3, #20 80065b6: 61bb str r3, [r7, #24] 80065b8: 69bb ldr r3, [r7, #24] 80065ba: e853 3f00 ldrex r3, [r3] 80065be: 617b str r3, [r7, #20] 80065c0: 697b ldr r3, [r7, #20] 80065c2: f043 0380 orr.w r3, r3, #128 @ 0x80 80065c6: 62bb str r3, [r7, #40] @ 0x28 80065c8: 68fb ldr r3, [r7, #12] 80065ca: 681b ldr r3, [r3, #0] 80065cc: 3314 adds r3, #20 80065ce: 6aba ldr r2, [r7, #40] @ 0x28 80065d0: 627a str r2, [r7, #36] @ 0x24 80065d2: 623b str r3, [r7, #32] 80065d4: 6a39 ldr r1, [r7, #32] 80065d6: 6a7a ldr r2, [r7, #36] @ 0x24 80065d8: e841 2300 strex r3, r2, [r1] 80065dc: 61fb str r3, [r7, #28] 80065de: 69fb ldr r3, [r7, #28] 80065e0: 2b00 cmp r3, #0 80065e2: d1e5 bne.n 80065b0 80065e4: 2300 movs r3, #0 80065e6: e000 b.n 80065ea 80065e8: 2302 movs r3, #2 80065ea: 4618 mov r0, r3 80065ec: 3730 adds r7, #48 @ 0x30 80065ee: 46bd mov sp, r7 80065f0: bd80 pop {r7, pc} 80065f2: bf00 nop 80065f4: 08006bf5 .word 0x08006bf5 80065f8: 08006c8f .word 0x08006c8f 80065fc: 08006e13 .word 0x08006e13 08006600 : 8006600: b580 push {r7, lr} 8006602: b084 sub sp, #16 8006604: af00 add r7, sp, #0 8006606: 60f8 str r0, [r7, #12] 8006608: 60b9 str r1, [r7, #8] 800660a: 4613 mov r3, r2 800660c: 80fb strh r3, [r7, #6] 800660e: 68fb ldr r3, [r7, #12] 8006610: f893 3042 ldrb.w r3, [r3, #66] @ 0x42 8006614: b2db uxtb r3, r3 8006616: 2b20 cmp r3, #32 8006618: d112 bne.n 8006640 800661a: 68bb ldr r3, [r7, #8] 800661c: 2b00 cmp r3, #0 800661e: d002 beq.n 8006626 8006620: 88fb ldrh r3, [r7, #6] 8006622: 2b00 cmp r3, #0 8006624: d101 bne.n 800662a 8006626: 2301 movs r3, #1 8006628: e00b b.n 8006642 800662a: 68fb ldr r3, [r7, #12] 800662c: 2200 movs r2, #0 800662e: 631a str r2, [r3, #48] @ 0x30 8006630: 88fb ldrh r3, [r7, #6] 8006632: 461a mov r2, r3 8006634: 68b9 ldr r1, [r7, #8] 8006636: 68f8 ldr r0, [r7, #12] 8006638: f000 fc36 bl 8006ea8 800663c: 4603 mov r3, r0 800663e: e000 b.n 8006642 8006640: 2302 movs r3, #2 8006642: 4618 mov r0, r3 8006644: 3710 adds r7, #16 8006646: 46bd mov sp, r7 8006648: bd80 pop {r7, pc} ... 0800664c : 800664c: b580 push {r7, lr} 800664e: b0ba sub sp, #232 @ 0xe8 8006650: af00 add r7, sp, #0 8006652: 6078 str r0, [r7, #4] 8006654: 687b ldr r3, [r7, #4] 8006656: 681b ldr r3, [r3, #0] 8006658: 681b ldr r3, [r3, #0] 800665a: f8c7 30e4 str.w r3, [r7, #228] @ 0xe4 800665e: 687b ldr r3, [r7, #4] 8006660: 681b ldr r3, [r3, #0] 8006662: 68db ldr r3, [r3, #12] 8006664: f8c7 30e0 str.w r3, [r7, #224] @ 0xe0 8006668: 687b ldr r3, [r7, #4] 800666a: 681b ldr r3, [r3, #0] 800666c: 695b ldr r3, [r3, #20] 800666e: f8c7 30dc str.w r3, [r7, #220] @ 0xdc 8006672: 2300 movs r3, #0 8006674: f8c7 30d8 str.w r3, [r7, #216] @ 0xd8 8006678: 2300 movs r3, #0 800667a: f8c7 30d4 str.w r3, [r7, #212] @ 0xd4 800667e: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006682: f003 030f and.w r3, r3, #15 8006686: f8c7 30d8 str.w r3, [r7, #216] @ 0xd8 800668a: f8d7 30d8 ldr.w r3, [r7, #216] @ 0xd8 800668e: 2b00 cmp r3, #0 8006690: d10f bne.n 80066b2 8006692: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006696: f003 0320 and.w r3, r3, #32 800669a: 2b00 cmp r3, #0 800669c: d009 beq.n 80066b2 800669e: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 80066a2: f003 0320 and.w r3, r3, #32 80066a6: 2b00 cmp r3, #0 80066a8: d003 beq.n 80066b2 80066aa: 6878 ldr r0, [r7, #4] 80066ac: f000 fda6 bl 80071fc 80066b0: e273 b.n 8006b9a 80066b2: f8d7 30d8 ldr.w r3, [r7, #216] @ 0xd8 80066b6: 2b00 cmp r3, #0 80066b8: f000 80de beq.w 8006878 80066bc: f8d7 30dc ldr.w r3, [r7, #220] @ 0xdc 80066c0: f003 0301 and.w r3, r3, #1 80066c4: 2b00 cmp r3, #0 80066c6: d106 bne.n 80066d6 80066c8: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 80066cc: f403 7390 and.w r3, r3, #288 @ 0x120 80066d0: 2b00 cmp r3, #0 80066d2: f000 80d1 beq.w 8006878 80066d6: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 80066da: f003 0301 and.w r3, r3, #1 80066de: 2b00 cmp r3, #0 80066e0: d00b beq.n 80066fa 80066e2: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 80066e6: f403 7380 and.w r3, r3, #256 @ 0x100 80066ea: 2b00 cmp r3, #0 80066ec: d005 beq.n 80066fa 80066ee: 687b ldr r3, [r7, #4] 80066f0: 6c5b ldr r3, [r3, #68] @ 0x44 80066f2: f043 0201 orr.w r2, r3, #1 80066f6: 687b ldr r3, [r7, #4] 80066f8: 645a str r2, [r3, #68] @ 0x44 80066fa: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 80066fe: f003 0304 and.w r3, r3, #4 8006702: 2b00 cmp r3, #0 8006704: d00b beq.n 800671e 8006706: f8d7 30dc ldr.w r3, [r7, #220] @ 0xdc 800670a: f003 0301 and.w r3, r3, #1 800670e: 2b00 cmp r3, #0 8006710: d005 beq.n 800671e 8006712: 687b ldr r3, [r7, #4] 8006714: 6c5b ldr r3, [r3, #68] @ 0x44 8006716: f043 0202 orr.w r2, r3, #2 800671a: 687b ldr r3, [r7, #4] 800671c: 645a str r2, [r3, #68] @ 0x44 800671e: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006722: f003 0302 and.w r3, r3, #2 8006726: 2b00 cmp r3, #0 8006728: d00b beq.n 8006742 800672a: f8d7 30dc ldr.w r3, [r7, #220] @ 0xdc 800672e: f003 0301 and.w r3, r3, #1 8006732: 2b00 cmp r3, #0 8006734: d005 beq.n 8006742 8006736: 687b ldr r3, [r7, #4] 8006738: 6c5b ldr r3, [r3, #68] @ 0x44 800673a: f043 0204 orr.w r2, r3, #4 800673e: 687b ldr r3, [r7, #4] 8006740: 645a str r2, [r3, #68] @ 0x44 8006742: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006746: f003 0308 and.w r3, r3, #8 800674a: 2b00 cmp r3, #0 800674c: d011 beq.n 8006772 800674e: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 8006752: f003 0320 and.w r3, r3, #32 8006756: 2b00 cmp r3, #0 8006758: d105 bne.n 8006766 800675a: f8d7 30dc ldr.w r3, [r7, #220] @ 0xdc 800675e: f003 0301 and.w r3, r3, #1 8006762: 2b00 cmp r3, #0 8006764: d005 beq.n 8006772 8006766: 687b ldr r3, [r7, #4] 8006768: 6c5b ldr r3, [r3, #68] @ 0x44 800676a: f043 0208 orr.w r2, r3, #8 800676e: 687b ldr r3, [r7, #4] 8006770: 645a str r2, [r3, #68] @ 0x44 8006772: 687b ldr r3, [r7, #4] 8006774: 6c5b ldr r3, [r3, #68] @ 0x44 8006776: 2b00 cmp r3, #0 8006778: f000 820a beq.w 8006b90 800677c: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006780: f003 0320 and.w r3, r3, #32 8006784: 2b00 cmp r3, #0 8006786: d008 beq.n 800679a 8006788: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 800678c: f003 0320 and.w r3, r3, #32 8006790: 2b00 cmp r3, #0 8006792: d002 beq.n 800679a 8006794: 6878 ldr r0, [r7, #4] 8006796: f000 fd31 bl 80071fc 800679a: 687b ldr r3, [r7, #4] 800679c: 681b ldr r3, [r3, #0] 800679e: 695b ldr r3, [r3, #20] 80067a0: f003 0340 and.w r3, r3, #64 @ 0x40 80067a4: 2b40 cmp r3, #64 @ 0x40 80067a6: bf0c ite eq 80067a8: 2301 moveq r3, #1 80067aa: 2300 movne r3, #0 80067ac: b2db uxtb r3, r3 80067ae: f8c7 30d4 str.w r3, [r7, #212] @ 0xd4 80067b2: 687b ldr r3, [r7, #4] 80067b4: 6c5b ldr r3, [r3, #68] @ 0x44 80067b6: f003 0308 and.w r3, r3, #8 80067ba: 2b00 cmp r3, #0 80067bc: d103 bne.n 80067c6 80067be: f8d7 30d4 ldr.w r3, [r7, #212] @ 0xd4 80067c2: 2b00 cmp r3, #0 80067c4: d04f beq.n 8006866 80067c6: 6878 ldr r0, [r7, #4] 80067c8: f000 fc3c bl 8007044 80067cc: 687b ldr r3, [r7, #4] 80067ce: 681b ldr r3, [r3, #0] 80067d0: 695b ldr r3, [r3, #20] 80067d2: f003 0340 and.w r3, r3, #64 @ 0x40 80067d6: 2b40 cmp r3, #64 @ 0x40 80067d8: d141 bne.n 800685e 80067da: 687b ldr r3, [r7, #4] 80067dc: 681b ldr r3, [r3, #0] 80067de: 3314 adds r3, #20 80067e0: f8c7 309c str.w r3, [r7, #156] @ 0x9c 80067e4: f8d7 309c ldr.w r3, [r7, #156] @ 0x9c 80067e8: e853 3f00 ldrex r3, [r3] 80067ec: f8c7 3098 str.w r3, [r7, #152] @ 0x98 80067f0: f8d7 3098 ldr.w r3, [r7, #152] @ 0x98 80067f4: f023 0340 bic.w r3, r3, #64 @ 0x40 80067f8: f8c7 30d0 str.w r3, [r7, #208] @ 0xd0 80067fc: 687b ldr r3, [r7, #4] 80067fe: 681b ldr r3, [r3, #0] 8006800: 3314 adds r3, #20 8006802: f8d7 20d0 ldr.w r2, [r7, #208] @ 0xd0 8006806: f8c7 20a8 str.w r2, [r7, #168] @ 0xa8 800680a: f8c7 30a4 str.w r3, [r7, #164] @ 0xa4 800680e: f8d7 10a4 ldr.w r1, [r7, #164] @ 0xa4 8006812: f8d7 20a8 ldr.w r2, [r7, #168] @ 0xa8 8006816: e841 2300 strex r3, r2, [r1] 800681a: f8c7 30a0 str.w r3, [r7, #160] @ 0xa0 800681e: f8d7 30a0 ldr.w r3, [r7, #160] @ 0xa0 8006822: 2b00 cmp r3, #0 8006824: d1d9 bne.n 80067da 8006826: 687b ldr r3, [r7, #4] 8006828: 6bdb ldr r3, [r3, #60] @ 0x3c 800682a: 2b00 cmp r3, #0 800682c: d013 beq.n 8006856 800682e: 687b ldr r3, [r7, #4] 8006830: 6bdb ldr r3, [r3, #60] @ 0x3c 8006832: 4a8a ldr r2, [pc, #552] @ (8006a5c ) 8006834: 651a str r2, [r3, #80] @ 0x50 8006836: 687b ldr r3, [r7, #4] 8006838: 6bdb ldr r3, [r3, #60] @ 0x3c 800683a: 4618 mov r0, r3 800683c: f7fb fe2c bl 8002498 8006840: 4603 mov r3, r0 8006842: 2b00 cmp r3, #0 8006844: d016 beq.n 8006874 8006846: 687b ldr r3, [r7, #4] 8006848: 6bdb ldr r3, [r3, #60] @ 0x3c 800684a: 6d1b ldr r3, [r3, #80] @ 0x50 800684c: 687a ldr r2, [r7, #4] 800684e: 6bd2 ldr r2, [r2, #60] @ 0x3c 8006850: 4610 mov r0, r2 8006852: 4798 blx r3 8006854: e00e b.n 8006874 8006856: 6878 ldr r0, [r7, #4] 8006858: f7fa fab0 bl 8000dbc 800685c: e00a b.n 8006874 800685e: 6878 ldr r0, [r7, #4] 8006860: f7fa faac bl 8000dbc 8006864: e006 b.n 8006874 8006866: 6878 ldr r0, [r7, #4] 8006868: f7fa faa8 bl 8000dbc 800686c: 687b ldr r3, [r7, #4] 800686e: 2200 movs r2, #0 8006870: 645a str r2, [r3, #68] @ 0x44 8006872: e18d b.n 8006b90 8006874: bf00 nop 8006876: e18b b.n 8006b90 8006878: 687b ldr r3, [r7, #4] 800687a: 6b1b ldr r3, [r3, #48] @ 0x30 800687c: 2b01 cmp r3, #1 800687e: f040 8167 bne.w 8006b50 8006882: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006886: f003 0310 and.w r3, r3, #16 800688a: 2b00 cmp r3, #0 800688c: f000 8160 beq.w 8006b50 8006890: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 8006894: f003 0310 and.w r3, r3, #16 8006898: 2b00 cmp r3, #0 800689a: f000 8159 beq.w 8006b50 800689e: 2300 movs r3, #0 80068a0: 60bb str r3, [r7, #8] 80068a2: 687b ldr r3, [r7, #4] 80068a4: 681b ldr r3, [r3, #0] 80068a6: 681b ldr r3, [r3, #0] 80068a8: 60bb str r3, [r7, #8] 80068aa: 687b ldr r3, [r7, #4] 80068ac: 681b ldr r3, [r3, #0] 80068ae: 685b ldr r3, [r3, #4] 80068b0: 60bb str r3, [r7, #8] 80068b2: 68bb ldr r3, [r7, #8] 80068b4: 687b ldr r3, [r7, #4] 80068b6: 681b ldr r3, [r3, #0] 80068b8: 695b ldr r3, [r3, #20] 80068ba: f003 0340 and.w r3, r3, #64 @ 0x40 80068be: 2b40 cmp r3, #64 @ 0x40 80068c0: f040 80ce bne.w 8006a60 80068c4: 687b ldr r3, [r7, #4] 80068c6: 6bdb ldr r3, [r3, #60] @ 0x3c 80068c8: 681b ldr r3, [r3, #0] 80068ca: 685b ldr r3, [r3, #4] 80068cc: f8a7 30be strh.w r3, [r7, #190] @ 0xbe 80068d0: f8b7 30be ldrh.w r3, [r7, #190] @ 0xbe 80068d4: 2b00 cmp r3, #0 80068d6: f000 80a9 beq.w 8006a2c 80068da: 687b ldr r3, [r7, #4] 80068dc: 8d9b ldrh r3, [r3, #44] @ 0x2c 80068de: f8b7 20be ldrh.w r2, [r7, #190] @ 0xbe 80068e2: 429a cmp r2, r3 80068e4: f080 80a2 bcs.w 8006a2c 80068e8: 687b ldr r3, [r7, #4] 80068ea: f8b7 20be ldrh.w r2, [r7, #190] @ 0xbe 80068ee: 85da strh r2, [r3, #46] @ 0x2e 80068f0: 687b ldr r3, [r7, #4] 80068f2: 6bdb ldr r3, [r3, #60] @ 0x3c 80068f4: 69db ldr r3, [r3, #28] 80068f6: f5b3 7f80 cmp.w r3, #256 @ 0x100 80068fa: f000 8088 beq.w 8006a0e 80068fe: 687b ldr r3, [r7, #4] 8006900: 681b ldr r3, [r3, #0] 8006902: 330c adds r3, #12 8006904: f8c7 3088 str.w r3, [r7, #136] @ 0x88 8006908: f8d7 3088 ldr.w r3, [r7, #136] @ 0x88 800690c: e853 3f00 ldrex r3, [r3] 8006910: f8c7 3084 str.w r3, [r7, #132] @ 0x84 8006914: f8d7 3084 ldr.w r3, [r7, #132] @ 0x84 8006918: f423 7380 bic.w r3, r3, #256 @ 0x100 800691c: f8c7 30b8 str.w r3, [r7, #184] @ 0xb8 8006920: 687b ldr r3, [r7, #4] 8006922: 681b ldr r3, [r3, #0] 8006924: 330c adds r3, #12 8006926: f8d7 20b8 ldr.w r2, [r7, #184] @ 0xb8 800692a: f8c7 2094 str.w r2, [r7, #148] @ 0x94 800692e: f8c7 3090 str.w r3, [r7, #144] @ 0x90 8006932: f8d7 1090 ldr.w r1, [r7, #144] @ 0x90 8006936: f8d7 2094 ldr.w r2, [r7, #148] @ 0x94 800693a: e841 2300 strex r3, r2, [r1] 800693e: f8c7 308c str.w r3, [r7, #140] @ 0x8c 8006942: f8d7 308c ldr.w r3, [r7, #140] @ 0x8c 8006946: 2b00 cmp r3, #0 8006948: d1d9 bne.n 80068fe 800694a: 687b ldr r3, [r7, #4] 800694c: 681b ldr r3, [r3, #0] 800694e: 3314 adds r3, #20 8006950: 677b str r3, [r7, #116] @ 0x74 8006952: 6f7b ldr r3, [r7, #116] @ 0x74 8006954: e853 3f00 ldrex r3, [r3] 8006958: 673b str r3, [r7, #112] @ 0x70 800695a: 6f3b ldr r3, [r7, #112] @ 0x70 800695c: f023 0301 bic.w r3, r3, #1 8006960: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 8006964: 687b ldr r3, [r7, #4] 8006966: 681b ldr r3, [r3, #0] 8006968: 3314 adds r3, #20 800696a: f8d7 20b4 ldr.w r2, [r7, #180] @ 0xb4 800696e: f8c7 2080 str.w r2, [r7, #128] @ 0x80 8006972: 67fb str r3, [r7, #124] @ 0x7c 8006974: 6ff9 ldr r1, [r7, #124] @ 0x7c 8006976: f8d7 2080 ldr.w r2, [r7, #128] @ 0x80 800697a: e841 2300 strex r3, r2, [r1] 800697e: 67bb str r3, [r7, #120] @ 0x78 8006980: 6fbb ldr r3, [r7, #120] @ 0x78 8006982: 2b00 cmp r3, #0 8006984: d1e1 bne.n 800694a 8006986: 687b ldr r3, [r7, #4] 8006988: 681b ldr r3, [r3, #0] 800698a: 3314 adds r3, #20 800698c: 663b str r3, [r7, #96] @ 0x60 800698e: 6e3b ldr r3, [r7, #96] @ 0x60 8006990: e853 3f00 ldrex r3, [r3] 8006994: 65fb str r3, [r7, #92] @ 0x5c 8006996: 6dfb ldr r3, [r7, #92] @ 0x5c 8006998: f023 0340 bic.w r3, r3, #64 @ 0x40 800699c: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 80069a0: 687b ldr r3, [r7, #4] 80069a2: 681b ldr r3, [r3, #0] 80069a4: 3314 adds r3, #20 80069a6: f8d7 20b0 ldr.w r2, [r7, #176] @ 0xb0 80069aa: 66fa str r2, [r7, #108] @ 0x6c 80069ac: 66bb str r3, [r7, #104] @ 0x68 80069ae: 6eb9 ldr r1, [r7, #104] @ 0x68 80069b0: 6efa ldr r2, [r7, #108] @ 0x6c 80069b2: e841 2300 strex r3, r2, [r1] 80069b6: 667b str r3, [r7, #100] @ 0x64 80069b8: 6e7b ldr r3, [r7, #100] @ 0x64 80069ba: 2b00 cmp r3, #0 80069bc: d1e3 bne.n 8006986 80069be: 687b ldr r3, [r7, #4] 80069c0: 2220 movs r2, #32 80069c2: f883 2042 strb.w r2, [r3, #66] @ 0x42 80069c6: 687b ldr r3, [r7, #4] 80069c8: 2200 movs r2, #0 80069ca: 631a str r2, [r3, #48] @ 0x30 80069cc: 687b ldr r3, [r7, #4] 80069ce: 681b ldr r3, [r3, #0] 80069d0: 330c adds r3, #12 80069d2: 64fb str r3, [r7, #76] @ 0x4c 80069d4: 6cfb ldr r3, [r7, #76] @ 0x4c 80069d6: e853 3f00 ldrex r3, [r3] 80069da: 64bb str r3, [r7, #72] @ 0x48 80069dc: 6cbb ldr r3, [r7, #72] @ 0x48 80069de: f023 0310 bic.w r3, r3, #16 80069e2: f8c7 30ac str.w r3, [r7, #172] @ 0xac 80069e6: 687b ldr r3, [r7, #4] 80069e8: 681b ldr r3, [r3, #0] 80069ea: 330c adds r3, #12 80069ec: f8d7 20ac ldr.w r2, [r7, #172] @ 0xac 80069f0: 65ba str r2, [r7, #88] @ 0x58 80069f2: 657b str r3, [r7, #84] @ 0x54 80069f4: 6d79 ldr r1, [r7, #84] @ 0x54 80069f6: 6dba ldr r2, [r7, #88] @ 0x58 80069f8: e841 2300 strex r3, r2, [r1] 80069fc: 653b str r3, [r7, #80] @ 0x50 80069fe: 6d3b ldr r3, [r7, #80] @ 0x50 8006a00: 2b00 cmp r3, #0 8006a02: d1e3 bne.n 80069cc 8006a04: 687b ldr r3, [r7, #4] 8006a06: 6bdb ldr r3, [r3, #60] @ 0x3c 8006a08: 4618 mov r0, r3 8006a0a: f7fb fcd5 bl 80023b8 8006a0e: 687b ldr r3, [r7, #4] 8006a10: 2202 movs r2, #2 8006a12: 635a str r2, [r3, #52] @ 0x34 8006a14: 687b ldr r3, [r7, #4] 8006a16: 8d9a ldrh r2, [r3, #44] @ 0x2c 8006a18: 687b ldr r3, [r7, #4] 8006a1a: 8ddb ldrh r3, [r3, #46] @ 0x2e 8006a1c: b29b uxth r3, r3 8006a1e: 1ad3 subs r3, r2, r3 8006a20: b29b uxth r3, r3 8006a22: 4619 mov r1, r3 8006a24: 6878 ldr r0, [r7, #4] 8006a26: f000 f8d9 bl 8006bdc 8006a2a: e0b3 b.n 8006b94 8006a2c: 687b ldr r3, [r7, #4] 8006a2e: 8d9b ldrh r3, [r3, #44] @ 0x2c 8006a30: f8b7 20be ldrh.w r2, [r7, #190] @ 0xbe 8006a34: 429a cmp r2, r3 8006a36: f040 80ad bne.w 8006b94 8006a3a: 687b ldr r3, [r7, #4] 8006a3c: 6bdb ldr r3, [r3, #60] @ 0x3c 8006a3e: 69db ldr r3, [r3, #28] 8006a40: f5b3 7f80 cmp.w r3, #256 @ 0x100 8006a44: f040 80a6 bne.w 8006b94 8006a48: 687b ldr r3, [r7, #4] 8006a4a: 2202 movs r2, #2 8006a4c: 635a str r2, [r3, #52] @ 0x34 8006a4e: 687b ldr r3, [r7, #4] 8006a50: 8d9b ldrh r3, [r3, #44] @ 0x2c 8006a52: 4619 mov r1, r3 8006a54: 6878 ldr r0, [r7, #4] 8006a56: f000 f8c1 bl 8006bdc 8006a5a: e09b b.n 8006b94 8006a5c: 0800710b .word 0x0800710b 8006a60: 687b ldr r3, [r7, #4] 8006a62: 8d9a ldrh r2, [r3, #44] @ 0x2c 8006a64: 687b ldr r3, [r7, #4] 8006a66: 8ddb ldrh r3, [r3, #46] @ 0x2e 8006a68: b29b uxth r3, r3 8006a6a: 1ad3 subs r3, r2, r3 8006a6c: f8a7 30ce strh.w r3, [r7, #206] @ 0xce 8006a70: 687b ldr r3, [r7, #4] 8006a72: 8ddb ldrh r3, [r3, #46] @ 0x2e 8006a74: b29b uxth r3, r3 8006a76: 2b00 cmp r3, #0 8006a78: f000 808e beq.w 8006b98 8006a7c: f8b7 30ce ldrh.w r3, [r7, #206] @ 0xce 8006a80: 2b00 cmp r3, #0 8006a82: f000 8089 beq.w 8006b98 8006a86: 687b ldr r3, [r7, #4] 8006a88: 681b ldr r3, [r3, #0] 8006a8a: 330c adds r3, #12 8006a8c: 63bb str r3, [r7, #56] @ 0x38 8006a8e: 6bbb ldr r3, [r7, #56] @ 0x38 8006a90: e853 3f00 ldrex r3, [r3] 8006a94: 637b str r3, [r7, #52] @ 0x34 8006a96: 6b7b ldr r3, [r7, #52] @ 0x34 8006a98: f423 7390 bic.w r3, r3, #288 @ 0x120 8006a9c: f8c7 30c8 str.w r3, [r7, #200] @ 0xc8 8006aa0: 687b ldr r3, [r7, #4] 8006aa2: 681b ldr r3, [r3, #0] 8006aa4: 330c adds r3, #12 8006aa6: f8d7 20c8 ldr.w r2, [r7, #200] @ 0xc8 8006aaa: 647a str r2, [r7, #68] @ 0x44 8006aac: 643b str r3, [r7, #64] @ 0x40 8006aae: 6c39 ldr r1, [r7, #64] @ 0x40 8006ab0: 6c7a ldr r2, [r7, #68] @ 0x44 8006ab2: e841 2300 strex r3, r2, [r1] 8006ab6: 63fb str r3, [r7, #60] @ 0x3c 8006ab8: 6bfb ldr r3, [r7, #60] @ 0x3c 8006aba: 2b00 cmp r3, #0 8006abc: d1e3 bne.n 8006a86 8006abe: 687b ldr r3, [r7, #4] 8006ac0: 681b ldr r3, [r3, #0] 8006ac2: 3314 adds r3, #20 8006ac4: 627b str r3, [r7, #36] @ 0x24 8006ac6: 6a7b ldr r3, [r7, #36] @ 0x24 8006ac8: e853 3f00 ldrex r3, [r3] 8006acc: 623b str r3, [r7, #32] 8006ace: 6a3b ldr r3, [r7, #32] 8006ad0: f023 0301 bic.w r3, r3, #1 8006ad4: f8c7 30c4 str.w r3, [r7, #196] @ 0xc4 8006ad8: 687b ldr r3, [r7, #4] 8006ada: 681b ldr r3, [r3, #0] 8006adc: 3314 adds r3, #20 8006ade: f8d7 20c4 ldr.w r2, [r7, #196] @ 0xc4 8006ae2: 633a str r2, [r7, #48] @ 0x30 8006ae4: 62fb str r3, [r7, #44] @ 0x2c 8006ae6: 6af9 ldr r1, [r7, #44] @ 0x2c 8006ae8: 6b3a ldr r2, [r7, #48] @ 0x30 8006aea: e841 2300 strex r3, r2, [r1] 8006aee: 62bb str r3, [r7, #40] @ 0x28 8006af0: 6abb ldr r3, [r7, #40] @ 0x28 8006af2: 2b00 cmp r3, #0 8006af4: d1e3 bne.n 8006abe 8006af6: 687b ldr r3, [r7, #4] 8006af8: 2220 movs r2, #32 8006afa: f883 2042 strb.w r2, [r3, #66] @ 0x42 8006afe: 687b ldr r3, [r7, #4] 8006b00: 2200 movs r2, #0 8006b02: 631a str r2, [r3, #48] @ 0x30 8006b04: 687b ldr r3, [r7, #4] 8006b06: 681b ldr r3, [r3, #0] 8006b08: 330c adds r3, #12 8006b0a: 613b str r3, [r7, #16] 8006b0c: 693b ldr r3, [r7, #16] 8006b0e: e853 3f00 ldrex r3, [r3] 8006b12: 60fb str r3, [r7, #12] 8006b14: 68fb ldr r3, [r7, #12] 8006b16: f023 0310 bic.w r3, r3, #16 8006b1a: f8c7 30c0 str.w r3, [r7, #192] @ 0xc0 8006b1e: 687b ldr r3, [r7, #4] 8006b20: 681b ldr r3, [r3, #0] 8006b22: 330c adds r3, #12 8006b24: f8d7 20c0 ldr.w r2, [r7, #192] @ 0xc0 8006b28: 61fa str r2, [r7, #28] 8006b2a: 61bb str r3, [r7, #24] 8006b2c: 69b9 ldr r1, [r7, #24] 8006b2e: 69fa ldr r2, [r7, #28] 8006b30: e841 2300 strex r3, r2, [r1] 8006b34: 617b str r3, [r7, #20] 8006b36: 697b ldr r3, [r7, #20] 8006b38: 2b00 cmp r3, #0 8006b3a: d1e3 bne.n 8006b04 8006b3c: 687b ldr r3, [r7, #4] 8006b3e: 2202 movs r2, #2 8006b40: 635a str r2, [r3, #52] @ 0x34 8006b42: f8b7 30ce ldrh.w r3, [r7, #206] @ 0xce 8006b46: 4619 mov r1, r3 8006b48: 6878 ldr r0, [r7, #4] 8006b4a: f000 f847 bl 8006bdc 8006b4e: e023 b.n 8006b98 8006b50: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006b54: f003 0380 and.w r3, r3, #128 @ 0x80 8006b58: 2b00 cmp r3, #0 8006b5a: d009 beq.n 8006b70 8006b5c: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 8006b60: f003 0380 and.w r3, r3, #128 @ 0x80 8006b64: 2b00 cmp r3, #0 8006b66: d003 beq.n 8006b70 8006b68: 6878 ldr r0, [r7, #4] 8006b6a: f000 fadf bl 800712c 8006b6e: e014 b.n 8006b9a 8006b70: f8d7 30e4 ldr.w r3, [r7, #228] @ 0xe4 8006b74: f003 0340 and.w r3, r3, #64 @ 0x40 8006b78: 2b00 cmp r3, #0 8006b7a: d00e beq.n 8006b9a 8006b7c: f8d7 30e0 ldr.w r3, [r7, #224] @ 0xe0 8006b80: f003 0340 and.w r3, r3, #64 @ 0x40 8006b84: 2b00 cmp r3, #0 8006b86: d008 beq.n 8006b9a 8006b88: 6878 ldr r0, [r7, #4] 8006b8a: f000 fb1f bl 80071cc 8006b8e: e004 b.n 8006b9a 8006b90: bf00 nop 8006b92: e002 b.n 8006b9a 8006b94: bf00 nop 8006b96: e000 b.n 8006b9a 8006b98: bf00 nop 8006b9a: 37e8 adds r7, #232 @ 0xe8 8006b9c: 46bd mov sp, r7 8006b9e: bd80 pop {r7, pc} 08006ba0 : 8006ba0: b480 push {r7} 8006ba2: b083 sub sp, #12 8006ba4: af00 add r7, sp, #0 8006ba6: 6078 str r0, [r7, #4] 8006ba8: bf00 nop 8006baa: 370c adds r7, #12 8006bac: 46bd mov sp, r7 8006bae: f85d 7b04 ldr.w r7, [sp], #4 8006bb2: 4770 bx lr 08006bb4 : 8006bb4: b480 push {r7} 8006bb6: b083 sub sp, #12 8006bb8: af00 add r7, sp, #0 8006bba: 6078 str r0, [r7, #4] 8006bbc: bf00 nop 8006bbe: 370c adds r7, #12 8006bc0: 46bd mov sp, r7 8006bc2: f85d 7b04 ldr.w r7, [sp], #4 8006bc6: 4770 bx lr 08006bc8 : 8006bc8: b480 push {r7} 8006bca: b083 sub sp, #12 8006bcc: af00 add r7, sp, #0 8006bce: 6078 str r0, [r7, #4] 8006bd0: bf00 nop 8006bd2: 370c adds r7, #12 8006bd4: 46bd mov sp, r7 8006bd6: f85d 7b04 ldr.w r7, [sp], #4 8006bda: 4770 bx lr 08006bdc : 8006bdc: b480 push {r7} 8006bde: b083 sub sp, #12 8006be0: af00 add r7, sp, #0 8006be2: 6078 str r0, [r7, #4] 8006be4: 460b mov r3, r1 8006be6: 807b strh r3, [r7, #2] 8006be8: bf00 nop 8006bea: 370c adds r7, #12 8006bec: 46bd mov sp, r7 8006bee: f85d 7b04 ldr.w r7, [sp], #4 8006bf2: 4770 bx lr 08006bf4 : 8006bf4: b580 push {r7, lr} 8006bf6: b090 sub sp, #64 @ 0x40 8006bf8: af00 add r7, sp, #0 8006bfa: 6078 str r0, [r7, #4] 8006bfc: 687b ldr r3, [r7, #4] 8006bfe: 6b9b ldr r3, [r3, #56] @ 0x38 8006c00: 63fb str r3, [r7, #60] @ 0x3c 8006c02: 687b ldr r3, [r7, #4] 8006c04: 681b ldr r3, [r3, #0] 8006c06: 681b ldr r3, [r3, #0] 8006c08: f403 7380 and.w r3, r3, #256 @ 0x100 8006c0c: 2b00 cmp r3, #0 8006c0e: d137 bne.n 8006c80 8006c10: 6bfb ldr r3, [r7, #60] @ 0x3c 8006c12: 2200 movs r2, #0 8006c14: 84da strh r2, [r3, #38] @ 0x26 8006c16: 6bfb ldr r3, [r7, #60] @ 0x3c 8006c18: 681b ldr r3, [r3, #0] 8006c1a: 3314 adds r3, #20 8006c1c: 627b str r3, [r7, #36] @ 0x24 8006c1e: 6a7b ldr r3, [r7, #36] @ 0x24 8006c20: e853 3f00 ldrex r3, [r3] 8006c24: 623b str r3, [r7, #32] 8006c26: 6a3b ldr r3, [r7, #32] 8006c28: f023 0380 bic.w r3, r3, #128 @ 0x80 8006c2c: 63bb str r3, [r7, #56] @ 0x38 8006c2e: 6bfb ldr r3, [r7, #60] @ 0x3c 8006c30: 681b ldr r3, [r3, #0] 8006c32: 3314 adds r3, #20 8006c34: 6bba ldr r2, [r7, #56] @ 0x38 8006c36: 633a str r2, [r7, #48] @ 0x30 8006c38: 62fb str r3, [r7, #44] @ 0x2c 8006c3a: 6af9 ldr r1, [r7, #44] @ 0x2c 8006c3c: 6b3a ldr r2, [r7, #48] @ 0x30 8006c3e: e841 2300 strex r3, r2, [r1] 8006c42: 62bb str r3, [r7, #40] @ 0x28 8006c44: 6abb ldr r3, [r7, #40] @ 0x28 8006c46: 2b00 cmp r3, #0 8006c48: d1e5 bne.n 8006c16 8006c4a: 6bfb ldr r3, [r7, #60] @ 0x3c 8006c4c: 681b ldr r3, [r3, #0] 8006c4e: 330c adds r3, #12 8006c50: 613b str r3, [r7, #16] 8006c52: 693b ldr r3, [r7, #16] 8006c54: e853 3f00 ldrex r3, [r3] 8006c58: 60fb str r3, [r7, #12] 8006c5a: 68fb ldr r3, [r7, #12] 8006c5c: f043 0340 orr.w r3, r3, #64 @ 0x40 8006c60: 637b str r3, [r7, #52] @ 0x34 8006c62: 6bfb ldr r3, [r7, #60] @ 0x3c 8006c64: 681b ldr r3, [r3, #0] 8006c66: 330c adds r3, #12 8006c68: 6b7a ldr r2, [r7, #52] @ 0x34 8006c6a: 61fa str r2, [r7, #28] 8006c6c: 61bb str r3, [r7, #24] 8006c6e: 69b9 ldr r1, [r7, #24] 8006c70: 69fa ldr r2, [r7, #28] 8006c72: e841 2300 strex r3, r2, [r1] 8006c76: 617b str r3, [r7, #20] 8006c78: 697b ldr r3, [r7, #20] 8006c7a: 2b00 cmp r3, #0 8006c7c: d1e5 bne.n 8006c4a 8006c7e: e002 b.n 8006c86 8006c80: 6bf8 ldr r0, [r7, #60] @ 0x3c 8006c82: f7ff ff8d bl 8006ba0 8006c86: bf00 nop 8006c88: 3740 adds r7, #64 @ 0x40 8006c8a: 46bd mov sp, r7 8006c8c: bd80 pop {r7, pc} 08006c8e : 8006c8e: b580 push {r7, lr} 8006c90: b084 sub sp, #16 8006c92: af00 add r7, sp, #0 8006c94: 6078 str r0, [r7, #4] 8006c96: 687b ldr r3, [r7, #4] 8006c98: 6b9b ldr r3, [r3, #56] @ 0x38 8006c9a: 60fb str r3, [r7, #12] 8006c9c: 68f8 ldr r0, [r7, #12] 8006c9e: f7ff ff89 bl 8006bb4 8006ca2: bf00 nop 8006ca4: 3710 adds r7, #16 8006ca6: 46bd mov sp, r7 8006ca8: bd80 pop {r7, pc} 08006caa : 8006caa: b580 push {r7, lr} 8006cac: b09c sub sp, #112 @ 0x70 8006cae: af00 add r7, sp, #0 8006cb0: 6078 str r0, [r7, #4] 8006cb2: 687b ldr r3, [r7, #4] 8006cb4: 6b9b ldr r3, [r3, #56] @ 0x38 8006cb6: 66fb str r3, [r7, #108] @ 0x6c 8006cb8: 687b ldr r3, [r7, #4] 8006cba: 681b ldr r3, [r3, #0] 8006cbc: 681b ldr r3, [r3, #0] 8006cbe: f403 7380 and.w r3, r3, #256 @ 0x100 8006cc2: 2b00 cmp r3, #0 8006cc4: d172 bne.n 8006dac 8006cc6: 6efb ldr r3, [r7, #108] @ 0x6c 8006cc8: 2200 movs r2, #0 8006cca: 85da strh r2, [r3, #46] @ 0x2e 8006ccc: 6efb ldr r3, [r7, #108] @ 0x6c 8006cce: 681b ldr r3, [r3, #0] 8006cd0: 330c adds r3, #12 8006cd2: 64fb str r3, [r7, #76] @ 0x4c 8006cd4: 6cfb ldr r3, [r7, #76] @ 0x4c 8006cd6: e853 3f00 ldrex r3, [r3] 8006cda: 64bb str r3, [r7, #72] @ 0x48 8006cdc: 6cbb ldr r3, [r7, #72] @ 0x48 8006cde: f423 7380 bic.w r3, r3, #256 @ 0x100 8006ce2: 66bb str r3, [r7, #104] @ 0x68 8006ce4: 6efb ldr r3, [r7, #108] @ 0x6c 8006ce6: 681b ldr r3, [r3, #0] 8006ce8: 330c adds r3, #12 8006cea: 6eba ldr r2, [r7, #104] @ 0x68 8006cec: 65ba str r2, [r7, #88] @ 0x58 8006cee: 657b str r3, [r7, #84] @ 0x54 8006cf0: 6d79 ldr r1, [r7, #84] @ 0x54 8006cf2: 6dba ldr r2, [r7, #88] @ 0x58 8006cf4: e841 2300 strex r3, r2, [r1] 8006cf8: 653b str r3, [r7, #80] @ 0x50 8006cfa: 6d3b ldr r3, [r7, #80] @ 0x50 8006cfc: 2b00 cmp r3, #0 8006cfe: d1e5 bne.n 8006ccc 8006d00: 6efb ldr r3, [r7, #108] @ 0x6c 8006d02: 681b ldr r3, [r3, #0] 8006d04: 3314 adds r3, #20 8006d06: 63bb str r3, [r7, #56] @ 0x38 8006d08: 6bbb ldr r3, [r7, #56] @ 0x38 8006d0a: e853 3f00 ldrex r3, [r3] 8006d0e: 637b str r3, [r7, #52] @ 0x34 8006d10: 6b7b ldr r3, [r7, #52] @ 0x34 8006d12: f023 0301 bic.w r3, r3, #1 8006d16: 667b str r3, [r7, #100] @ 0x64 8006d18: 6efb ldr r3, [r7, #108] @ 0x6c 8006d1a: 681b ldr r3, [r3, #0] 8006d1c: 3314 adds r3, #20 8006d1e: 6e7a ldr r2, [r7, #100] @ 0x64 8006d20: 647a str r2, [r7, #68] @ 0x44 8006d22: 643b str r3, [r7, #64] @ 0x40 8006d24: 6c39 ldr r1, [r7, #64] @ 0x40 8006d26: 6c7a ldr r2, [r7, #68] @ 0x44 8006d28: e841 2300 strex r3, r2, [r1] 8006d2c: 63fb str r3, [r7, #60] @ 0x3c 8006d2e: 6bfb ldr r3, [r7, #60] @ 0x3c 8006d30: 2b00 cmp r3, #0 8006d32: d1e5 bne.n 8006d00 8006d34: 6efb ldr r3, [r7, #108] @ 0x6c 8006d36: 681b ldr r3, [r3, #0] 8006d38: 3314 adds r3, #20 8006d3a: 627b str r3, [r7, #36] @ 0x24 8006d3c: 6a7b ldr r3, [r7, #36] @ 0x24 8006d3e: e853 3f00 ldrex r3, [r3] 8006d42: 623b str r3, [r7, #32] 8006d44: 6a3b ldr r3, [r7, #32] 8006d46: f023 0340 bic.w r3, r3, #64 @ 0x40 8006d4a: 663b str r3, [r7, #96] @ 0x60 8006d4c: 6efb ldr r3, [r7, #108] @ 0x6c 8006d4e: 681b ldr r3, [r3, #0] 8006d50: 3314 adds r3, #20 8006d52: 6e3a ldr r2, [r7, #96] @ 0x60 8006d54: 633a str r2, [r7, #48] @ 0x30 8006d56: 62fb str r3, [r7, #44] @ 0x2c 8006d58: 6af9 ldr r1, [r7, #44] @ 0x2c 8006d5a: 6b3a ldr r2, [r7, #48] @ 0x30 8006d5c: e841 2300 strex r3, r2, [r1] 8006d60: 62bb str r3, [r7, #40] @ 0x28 8006d62: 6abb ldr r3, [r7, #40] @ 0x28 8006d64: 2b00 cmp r3, #0 8006d66: d1e5 bne.n 8006d34 8006d68: 6efb ldr r3, [r7, #108] @ 0x6c 8006d6a: 2220 movs r2, #32 8006d6c: f883 2042 strb.w r2, [r3, #66] @ 0x42 8006d70: 6efb ldr r3, [r7, #108] @ 0x6c 8006d72: 6b1b ldr r3, [r3, #48] @ 0x30 8006d74: 2b01 cmp r3, #1 8006d76: d119 bne.n 8006dac 8006d78: 6efb ldr r3, [r7, #108] @ 0x6c 8006d7a: 681b ldr r3, [r3, #0] 8006d7c: 330c adds r3, #12 8006d7e: 613b str r3, [r7, #16] 8006d80: 693b ldr r3, [r7, #16] 8006d82: e853 3f00 ldrex r3, [r3] 8006d86: 60fb str r3, [r7, #12] 8006d88: 68fb ldr r3, [r7, #12] 8006d8a: f023 0310 bic.w r3, r3, #16 8006d8e: 65fb str r3, [r7, #92] @ 0x5c 8006d90: 6efb ldr r3, [r7, #108] @ 0x6c 8006d92: 681b ldr r3, [r3, #0] 8006d94: 330c adds r3, #12 8006d96: 6dfa ldr r2, [r7, #92] @ 0x5c 8006d98: 61fa str r2, [r7, #28] 8006d9a: 61bb str r3, [r7, #24] 8006d9c: 69b9 ldr r1, [r7, #24] 8006d9e: 69fa ldr r2, [r7, #28] 8006da0: e841 2300 strex r3, r2, [r1] 8006da4: 617b str r3, [r7, #20] 8006da6: 697b ldr r3, [r7, #20] 8006da8: 2b00 cmp r3, #0 8006daa: d1e5 bne.n 8006d78 8006dac: 6efb ldr r3, [r7, #108] @ 0x6c 8006dae: 2200 movs r2, #0 8006db0: 635a str r2, [r3, #52] @ 0x34 8006db2: 6efb ldr r3, [r7, #108] @ 0x6c 8006db4: 6b1b ldr r3, [r3, #48] @ 0x30 8006db6: 2b01 cmp r3, #1 8006db8: d106 bne.n 8006dc8 8006dba: 6efb ldr r3, [r7, #108] @ 0x6c 8006dbc: 8d9b ldrh r3, [r3, #44] @ 0x2c 8006dbe: 4619 mov r1, r3 8006dc0: 6ef8 ldr r0, [r7, #108] @ 0x6c 8006dc2: f7ff ff0b bl 8006bdc 8006dc6: e002 b.n 8006dce 8006dc8: 6ef8 ldr r0, [r7, #108] @ 0x6c 8006dca: f7f9 ff9b bl 8000d04 8006dce: bf00 nop 8006dd0: 3770 adds r7, #112 @ 0x70 8006dd2: 46bd mov sp, r7 8006dd4: bd80 pop {r7, pc} 08006dd6 : 8006dd6: b580 push {r7, lr} 8006dd8: b084 sub sp, #16 8006dda: af00 add r7, sp, #0 8006ddc: 6078 str r0, [r7, #4] 8006dde: 687b ldr r3, [r7, #4] 8006de0: 6b9b ldr r3, [r3, #56] @ 0x38 8006de2: 60fb str r3, [r7, #12] 8006de4: 68fb ldr r3, [r7, #12] 8006de6: 2201 movs r2, #1 8006de8: 635a str r2, [r3, #52] @ 0x34 8006dea: 68fb ldr r3, [r7, #12] 8006dec: 6b1b ldr r3, [r3, #48] @ 0x30 8006dee: 2b01 cmp r3, #1 8006df0: d108 bne.n 8006e04 8006df2: 68fb ldr r3, [r7, #12] 8006df4: 8d9b ldrh r3, [r3, #44] @ 0x2c 8006df6: 085b lsrs r3, r3, #1 8006df8: b29b uxth r3, r3 8006dfa: 4619 mov r1, r3 8006dfc: 68f8 ldr r0, [r7, #12] 8006dfe: f7ff feed bl 8006bdc 8006e02: e002 b.n 8006e0a 8006e04: 68f8 ldr r0, [r7, #12] 8006e06: f7ff fedf bl 8006bc8 8006e0a: bf00 nop 8006e0c: 3710 adds r7, #16 8006e0e: 46bd mov sp, r7 8006e10: bd80 pop {r7, pc} 08006e12 : 8006e12: b580 push {r7, lr} 8006e14: b084 sub sp, #16 8006e16: af00 add r7, sp, #0 8006e18: 6078 str r0, [r7, #4] 8006e1a: 2300 movs r3, #0 8006e1c: 60fb str r3, [r7, #12] 8006e1e: 687b ldr r3, [r7, #4] 8006e20: 6b9b ldr r3, [r3, #56] @ 0x38 8006e22: 60bb str r3, [r7, #8] 8006e24: 68bb ldr r3, [r7, #8] 8006e26: 681b ldr r3, [r3, #0] 8006e28: 695b ldr r3, [r3, #20] 8006e2a: f003 0380 and.w r3, r3, #128 @ 0x80 8006e2e: 2b80 cmp r3, #128 @ 0x80 8006e30: bf0c ite eq 8006e32: 2301 moveq r3, #1 8006e34: 2300 movne r3, #0 8006e36: b2db uxtb r3, r3 8006e38: 60fb str r3, [r7, #12] 8006e3a: 68bb ldr r3, [r7, #8] 8006e3c: f893 3041 ldrb.w r3, [r3, #65] @ 0x41 8006e40: b2db uxtb r3, r3 8006e42: 2b21 cmp r3, #33 @ 0x21 8006e44: d108 bne.n 8006e58 8006e46: 68fb ldr r3, [r7, #12] 8006e48: 2b00 cmp r3, #0 8006e4a: d005 beq.n 8006e58 8006e4c: 68bb ldr r3, [r7, #8] 8006e4e: 2200 movs r2, #0 8006e50: 84da strh r2, [r3, #38] @ 0x26 8006e52: 68b8 ldr r0, [r7, #8] 8006e54: f000 f8ce bl 8006ff4 8006e58: 68bb ldr r3, [r7, #8] 8006e5a: 681b ldr r3, [r3, #0] 8006e5c: 695b ldr r3, [r3, #20] 8006e5e: f003 0340 and.w r3, r3, #64 @ 0x40 8006e62: 2b40 cmp r3, #64 @ 0x40 8006e64: bf0c ite eq 8006e66: 2301 moveq r3, #1 8006e68: 2300 movne r3, #0 8006e6a: b2db uxtb r3, r3 8006e6c: 60fb str r3, [r7, #12] 8006e6e: 68bb ldr r3, [r7, #8] 8006e70: f893 3042 ldrb.w r3, [r3, #66] @ 0x42 8006e74: b2db uxtb r3, r3 8006e76: 2b22 cmp r3, #34 @ 0x22 8006e78: d108 bne.n 8006e8c 8006e7a: 68fb ldr r3, [r7, #12] 8006e7c: 2b00 cmp r3, #0 8006e7e: d005 beq.n 8006e8c 8006e80: 68bb ldr r3, [r7, #8] 8006e82: 2200 movs r2, #0 8006e84: 85da strh r2, [r3, #46] @ 0x2e 8006e86: 68b8 ldr r0, [r7, #8] 8006e88: f000 f8dc bl 8007044 8006e8c: 68bb ldr r3, [r7, #8] 8006e8e: 6c5b ldr r3, [r3, #68] @ 0x44 8006e90: f043 0210 orr.w r2, r3, #16 8006e94: 68bb ldr r3, [r7, #8] 8006e96: 645a str r2, [r3, #68] @ 0x44 8006e98: 68b8 ldr r0, [r7, #8] 8006e9a: f7f9 ff8f bl 8000dbc 8006e9e: bf00 nop 8006ea0: 3710 adds r7, #16 8006ea2: 46bd mov sp, r7 8006ea4: bd80 pop {r7, pc} ... 08006ea8 : 8006ea8: b580 push {r7, lr} 8006eaa: b098 sub sp, #96 @ 0x60 8006eac: af00 add r7, sp, #0 8006eae: 60f8 str r0, [r7, #12] 8006eb0: 60b9 str r1, [r7, #8] 8006eb2: 4613 mov r3, r2 8006eb4: 80fb strh r3, [r7, #6] 8006eb6: 68ba ldr r2, [r7, #8] 8006eb8: 68fb ldr r3, [r7, #12] 8006eba: 629a str r2, [r3, #40] @ 0x28 8006ebc: 68fb ldr r3, [r7, #12] 8006ebe: 88fa ldrh r2, [r7, #6] 8006ec0: 859a strh r2, [r3, #44] @ 0x2c 8006ec2: 68fb ldr r3, [r7, #12] 8006ec4: 2200 movs r2, #0 8006ec6: 645a str r2, [r3, #68] @ 0x44 8006ec8: 68fb ldr r3, [r7, #12] 8006eca: 2222 movs r2, #34 @ 0x22 8006ecc: f883 2042 strb.w r2, [r3, #66] @ 0x42 8006ed0: 68fb ldr r3, [r7, #12] 8006ed2: 6bdb ldr r3, [r3, #60] @ 0x3c 8006ed4: 4a44 ldr r2, [pc, #272] @ (8006fe8 ) 8006ed6: 63da str r2, [r3, #60] @ 0x3c 8006ed8: 68fb ldr r3, [r7, #12] 8006eda: 6bdb ldr r3, [r3, #60] @ 0x3c 8006edc: 4a43 ldr r2, [pc, #268] @ (8006fec ) 8006ede: 641a str r2, [r3, #64] @ 0x40 8006ee0: 68fb ldr r3, [r7, #12] 8006ee2: 6bdb ldr r3, [r3, #60] @ 0x3c 8006ee4: 4a42 ldr r2, [pc, #264] @ (8006ff0 ) 8006ee6: 64da str r2, [r3, #76] @ 0x4c 8006ee8: 68fb ldr r3, [r7, #12] 8006eea: 6bdb ldr r3, [r3, #60] @ 0x3c 8006eec: 2200 movs r2, #0 8006eee: 651a str r2, [r3, #80] @ 0x50 8006ef0: f107 0308 add.w r3, r7, #8 8006ef4: 65fb str r3, [r7, #92] @ 0x5c 8006ef6: 68fb ldr r3, [r7, #12] 8006ef8: 6bd8 ldr r0, [r3, #60] @ 0x3c 8006efa: 68fb ldr r3, [r7, #12] 8006efc: 681b ldr r3, [r3, #0] 8006efe: 3304 adds r3, #4 8006f00: 4619 mov r1, r3 8006f02: 6dfb ldr r3, [r7, #92] @ 0x5c 8006f04: 681a ldr r2, [r3, #0] 8006f06: 88fb ldrh r3, [r7, #6] 8006f08: f7fb f9fe bl 8002308 8006f0c: 4603 mov r3, r0 8006f0e: 2b00 cmp r3, #0 8006f10: d008 beq.n 8006f24 8006f12: 68fb ldr r3, [r7, #12] 8006f14: 2210 movs r2, #16 8006f16: 645a str r2, [r3, #68] @ 0x44 8006f18: 68fb ldr r3, [r7, #12] 8006f1a: 2220 movs r2, #32 8006f1c: f883 2042 strb.w r2, [r3, #66] @ 0x42 8006f20: 2301 movs r3, #1 8006f22: e05d b.n 8006fe0 8006f24: 2300 movs r3, #0 8006f26: 613b str r3, [r7, #16] 8006f28: 68fb ldr r3, [r7, #12] 8006f2a: 681b ldr r3, [r3, #0] 8006f2c: 681b ldr r3, [r3, #0] 8006f2e: 613b str r3, [r7, #16] 8006f30: 68fb ldr r3, [r7, #12] 8006f32: 681b ldr r3, [r3, #0] 8006f34: 685b ldr r3, [r3, #4] 8006f36: 613b str r3, [r7, #16] 8006f38: 693b ldr r3, [r7, #16] 8006f3a: 68fb ldr r3, [r7, #12] 8006f3c: 691b ldr r3, [r3, #16] 8006f3e: 2b00 cmp r3, #0 8006f40: d019 beq.n 8006f76 8006f42: 68fb ldr r3, [r7, #12] 8006f44: 681b ldr r3, [r3, #0] 8006f46: 330c adds r3, #12 8006f48: 643b str r3, [r7, #64] @ 0x40 8006f4a: 6c3b ldr r3, [r7, #64] @ 0x40 8006f4c: e853 3f00 ldrex r3, [r3] 8006f50: 63fb str r3, [r7, #60] @ 0x3c 8006f52: 6bfb ldr r3, [r7, #60] @ 0x3c 8006f54: f443 7380 orr.w r3, r3, #256 @ 0x100 8006f58: 65bb str r3, [r7, #88] @ 0x58 8006f5a: 68fb ldr r3, [r7, #12] 8006f5c: 681b ldr r3, [r3, #0] 8006f5e: 330c adds r3, #12 8006f60: 6dba ldr r2, [r7, #88] @ 0x58 8006f62: 64fa str r2, [r7, #76] @ 0x4c 8006f64: 64bb str r3, [r7, #72] @ 0x48 8006f66: 6cb9 ldr r1, [r7, #72] @ 0x48 8006f68: 6cfa ldr r2, [r7, #76] @ 0x4c 8006f6a: e841 2300 strex r3, r2, [r1] 8006f6e: 647b str r3, [r7, #68] @ 0x44 8006f70: 6c7b ldr r3, [r7, #68] @ 0x44 8006f72: 2b00 cmp r3, #0 8006f74: d1e5 bne.n 8006f42 8006f76: 68fb ldr r3, [r7, #12] 8006f78: 681b ldr r3, [r3, #0] 8006f7a: 3314 adds r3, #20 8006f7c: 62fb str r3, [r7, #44] @ 0x2c 8006f7e: 6afb ldr r3, [r7, #44] @ 0x2c 8006f80: e853 3f00 ldrex r3, [r3] 8006f84: 62bb str r3, [r7, #40] @ 0x28 8006f86: 6abb ldr r3, [r7, #40] @ 0x28 8006f88: f043 0301 orr.w r3, r3, #1 8006f8c: 657b str r3, [r7, #84] @ 0x54 8006f8e: 68fb ldr r3, [r7, #12] 8006f90: 681b ldr r3, [r3, #0] 8006f92: 3314 adds r3, #20 8006f94: 6d7a ldr r2, [r7, #84] @ 0x54 8006f96: 63ba str r2, [r7, #56] @ 0x38 8006f98: 637b str r3, [r7, #52] @ 0x34 8006f9a: 6b79 ldr r1, [r7, #52] @ 0x34 8006f9c: 6bba ldr r2, [r7, #56] @ 0x38 8006f9e: e841 2300 strex r3, r2, [r1] 8006fa2: 633b str r3, [r7, #48] @ 0x30 8006fa4: 6b3b ldr r3, [r7, #48] @ 0x30 8006fa6: 2b00 cmp r3, #0 8006fa8: d1e5 bne.n 8006f76 8006faa: 68fb ldr r3, [r7, #12] 8006fac: 681b ldr r3, [r3, #0] 8006fae: 3314 adds r3, #20 8006fb0: 61bb str r3, [r7, #24] 8006fb2: 69bb ldr r3, [r7, #24] 8006fb4: e853 3f00 ldrex r3, [r3] 8006fb8: 617b str r3, [r7, #20] 8006fba: 697b ldr r3, [r7, #20] 8006fbc: f043 0340 orr.w r3, r3, #64 @ 0x40 8006fc0: 653b str r3, [r7, #80] @ 0x50 8006fc2: 68fb ldr r3, [r7, #12] 8006fc4: 681b ldr r3, [r3, #0] 8006fc6: 3314 adds r3, #20 8006fc8: 6d3a ldr r2, [r7, #80] @ 0x50 8006fca: 627a str r2, [r7, #36] @ 0x24 8006fcc: 623b str r3, [r7, #32] 8006fce: 6a39 ldr r1, [r7, #32] 8006fd0: 6a7a ldr r2, [r7, #36] @ 0x24 8006fd2: e841 2300 strex r3, r2, [r1] 8006fd6: 61fb str r3, [r7, #28] 8006fd8: 69fb ldr r3, [r7, #28] 8006fda: 2b00 cmp r3, #0 8006fdc: d1e5 bne.n 8006faa 8006fde: 2300 movs r3, #0 8006fe0: 4618 mov r0, r3 8006fe2: 3760 adds r7, #96 @ 0x60 8006fe4: 46bd mov sp, r7 8006fe6: bd80 pop {r7, pc} 8006fe8: 08006cab .word 0x08006cab 8006fec: 08006dd7 .word 0x08006dd7 8006ff0: 08006e13 .word 0x08006e13 08006ff4 : 8006ff4: b480 push {r7} 8006ff6: b089 sub sp, #36 @ 0x24 8006ff8: af00 add r7, sp, #0 8006ffa: 6078 str r0, [r7, #4] 8006ffc: 687b ldr r3, [r7, #4] 8006ffe: 681b ldr r3, [r3, #0] 8007000: 330c adds r3, #12 8007002: 60fb str r3, [r7, #12] 8007004: 68fb ldr r3, [r7, #12] 8007006: e853 3f00 ldrex r3, [r3] 800700a: 60bb str r3, [r7, #8] 800700c: 68bb ldr r3, [r7, #8] 800700e: f023 03c0 bic.w r3, r3, #192 @ 0xc0 8007012: 61fb str r3, [r7, #28] 8007014: 687b ldr r3, [r7, #4] 8007016: 681b ldr r3, [r3, #0] 8007018: 330c adds r3, #12 800701a: 69fa ldr r2, [r7, #28] 800701c: 61ba str r2, [r7, #24] 800701e: 617b str r3, [r7, #20] 8007020: 6979 ldr r1, [r7, #20] 8007022: 69ba ldr r2, [r7, #24] 8007024: e841 2300 strex r3, r2, [r1] 8007028: 613b str r3, [r7, #16] 800702a: 693b ldr r3, [r7, #16] 800702c: 2b00 cmp r3, #0 800702e: d1e5 bne.n 8006ffc 8007030: 687b ldr r3, [r7, #4] 8007032: 2220 movs r2, #32 8007034: f883 2041 strb.w r2, [r3, #65] @ 0x41 8007038: bf00 nop 800703a: 3724 adds r7, #36 @ 0x24 800703c: 46bd mov sp, r7 800703e: f85d 7b04 ldr.w r7, [sp], #4 8007042: 4770 bx lr 08007044 : 8007044: b480 push {r7} 8007046: b095 sub sp, #84 @ 0x54 8007048: af00 add r7, sp, #0 800704a: 6078 str r0, [r7, #4] 800704c: 687b ldr r3, [r7, #4] 800704e: 681b ldr r3, [r3, #0] 8007050: 330c adds r3, #12 8007052: 637b str r3, [r7, #52] @ 0x34 8007054: 6b7b ldr r3, [r7, #52] @ 0x34 8007056: e853 3f00 ldrex r3, [r3] 800705a: 633b str r3, [r7, #48] @ 0x30 800705c: 6b3b ldr r3, [r7, #48] @ 0x30 800705e: f423 7390 bic.w r3, r3, #288 @ 0x120 8007062: 64fb str r3, [r7, #76] @ 0x4c 8007064: 687b ldr r3, [r7, #4] 8007066: 681b ldr r3, [r3, #0] 8007068: 330c adds r3, #12 800706a: 6cfa ldr r2, [r7, #76] @ 0x4c 800706c: 643a str r2, [r7, #64] @ 0x40 800706e: 63fb str r3, [r7, #60] @ 0x3c 8007070: 6bf9 ldr r1, [r7, #60] @ 0x3c 8007072: 6c3a ldr r2, [r7, #64] @ 0x40 8007074: e841 2300 strex r3, r2, [r1] 8007078: 63bb str r3, [r7, #56] @ 0x38 800707a: 6bbb ldr r3, [r7, #56] @ 0x38 800707c: 2b00 cmp r3, #0 800707e: d1e5 bne.n 800704c 8007080: 687b ldr r3, [r7, #4] 8007082: 681b ldr r3, [r3, #0] 8007084: 3314 adds r3, #20 8007086: 623b str r3, [r7, #32] 8007088: 6a3b ldr r3, [r7, #32] 800708a: e853 3f00 ldrex r3, [r3] 800708e: 61fb str r3, [r7, #28] 8007090: 69fb ldr r3, [r7, #28] 8007092: f023 0301 bic.w r3, r3, #1 8007096: 64bb str r3, [r7, #72] @ 0x48 8007098: 687b ldr r3, [r7, #4] 800709a: 681b ldr r3, [r3, #0] 800709c: 3314 adds r3, #20 800709e: 6cba ldr r2, [r7, #72] @ 0x48 80070a0: 62fa str r2, [r7, #44] @ 0x2c 80070a2: 62bb str r3, [r7, #40] @ 0x28 80070a4: 6ab9 ldr r1, [r7, #40] @ 0x28 80070a6: 6afa ldr r2, [r7, #44] @ 0x2c 80070a8: e841 2300 strex r3, r2, [r1] 80070ac: 627b str r3, [r7, #36] @ 0x24 80070ae: 6a7b ldr r3, [r7, #36] @ 0x24 80070b0: 2b00 cmp r3, #0 80070b2: d1e5 bne.n 8007080 80070b4: 687b ldr r3, [r7, #4] 80070b6: 6b1b ldr r3, [r3, #48] @ 0x30 80070b8: 2b01 cmp r3, #1 80070ba: d119 bne.n 80070f0 80070bc: 687b ldr r3, [r7, #4] 80070be: 681b ldr r3, [r3, #0] 80070c0: 330c adds r3, #12 80070c2: 60fb str r3, [r7, #12] 80070c4: 68fb ldr r3, [r7, #12] 80070c6: e853 3f00 ldrex r3, [r3] 80070ca: 60bb str r3, [r7, #8] 80070cc: 68bb ldr r3, [r7, #8] 80070ce: f023 0310 bic.w r3, r3, #16 80070d2: 647b str r3, [r7, #68] @ 0x44 80070d4: 687b ldr r3, [r7, #4] 80070d6: 681b ldr r3, [r3, #0] 80070d8: 330c adds r3, #12 80070da: 6c7a ldr r2, [r7, #68] @ 0x44 80070dc: 61ba str r2, [r7, #24] 80070de: 617b str r3, [r7, #20] 80070e0: 6979 ldr r1, [r7, #20] 80070e2: 69ba ldr r2, [r7, #24] 80070e4: e841 2300 strex r3, r2, [r1] 80070e8: 613b str r3, [r7, #16] 80070ea: 693b ldr r3, [r7, #16] 80070ec: 2b00 cmp r3, #0 80070ee: d1e5 bne.n 80070bc 80070f0: 687b ldr r3, [r7, #4] 80070f2: 2220 movs r2, #32 80070f4: f883 2042 strb.w r2, [r3, #66] @ 0x42 80070f8: 687b ldr r3, [r7, #4] 80070fa: 2200 movs r2, #0 80070fc: 631a str r2, [r3, #48] @ 0x30 80070fe: bf00 nop 8007100: 3754 adds r7, #84 @ 0x54 8007102: 46bd mov sp, r7 8007104: f85d 7b04 ldr.w r7, [sp], #4 8007108: 4770 bx lr 0800710a : 800710a: b580 push {r7, lr} 800710c: b084 sub sp, #16 800710e: af00 add r7, sp, #0 8007110: 6078 str r0, [r7, #4] 8007112: 687b ldr r3, [r7, #4] 8007114: 6b9b ldr r3, [r3, #56] @ 0x38 8007116: 60fb str r3, [r7, #12] 8007118: 68fb ldr r3, [r7, #12] 800711a: 2200 movs r2, #0 800711c: 85da strh r2, [r3, #46] @ 0x2e 800711e: 68f8 ldr r0, [r7, #12] 8007120: f7f9 fe4c bl 8000dbc 8007124: bf00 nop 8007126: 3710 adds r7, #16 8007128: 46bd mov sp, r7 800712a: bd80 pop {r7, pc} 0800712c : 800712c: b480 push {r7} 800712e: b085 sub sp, #20 8007130: af00 add r7, sp, #0 8007132: 6078 str r0, [r7, #4] 8007134: 687b ldr r3, [r7, #4] 8007136: f893 3041 ldrb.w r3, [r3, #65] @ 0x41 800713a: b2db uxtb r3, r3 800713c: 2b21 cmp r3, #33 @ 0x21 800713e: d13e bne.n 80071be 8007140: 687b ldr r3, [r7, #4] 8007142: 689b ldr r3, [r3, #8] 8007144: f5b3 5f80 cmp.w r3, #4096 @ 0x1000 8007148: d114 bne.n 8007174 800714a: 687b ldr r3, [r7, #4] 800714c: 691b ldr r3, [r3, #16] 800714e: 2b00 cmp r3, #0 8007150: d110 bne.n 8007174 8007152: 687b ldr r3, [r7, #4] 8007154: 6a1b ldr r3, [r3, #32] 8007156: 60fb str r3, [r7, #12] 8007158: 68fb ldr r3, [r7, #12] 800715a: 881b ldrh r3, [r3, #0] 800715c: 461a mov r2, r3 800715e: 687b ldr r3, [r7, #4] 8007160: 681b ldr r3, [r3, #0] 8007162: f3c2 0208 ubfx r2, r2, #0, #9 8007166: 605a str r2, [r3, #4] 8007168: 687b ldr r3, [r7, #4] 800716a: 6a1b ldr r3, [r3, #32] 800716c: 1c9a adds r2, r3, #2 800716e: 687b ldr r3, [r7, #4] 8007170: 621a str r2, [r3, #32] 8007172: e008 b.n 8007186 8007174: 687b ldr r3, [r7, #4] 8007176: 6a1b ldr r3, [r3, #32] 8007178: 1c59 adds r1, r3, #1 800717a: 687a ldr r2, [r7, #4] 800717c: 6211 str r1, [r2, #32] 800717e: 781a ldrb r2, [r3, #0] 8007180: 687b ldr r3, [r7, #4] 8007182: 681b ldr r3, [r3, #0] 8007184: 605a str r2, [r3, #4] 8007186: 687b ldr r3, [r7, #4] 8007188: 8cdb ldrh r3, [r3, #38] @ 0x26 800718a: b29b uxth r3, r3 800718c: 3b01 subs r3, #1 800718e: b29b uxth r3, r3 8007190: 687a ldr r2, [r7, #4] 8007192: 4619 mov r1, r3 8007194: 84d1 strh r1, [r2, #38] @ 0x26 8007196: 2b00 cmp r3, #0 8007198: d10f bne.n 80071ba 800719a: 687b ldr r3, [r7, #4] 800719c: 681b ldr r3, [r3, #0] 800719e: 68da ldr r2, [r3, #12] 80071a0: 687b ldr r3, [r7, #4] 80071a2: 681b ldr r3, [r3, #0] 80071a4: f022 0280 bic.w r2, r2, #128 @ 0x80 80071a8: 60da str r2, [r3, #12] 80071aa: 687b ldr r3, [r7, #4] 80071ac: 681b ldr r3, [r3, #0] 80071ae: 68da ldr r2, [r3, #12] 80071b0: 687b ldr r3, [r7, #4] 80071b2: 681b ldr r3, [r3, #0] 80071b4: f042 0240 orr.w r2, r2, #64 @ 0x40 80071b8: 60da str r2, [r3, #12] 80071ba: 2300 movs r3, #0 80071bc: e000 b.n 80071c0 80071be: 2302 movs r3, #2 80071c0: 4618 mov r0, r3 80071c2: 3714 adds r7, #20 80071c4: 46bd mov sp, r7 80071c6: f85d 7b04 ldr.w r7, [sp], #4 80071ca: 4770 bx lr 080071cc : 80071cc: b580 push {r7, lr} 80071ce: b082 sub sp, #8 80071d0: af00 add r7, sp, #0 80071d2: 6078 str r0, [r7, #4] 80071d4: 687b ldr r3, [r7, #4] 80071d6: 681b ldr r3, [r3, #0] 80071d8: 68da ldr r2, [r3, #12] 80071da: 687b ldr r3, [r7, #4] 80071dc: 681b ldr r3, [r3, #0] 80071de: f022 0240 bic.w r2, r2, #64 @ 0x40 80071e2: 60da str r2, [r3, #12] 80071e4: 687b ldr r3, [r7, #4] 80071e6: 2220 movs r2, #32 80071e8: f883 2041 strb.w r2, [r3, #65] @ 0x41 80071ec: 6878 ldr r0, [r7, #4] 80071ee: f7ff fcd7 bl 8006ba0 80071f2: 2300 movs r3, #0 80071f4: 4618 mov r0, r3 80071f6: 3708 adds r7, #8 80071f8: 46bd mov sp, r7 80071fa: bd80 pop {r7, pc} 080071fc : 80071fc: b580 push {r7, lr} 80071fe: b08c sub sp, #48 @ 0x30 8007200: af00 add r7, sp, #0 8007202: 6078 str r0, [r7, #4] 8007204: 2300 movs r3, #0 8007206: 62fb str r3, [r7, #44] @ 0x2c 8007208: 2300 movs r3, #0 800720a: 62bb str r3, [r7, #40] @ 0x28 800720c: 687b ldr r3, [r7, #4] 800720e: f893 3042 ldrb.w r3, [r3, #66] @ 0x42 8007212: b2db uxtb r3, r3 8007214: 2b22 cmp r3, #34 @ 0x22 8007216: f040 80aa bne.w 800736e 800721a: 687b ldr r3, [r7, #4] 800721c: 689b ldr r3, [r3, #8] 800721e: f5b3 5f80 cmp.w r3, #4096 @ 0x1000 8007222: d115 bne.n 8007250 8007224: 687b ldr r3, [r7, #4] 8007226: 691b ldr r3, [r3, #16] 8007228: 2b00 cmp r3, #0 800722a: d111 bne.n 8007250 800722c: 687b ldr r3, [r7, #4] 800722e: 6a9b ldr r3, [r3, #40] @ 0x28 8007230: 62bb str r3, [r7, #40] @ 0x28 8007232: 687b ldr r3, [r7, #4] 8007234: 681b ldr r3, [r3, #0] 8007236: 685b ldr r3, [r3, #4] 8007238: b29b uxth r3, r3 800723a: f3c3 0308 ubfx r3, r3, #0, #9 800723e: b29a uxth r2, r3 8007240: 6abb ldr r3, [r7, #40] @ 0x28 8007242: 801a strh r2, [r3, #0] 8007244: 687b ldr r3, [r7, #4] 8007246: 6a9b ldr r3, [r3, #40] @ 0x28 8007248: 1c9a adds r2, r3, #2 800724a: 687b ldr r3, [r7, #4] 800724c: 629a str r2, [r3, #40] @ 0x28 800724e: e024 b.n 800729a 8007250: 687b ldr r3, [r7, #4] 8007252: 6a9b ldr r3, [r3, #40] @ 0x28 8007254: 62fb str r3, [r7, #44] @ 0x2c 8007256: 687b ldr r3, [r7, #4] 8007258: 689b ldr r3, [r3, #8] 800725a: f5b3 5f80 cmp.w r3, #4096 @ 0x1000 800725e: d007 beq.n 8007270 8007260: 687b ldr r3, [r7, #4] 8007262: 689b ldr r3, [r3, #8] 8007264: 2b00 cmp r3, #0 8007266: d10a bne.n 800727e 8007268: 687b ldr r3, [r7, #4] 800726a: 691b ldr r3, [r3, #16] 800726c: 2b00 cmp r3, #0 800726e: d106 bne.n 800727e 8007270: 687b ldr r3, [r7, #4] 8007272: 681b ldr r3, [r3, #0] 8007274: 685b ldr r3, [r3, #4] 8007276: b2da uxtb r2, r3 8007278: 6afb ldr r3, [r7, #44] @ 0x2c 800727a: 701a strb r2, [r3, #0] 800727c: e008 b.n 8007290 800727e: 687b ldr r3, [r7, #4] 8007280: 681b ldr r3, [r3, #0] 8007282: 685b ldr r3, [r3, #4] 8007284: b2db uxtb r3, r3 8007286: f003 037f and.w r3, r3, #127 @ 0x7f 800728a: b2da uxtb r2, r3 800728c: 6afb ldr r3, [r7, #44] @ 0x2c 800728e: 701a strb r2, [r3, #0] 8007290: 687b ldr r3, [r7, #4] 8007292: 6a9b ldr r3, [r3, #40] @ 0x28 8007294: 1c5a adds r2, r3, #1 8007296: 687b ldr r3, [r7, #4] 8007298: 629a str r2, [r3, #40] @ 0x28 800729a: 687b ldr r3, [r7, #4] 800729c: 8ddb ldrh r3, [r3, #46] @ 0x2e 800729e: b29b uxth r3, r3 80072a0: 3b01 subs r3, #1 80072a2: b29b uxth r3, r3 80072a4: 687a ldr r2, [r7, #4] 80072a6: 4619 mov r1, r3 80072a8: 85d1 strh r1, [r2, #46] @ 0x2e 80072aa: 2b00 cmp r3, #0 80072ac: d15d bne.n 800736a 80072ae: 687b ldr r3, [r7, #4] 80072b0: 681b ldr r3, [r3, #0] 80072b2: 68da ldr r2, [r3, #12] 80072b4: 687b ldr r3, [r7, #4] 80072b6: 681b ldr r3, [r3, #0] 80072b8: f022 0220 bic.w r2, r2, #32 80072bc: 60da str r2, [r3, #12] 80072be: 687b ldr r3, [r7, #4] 80072c0: 681b ldr r3, [r3, #0] 80072c2: 68da ldr r2, [r3, #12] 80072c4: 687b ldr r3, [r7, #4] 80072c6: 681b ldr r3, [r3, #0] 80072c8: f422 7280 bic.w r2, r2, #256 @ 0x100 80072cc: 60da str r2, [r3, #12] 80072ce: 687b ldr r3, [r7, #4] 80072d0: 681b ldr r3, [r3, #0] 80072d2: 695a ldr r2, [r3, #20] 80072d4: 687b ldr r3, [r7, #4] 80072d6: 681b ldr r3, [r3, #0] 80072d8: f022 0201 bic.w r2, r2, #1 80072dc: 615a str r2, [r3, #20] 80072de: 687b ldr r3, [r7, #4] 80072e0: 2220 movs r2, #32 80072e2: f883 2042 strb.w r2, [r3, #66] @ 0x42 80072e6: 687b ldr r3, [r7, #4] 80072e8: 2200 movs r2, #0 80072ea: 635a str r2, [r3, #52] @ 0x34 80072ec: 687b ldr r3, [r7, #4] 80072ee: 6b1b ldr r3, [r3, #48] @ 0x30 80072f0: 2b01 cmp r3, #1 80072f2: d135 bne.n 8007360 80072f4: 687b ldr r3, [r7, #4] 80072f6: 2200 movs r2, #0 80072f8: 631a str r2, [r3, #48] @ 0x30 80072fa: 687b ldr r3, [r7, #4] 80072fc: 681b ldr r3, [r3, #0] 80072fe: 330c adds r3, #12 8007300: 617b str r3, [r7, #20] 8007302: 697b ldr r3, [r7, #20] 8007304: e853 3f00 ldrex r3, [r3] 8007308: 613b str r3, [r7, #16] 800730a: 693b ldr r3, [r7, #16] 800730c: f023 0310 bic.w r3, r3, #16 8007310: 627b str r3, [r7, #36] @ 0x24 8007312: 687b ldr r3, [r7, #4] 8007314: 681b ldr r3, [r3, #0] 8007316: 330c adds r3, #12 8007318: 6a7a ldr r2, [r7, #36] @ 0x24 800731a: 623a str r2, [r7, #32] 800731c: 61fb str r3, [r7, #28] 800731e: 69f9 ldr r1, [r7, #28] 8007320: 6a3a ldr r2, [r7, #32] 8007322: e841 2300 strex r3, r2, [r1] 8007326: 61bb str r3, [r7, #24] 8007328: 69bb ldr r3, [r7, #24] 800732a: 2b00 cmp r3, #0 800732c: d1e5 bne.n 80072fa 800732e: 687b ldr r3, [r7, #4] 8007330: 681b ldr r3, [r3, #0] 8007332: 681b ldr r3, [r3, #0] 8007334: f003 0310 and.w r3, r3, #16 8007338: 2b10 cmp r3, #16 800733a: d10a bne.n 8007352 800733c: 2300 movs r3, #0 800733e: 60fb str r3, [r7, #12] 8007340: 687b ldr r3, [r7, #4] 8007342: 681b ldr r3, [r3, #0] 8007344: 681b ldr r3, [r3, #0] 8007346: 60fb str r3, [r7, #12] 8007348: 687b ldr r3, [r7, #4] 800734a: 681b ldr r3, [r3, #0] 800734c: 685b ldr r3, [r3, #4] 800734e: 60fb str r3, [r7, #12] 8007350: 68fb ldr r3, [r7, #12] 8007352: 687b ldr r3, [r7, #4] 8007354: 8d9b ldrh r3, [r3, #44] @ 0x2c 8007356: 4619 mov r1, r3 8007358: 6878 ldr r0, [r7, #4] 800735a: f7ff fc3f bl 8006bdc 800735e: e002 b.n 8007366 8007360: 6878 ldr r0, [r7, #4] 8007362: f7f9 fccf bl 8000d04 8007366: 2300 movs r3, #0 8007368: e002 b.n 8007370 800736a: 2300 movs r3, #0 800736c: e000 b.n 8007370 800736e: 2302 movs r3, #2 8007370: 4618 mov r0, r3 8007372: 3730 adds r7, #48 @ 0x30 8007374: 46bd mov sp, r7 8007376: bd80 pop {r7, pc} 08007378 : 8007378: e92d 4fb0 stmdb sp!, {r4, r5, r7, r8, r9, sl, fp, lr} 800737c: b0c0 sub sp, #256 @ 0x100 800737e: af00 add r7, sp, #0 8007380: f8c7 00f4 str.w r0, [r7, #244] @ 0xf4 8007384: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 8007388: 681b ldr r3, [r3, #0] 800738a: 691b ldr r3, [r3, #16] 800738c: f423 5040 bic.w r0, r3, #12288 @ 0x3000 8007390: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 8007394: 68d9 ldr r1, [r3, #12] 8007396: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 800739a: 681a ldr r2, [r3, #0] 800739c: ea40 0301 orr.w r3, r0, r1 80073a0: 6113 str r3, [r2, #16] 80073a2: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073a6: 689a ldr r2, [r3, #8] 80073a8: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073ac: 691b ldr r3, [r3, #16] 80073ae: 431a orrs r2, r3 80073b0: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073b4: 695b ldr r3, [r3, #20] 80073b6: 431a orrs r2, r3 80073b8: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073bc: 69db ldr r3, [r3, #28] 80073be: 4313 orrs r3, r2 80073c0: f8c7 30f8 str.w r3, [r7, #248] @ 0xf8 80073c4: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073c8: 681b ldr r3, [r3, #0] 80073ca: 68db ldr r3, [r3, #12] 80073cc: f423 4116 bic.w r1, r3, #38400 @ 0x9600 80073d0: f021 010c bic.w r1, r1, #12 80073d4: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073d8: 681a ldr r2, [r3, #0] 80073da: f8d7 30f8 ldr.w r3, [r7, #248] @ 0xf8 80073de: 430b orrs r3, r1 80073e0: 60d3 str r3, [r2, #12] 80073e2: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073e6: 681b ldr r3, [r3, #0] 80073e8: 695b ldr r3, [r3, #20] 80073ea: f423 7040 bic.w r0, r3, #768 @ 0x300 80073ee: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073f2: 6999 ldr r1, [r3, #24] 80073f4: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80073f8: 681a ldr r2, [r3, #0] 80073fa: ea40 0301 orr.w r3, r0, r1 80073fe: 6153 str r3, [r2, #20] 8007400: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 8007404: 681a ldr r2, [r3, #0] 8007406: 4b8f ldr r3, [pc, #572] @ (8007644 ) 8007408: 429a cmp r2, r3 800740a: d005 beq.n 8007418 800740c: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 8007410: 681a ldr r2, [r3, #0] 8007412: 4b8d ldr r3, [pc, #564] @ (8007648 ) 8007414: 429a cmp r2, r3 8007416: d104 bne.n 8007422 8007418: f7fd f960 bl 80046dc 800741c: f8c7 00fc str.w r0, [r7, #252] @ 0xfc 8007420: e003 b.n 800742a 8007422: f7fd f947 bl 80046b4 8007426: f8c7 00fc str.w r0, [r7, #252] @ 0xfc 800742a: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 800742e: 69db ldr r3, [r3, #28] 8007430: f5b3 4f00 cmp.w r3, #32768 @ 0x8000 8007434: f040 810c bne.w 8007650 8007438: f8d7 30fc ldr.w r3, [r7, #252] @ 0xfc 800743c: 2200 movs r2, #0 800743e: f8c7 30e8 str.w r3, [r7, #232] @ 0xe8 8007442: f8c7 20ec str.w r2, [r7, #236] @ 0xec 8007446: e9d7 453a ldrd r4, r5, [r7, #232] @ 0xe8 800744a: 4622 mov r2, r4 800744c: 462b mov r3, r5 800744e: 1891 adds r1, r2, r2 8007450: 65b9 str r1, [r7, #88] @ 0x58 8007452: 415b adcs r3, r3 8007454: 65fb str r3, [r7, #92] @ 0x5c 8007456: e9d7 2316 ldrd r2, r3, [r7, #88] @ 0x58 800745a: 4621 mov r1, r4 800745c: eb12 0801 adds.w r8, r2, r1 8007460: 4629 mov r1, r5 8007462: eb43 0901 adc.w r9, r3, r1 8007466: f04f 0200 mov.w r2, #0 800746a: f04f 0300 mov.w r3, #0 800746e: ea4f 03c9 mov.w r3, r9, lsl #3 8007472: ea43 7358 orr.w r3, r3, r8, lsr #29 8007476: ea4f 02c8 mov.w r2, r8, lsl #3 800747a: 4690 mov r8, r2 800747c: 4699 mov r9, r3 800747e: 4623 mov r3, r4 8007480: eb18 0303 adds.w r3, r8, r3 8007484: f8c7 30e0 str.w r3, [r7, #224] @ 0xe0 8007488: 462b mov r3, r5 800748a: eb49 0303 adc.w r3, r9, r3 800748e: f8c7 30e4 str.w r3, [r7, #228] @ 0xe4 8007492: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 8007496: 685b ldr r3, [r3, #4] 8007498: 2200 movs r2, #0 800749a: f8c7 30d8 str.w r3, [r7, #216] @ 0xd8 800749e: f8c7 20dc str.w r2, [r7, #220] @ 0xdc 80074a2: e9d7 1236 ldrd r1, r2, [r7, #216] @ 0xd8 80074a6: 460b mov r3, r1 80074a8: 18db adds r3, r3, r3 80074aa: 653b str r3, [r7, #80] @ 0x50 80074ac: 4613 mov r3, r2 80074ae: eb42 0303 adc.w r3, r2, r3 80074b2: 657b str r3, [r7, #84] @ 0x54 80074b4: e9d7 2314 ldrd r2, r3, [r7, #80] @ 0x50 80074b8: e9d7 0138 ldrd r0, r1, [r7, #224] @ 0xe0 80074bc: f7f8 fea2 bl 8000204 <__aeabi_uldivmod> 80074c0: 4602 mov r2, r0 80074c2: 460b mov r3, r1 80074c4: 4b61 ldr r3, [pc, #388] @ (800764c ) 80074c6: fba3 2302 umull r2, r3, r3, r2 80074ca: 095b lsrs r3, r3, #5 80074cc: 011c lsls r4, r3, #4 80074ce: f8d7 30fc ldr.w r3, [r7, #252] @ 0xfc 80074d2: 2200 movs r2, #0 80074d4: f8c7 30d0 str.w r3, [r7, #208] @ 0xd0 80074d8: f8c7 20d4 str.w r2, [r7, #212] @ 0xd4 80074dc: e9d7 8934 ldrd r8, r9, [r7, #208] @ 0xd0 80074e0: 4642 mov r2, r8 80074e2: 464b mov r3, r9 80074e4: 1891 adds r1, r2, r2 80074e6: 64b9 str r1, [r7, #72] @ 0x48 80074e8: 415b adcs r3, r3 80074ea: 64fb str r3, [r7, #76] @ 0x4c 80074ec: e9d7 2312 ldrd r2, r3, [r7, #72] @ 0x48 80074f0: 4641 mov r1, r8 80074f2: eb12 0a01 adds.w sl, r2, r1 80074f6: 4649 mov r1, r9 80074f8: eb43 0b01 adc.w fp, r3, r1 80074fc: f04f 0200 mov.w r2, #0 8007500: f04f 0300 mov.w r3, #0 8007504: ea4f 03cb mov.w r3, fp, lsl #3 8007508: ea43 735a orr.w r3, r3, sl, lsr #29 800750c: ea4f 02ca mov.w r2, sl, lsl #3 8007510: 4692 mov sl, r2 8007512: 469b mov fp, r3 8007514: 4643 mov r3, r8 8007516: eb1a 0303 adds.w r3, sl, r3 800751a: f8c7 30c8 str.w r3, [r7, #200] @ 0xc8 800751e: 464b mov r3, r9 8007520: eb4b 0303 adc.w r3, fp, r3 8007524: f8c7 30cc str.w r3, [r7, #204] @ 0xcc 8007528: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 800752c: 685b ldr r3, [r3, #4] 800752e: 2200 movs r2, #0 8007530: f8c7 30c0 str.w r3, [r7, #192] @ 0xc0 8007534: f8c7 20c4 str.w r2, [r7, #196] @ 0xc4 8007538: e9d7 1230 ldrd r1, r2, [r7, #192] @ 0xc0 800753c: 460b mov r3, r1 800753e: 18db adds r3, r3, r3 8007540: 643b str r3, [r7, #64] @ 0x40 8007542: 4613 mov r3, r2 8007544: eb42 0303 adc.w r3, r2, r3 8007548: 647b str r3, [r7, #68] @ 0x44 800754a: e9d7 2310 ldrd r2, r3, [r7, #64] @ 0x40 800754e: e9d7 0132 ldrd r0, r1, [r7, #200] @ 0xc8 8007552: f7f8 fe57 bl 8000204 <__aeabi_uldivmod> 8007556: 4602 mov r2, r0 8007558: 460b mov r3, r1 800755a: 4611 mov r1, r2 800755c: 4b3b ldr r3, [pc, #236] @ (800764c ) 800755e: fba3 2301 umull r2, r3, r3, r1 8007562: 095b lsrs r3, r3, #5 8007564: 2264 movs r2, #100 @ 0x64 8007566: fb02 f303 mul.w r3, r2, r3 800756a: 1acb subs r3, r1, r3 800756c: 00db lsls r3, r3, #3 800756e: f103 0232 add.w r2, r3, #50 @ 0x32 8007572: 4b36 ldr r3, [pc, #216] @ (800764c ) 8007574: fba3 2302 umull r2, r3, r3, r2 8007578: 095b lsrs r3, r3, #5 800757a: 005b lsls r3, r3, #1 800757c: f403 73f8 and.w r3, r3, #496 @ 0x1f0 8007580: 441c add r4, r3 8007582: f8d7 30fc ldr.w r3, [r7, #252] @ 0xfc 8007586: 2200 movs r2, #0 8007588: f8c7 30b8 str.w r3, [r7, #184] @ 0xb8 800758c: f8c7 20bc str.w r2, [r7, #188] @ 0xbc 8007590: e9d7 892e ldrd r8, r9, [r7, #184] @ 0xb8 8007594: 4642 mov r2, r8 8007596: 464b mov r3, r9 8007598: 1891 adds r1, r2, r2 800759a: 63b9 str r1, [r7, #56] @ 0x38 800759c: 415b adcs r3, r3 800759e: 63fb str r3, [r7, #60] @ 0x3c 80075a0: e9d7 230e ldrd r2, r3, [r7, #56] @ 0x38 80075a4: 4641 mov r1, r8 80075a6: 1851 adds r1, r2, r1 80075a8: 6339 str r1, [r7, #48] @ 0x30 80075aa: 4649 mov r1, r9 80075ac: 414b adcs r3, r1 80075ae: 637b str r3, [r7, #52] @ 0x34 80075b0: f04f 0200 mov.w r2, #0 80075b4: f04f 0300 mov.w r3, #0 80075b8: e9d7 ab0c ldrd sl, fp, [r7, #48] @ 0x30 80075bc: 4659 mov r1, fp 80075be: 00cb lsls r3, r1, #3 80075c0: 4651 mov r1, sl 80075c2: ea43 7351 orr.w r3, r3, r1, lsr #29 80075c6: 4651 mov r1, sl 80075c8: 00ca lsls r2, r1, #3 80075ca: 4610 mov r0, r2 80075cc: 4619 mov r1, r3 80075ce: 4603 mov r3, r0 80075d0: 4642 mov r2, r8 80075d2: 189b adds r3, r3, r2 80075d4: f8c7 30b0 str.w r3, [r7, #176] @ 0xb0 80075d8: 464b mov r3, r9 80075da: 460a mov r2, r1 80075dc: eb42 0303 adc.w r3, r2, r3 80075e0: f8c7 30b4 str.w r3, [r7, #180] @ 0xb4 80075e4: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80075e8: 685b ldr r3, [r3, #4] 80075ea: 2200 movs r2, #0 80075ec: f8c7 30a8 str.w r3, [r7, #168] @ 0xa8 80075f0: f8c7 20ac str.w r2, [r7, #172] @ 0xac 80075f4: e9d7 122a ldrd r1, r2, [r7, #168] @ 0xa8 80075f8: 460b mov r3, r1 80075fa: 18db adds r3, r3, r3 80075fc: 62bb str r3, [r7, #40] @ 0x28 80075fe: 4613 mov r3, r2 8007600: eb42 0303 adc.w r3, r2, r3 8007604: 62fb str r3, [r7, #44] @ 0x2c 8007606: e9d7 230a ldrd r2, r3, [r7, #40] @ 0x28 800760a: e9d7 012c ldrd r0, r1, [r7, #176] @ 0xb0 800760e: f7f8 fdf9 bl 8000204 <__aeabi_uldivmod> 8007612: 4602 mov r2, r0 8007614: 460b mov r3, r1 8007616: 4b0d ldr r3, [pc, #52] @ (800764c ) 8007618: fba3 1302 umull r1, r3, r3, r2 800761c: 095b lsrs r3, r3, #5 800761e: 2164 movs r1, #100 @ 0x64 8007620: fb01 f303 mul.w r3, r1, r3 8007624: 1ad3 subs r3, r2, r3 8007626: 00db lsls r3, r3, #3 8007628: 3332 adds r3, #50 @ 0x32 800762a: 4a08 ldr r2, [pc, #32] @ (800764c ) 800762c: fba2 2303 umull r2, r3, r2, r3 8007630: 095b lsrs r3, r3, #5 8007632: f003 0207 and.w r2, r3, #7 8007636: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 800763a: 681b ldr r3, [r3, #0] 800763c: 4422 add r2, r4 800763e: 609a str r2, [r3, #8] 8007640: e106 b.n 8007850 8007642: bf00 nop 8007644: 40011000 .word 0x40011000 8007648: 40011400 .word 0x40011400 800764c: 51eb851f .word 0x51eb851f 8007650: f8d7 30fc ldr.w r3, [r7, #252] @ 0xfc 8007654: 2200 movs r2, #0 8007656: f8c7 30a0 str.w r3, [r7, #160] @ 0xa0 800765a: f8c7 20a4 str.w r2, [r7, #164] @ 0xa4 800765e: e9d7 8928 ldrd r8, r9, [r7, #160] @ 0xa0 8007662: 4642 mov r2, r8 8007664: 464b mov r3, r9 8007666: 1891 adds r1, r2, r2 8007668: 6239 str r1, [r7, #32] 800766a: 415b adcs r3, r3 800766c: 627b str r3, [r7, #36] @ 0x24 800766e: e9d7 2308 ldrd r2, r3, [r7, #32] 8007672: 4641 mov r1, r8 8007674: 1854 adds r4, r2, r1 8007676: 4649 mov r1, r9 8007678: eb43 0501 adc.w r5, r3, r1 800767c: f04f 0200 mov.w r2, #0 8007680: f04f 0300 mov.w r3, #0 8007684: 00eb lsls r3, r5, #3 8007686: ea43 7354 orr.w r3, r3, r4, lsr #29 800768a: 00e2 lsls r2, r4, #3 800768c: 4614 mov r4, r2 800768e: 461d mov r5, r3 8007690: 4643 mov r3, r8 8007692: 18e3 adds r3, r4, r3 8007694: f8c7 3098 str.w r3, [r7, #152] @ 0x98 8007698: 464b mov r3, r9 800769a: eb45 0303 adc.w r3, r5, r3 800769e: f8c7 309c str.w r3, [r7, #156] @ 0x9c 80076a2: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80076a6: 685b ldr r3, [r3, #4] 80076a8: 2200 movs r2, #0 80076aa: f8c7 3090 str.w r3, [r7, #144] @ 0x90 80076ae: f8c7 2094 str.w r2, [r7, #148] @ 0x94 80076b2: f04f 0200 mov.w r2, #0 80076b6: f04f 0300 mov.w r3, #0 80076ba: e9d7 4524 ldrd r4, r5, [r7, #144] @ 0x90 80076be: 4629 mov r1, r5 80076c0: 008b lsls r3, r1, #2 80076c2: 4621 mov r1, r4 80076c4: ea43 7391 orr.w r3, r3, r1, lsr #30 80076c8: 4621 mov r1, r4 80076ca: 008a lsls r2, r1, #2 80076cc: e9d7 0126 ldrd r0, r1, [r7, #152] @ 0x98 80076d0: f7f8 fd98 bl 8000204 <__aeabi_uldivmod> 80076d4: 4602 mov r2, r0 80076d6: 460b mov r3, r1 80076d8: 4b60 ldr r3, [pc, #384] @ (800785c ) 80076da: fba3 2302 umull r2, r3, r3, r2 80076de: 095b lsrs r3, r3, #5 80076e0: 011c lsls r4, r3, #4 80076e2: f8d7 30fc ldr.w r3, [r7, #252] @ 0xfc 80076e6: 2200 movs r2, #0 80076e8: f8c7 3088 str.w r3, [r7, #136] @ 0x88 80076ec: f8c7 208c str.w r2, [r7, #140] @ 0x8c 80076f0: e9d7 8922 ldrd r8, r9, [r7, #136] @ 0x88 80076f4: 4642 mov r2, r8 80076f6: 464b mov r3, r9 80076f8: 1891 adds r1, r2, r2 80076fa: 61b9 str r1, [r7, #24] 80076fc: 415b adcs r3, r3 80076fe: 61fb str r3, [r7, #28] 8007700: e9d7 2306 ldrd r2, r3, [r7, #24] 8007704: 4641 mov r1, r8 8007706: 1851 adds r1, r2, r1 8007708: 6139 str r1, [r7, #16] 800770a: 4649 mov r1, r9 800770c: 414b adcs r3, r1 800770e: 617b str r3, [r7, #20] 8007710: f04f 0200 mov.w r2, #0 8007714: f04f 0300 mov.w r3, #0 8007718: e9d7 ab04 ldrd sl, fp, [r7, #16] 800771c: 4659 mov r1, fp 800771e: 00cb lsls r3, r1, #3 8007720: 4651 mov r1, sl 8007722: ea43 7351 orr.w r3, r3, r1, lsr #29 8007726: 4651 mov r1, sl 8007728: 00ca lsls r2, r1, #3 800772a: 4610 mov r0, r2 800772c: 4619 mov r1, r3 800772e: 4603 mov r3, r0 8007730: 4642 mov r2, r8 8007732: 189b adds r3, r3, r2 8007734: f8c7 3080 str.w r3, [r7, #128] @ 0x80 8007738: 464b mov r3, r9 800773a: 460a mov r2, r1 800773c: eb42 0303 adc.w r3, r2, r3 8007740: f8c7 3084 str.w r3, [r7, #132] @ 0x84 8007744: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 8007748: 685b ldr r3, [r3, #4] 800774a: 2200 movs r2, #0 800774c: 67bb str r3, [r7, #120] @ 0x78 800774e: 67fa str r2, [r7, #124] @ 0x7c 8007750: f04f 0200 mov.w r2, #0 8007754: f04f 0300 mov.w r3, #0 8007758: e9d7 891e ldrd r8, r9, [r7, #120] @ 0x78 800775c: 4649 mov r1, r9 800775e: 008b lsls r3, r1, #2 8007760: 4641 mov r1, r8 8007762: ea43 7391 orr.w r3, r3, r1, lsr #30 8007766: 4641 mov r1, r8 8007768: 008a lsls r2, r1, #2 800776a: e9d7 0120 ldrd r0, r1, [r7, #128] @ 0x80 800776e: f7f8 fd49 bl 8000204 <__aeabi_uldivmod> 8007772: 4602 mov r2, r0 8007774: 460b mov r3, r1 8007776: 4611 mov r1, r2 8007778: 4b38 ldr r3, [pc, #224] @ (800785c ) 800777a: fba3 2301 umull r2, r3, r3, r1 800777e: 095b lsrs r3, r3, #5 8007780: 2264 movs r2, #100 @ 0x64 8007782: fb02 f303 mul.w r3, r2, r3 8007786: 1acb subs r3, r1, r3 8007788: 011b lsls r3, r3, #4 800778a: 3332 adds r3, #50 @ 0x32 800778c: 4a33 ldr r2, [pc, #204] @ (800785c ) 800778e: fba2 2303 umull r2, r3, r2, r3 8007792: 095b lsrs r3, r3, #5 8007794: f003 03f0 and.w r3, r3, #240 @ 0xf0 8007798: 441c add r4, r3 800779a: f8d7 30fc ldr.w r3, [r7, #252] @ 0xfc 800779e: 2200 movs r2, #0 80077a0: 673b str r3, [r7, #112] @ 0x70 80077a2: 677a str r2, [r7, #116] @ 0x74 80077a4: e9d7 891c ldrd r8, r9, [r7, #112] @ 0x70 80077a8: 4642 mov r2, r8 80077aa: 464b mov r3, r9 80077ac: 1891 adds r1, r2, r2 80077ae: 60b9 str r1, [r7, #8] 80077b0: 415b adcs r3, r3 80077b2: 60fb str r3, [r7, #12] 80077b4: e9d7 2302 ldrd r2, r3, [r7, #8] 80077b8: 4641 mov r1, r8 80077ba: 1851 adds r1, r2, r1 80077bc: 6039 str r1, [r7, #0] 80077be: 4649 mov r1, r9 80077c0: 414b adcs r3, r1 80077c2: 607b str r3, [r7, #4] 80077c4: f04f 0200 mov.w r2, #0 80077c8: f04f 0300 mov.w r3, #0 80077cc: e9d7 ab00 ldrd sl, fp, [r7] 80077d0: 4659 mov r1, fp 80077d2: 00cb lsls r3, r1, #3 80077d4: 4651 mov r1, sl 80077d6: ea43 7351 orr.w r3, r3, r1, lsr #29 80077da: 4651 mov r1, sl 80077dc: 00ca lsls r2, r1, #3 80077de: 4610 mov r0, r2 80077e0: 4619 mov r1, r3 80077e2: 4603 mov r3, r0 80077e4: 4642 mov r2, r8 80077e6: 189b adds r3, r3, r2 80077e8: 66bb str r3, [r7, #104] @ 0x68 80077ea: 464b mov r3, r9 80077ec: 460a mov r2, r1 80077ee: eb42 0303 adc.w r3, r2, r3 80077f2: 66fb str r3, [r7, #108] @ 0x6c 80077f4: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 80077f8: 685b ldr r3, [r3, #4] 80077fa: 2200 movs r2, #0 80077fc: 663b str r3, [r7, #96] @ 0x60 80077fe: 667a str r2, [r7, #100] @ 0x64 8007800: f04f 0200 mov.w r2, #0 8007804: f04f 0300 mov.w r3, #0 8007808: e9d7 8918 ldrd r8, r9, [r7, #96] @ 0x60 800780c: 4649 mov r1, r9 800780e: 008b lsls r3, r1, #2 8007810: 4641 mov r1, r8 8007812: ea43 7391 orr.w r3, r3, r1, lsr #30 8007816: 4641 mov r1, r8 8007818: 008a lsls r2, r1, #2 800781a: e9d7 011a ldrd r0, r1, [r7, #104] @ 0x68 800781e: f7f8 fcf1 bl 8000204 <__aeabi_uldivmod> 8007822: 4602 mov r2, r0 8007824: 460b mov r3, r1 8007826: 4b0d ldr r3, [pc, #52] @ (800785c ) 8007828: fba3 1302 umull r1, r3, r3, r2 800782c: 095b lsrs r3, r3, #5 800782e: 2164 movs r1, #100 @ 0x64 8007830: fb01 f303 mul.w r3, r1, r3 8007834: 1ad3 subs r3, r2, r3 8007836: 011b lsls r3, r3, #4 8007838: 3332 adds r3, #50 @ 0x32 800783a: 4a08 ldr r2, [pc, #32] @ (800785c ) 800783c: fba2 2303 umull r2, r3, r2, r3 8007840: 095b lsrs r3, r3, #5 8007842: f003 020f and.w r2, r3, #15 8007846: f8d7 30f4 ldr.w r3, [r7, #244] @ 0xf4 800784a: 681b ldr r3, [r3, #0] 800784c: 4422 add r2, r4 800784e: 609a str r2, [r3, #8] 8007850: bf00 nop 8007852: f507 7780 add.w r7, r7, #256 @ 0x100 8007856: 46bd mov sp, r7 8007858: e8bd 8fb0 ldmia.w sp!, {r4, r5, r7, r8, r9, sl, fp, pc} 800785c: 51eb851f .word 0x51eb851f 08007860 : 8007860: b084 sub sp, #16 8007862: b580 push {r7, lr} 8007864: b084 sub sp, #16 8007866: af00 add r7, sp, #0 8007868: 6078 str r0, [r7, #4] 800786a: f107 001c add.w r0, r7, #28 800786e: e880 000e stmia.w r0, {r1, r2, r3} 8007872: f897 3021 ldrb.w r3, [r7, #33] @ 0x21 8007876: 2b01 cmp r3, #1 8007878: d123 bne.n 80078c2 800787a: 687b ldr r3, [r7, #4] 800787c: 6b9b ldr r3, [r3, #56] @ 0x38 800787e: f423 3280 bic.w r2, r3, #65536 @ 0x10000 8007882: 687b ldr r3, [r7, #4] 8007884: 639a str r2, [r3, #56] @ 0x38 8007886: 687b ldr r3, [r7, #4] 8007888: 68db ldr r3, [r3, #12] 800788a: f423 0384 bic.w r3, r3, #4325376 @ 0x420000 800788e: f023 0340 bic.w r3, r3, #64 @ 0x40 8007892: 687a ldr r2, [r7, #4] 8007894: 60d3 str r3, [r2, #12] 8007896: 687b ldr r3, [r7, #4] 8007898: 68db ldr r3, [r3, #12] 800789a: f423 1240 bic.w r2, r3, #3145728 @ 0x300000 800789e: 687b ldr r3, [r7, #4] 80078a0: 60da str r2, [r3, #12] 80078a2: f897 3028 ldrb.w r3, [r7, #40] @ 0x28 80078a6: 2b01 cmp r3, #1 80078a8: d105 bne.n 80078b6 80078aa: 687b ldr r3, [r7, #4] 80078ac: 68db ldr r3, [r3, #12] 80078ae: f443 1280 orr.w r2, r3, #1048576 @ 0x100000 80078b2: 687b ldr r3, [r7, #4] 80078b4: 60da str r2, [r3, #12] 80078b6: 6878 ldr r0, [r7, #4] 80078b8: f001 fae2 bl 8008e80 80078bc: 4603 mov r3, r0 80078be: 73fb strb r3, [r7, #15] 80078c0: e01b b.n 80078fa 80078c2: 687b ldr r3, [r7, #4] 80078c4: 68db ldr r3, [r3, #12] 80078c6: f043 0240 orr.w r2, r3, #64 @ 0x40 80078ca: 687b ldr r3, [r7, #4] 80078cc: 60da str r2, [r3, #12] 80078ce: 6878 ldr r0, [r7, #4] 80078d0: f001 fad6 bl 8008e80 80078d4: 4603 mov r3, r0 80078d6: 73fb strb r3, [r7, #15] 80078d8: f897 3025 ldrb.w r3, [r7, #37] @ 0x25 80078dc: 2b00 cmp r3, #0 80078de: d106 bne.n 80078ee 80078e0: 687b ldr r3, [r7, #4] 80078e2: 6b9b ldr r3, [r3, #56] @ 0x38 80078e4: f443 3280 orr.w r2, r3, #65536 @ 0x10000 80078e8: 687b ldr r3, [r7, #4] 80078ea: 639a str r2, [r3, #56] @ 0x38 80078ec: e005 b.n 80078fa 80078ee: 687b ldr r3, [r7, #4] 80078f0: 6b9b ldr r3, [r3, #56] @ 0x38 80078f2: f423 3280 bic.w r2, r3, #65536 @ 0x10000 80078f6: 687b ldr r3, [r7, #4] 80078f8: 639a str r2, [r3, #56] @ 0x38 80078fa: 7fbb ldrb r3, [r7, #30] 80078fc: 2b01 cmp r3, #1 80078fe: d10b bne.n 8007918 8007900: 687b ldr r3, [r7, #4] 8007902: 689b ldr r3, [r3, #8] 8007904: f043 0206 orr.w r2, r3, #6 8007908: 687b ldr r3, [r7, #4] 800790a: 609a str r2, [r3, #8] 800790c: 687b ldr r3, [r7, #4] 800790e: 689b ldr r3, [r3, #8] 8007910: f043 0220 orr.w r2, r3, #32 8007914: 687b ldr r3, [r7, #4] 8007916: 609a str r2, [r3, #8] 8007918: 7bfb ldrb r3, [r7, #15] 800791a: 4618 mov r0, r3 800791c: 3710 adds r7, #16 800791e: 46bd mov sp, r7 8007920: e8bd 4080 ldmia.w sp!, {r7, lr} 8007924: b004 add sp, #16 8007926: 4770 bx lr 08007928 : 8007928: b480 push {r7} 800792a: b087 sub sp, #28 800792c: af00 add r7, sp, #0 800792e: 60f8 str r0, [r7, #12] 8007930: 60b9 str r1, [r7, #8] 8007932: 4613 mov r3, r2 8007934: 71fb strb r3, [r7, #7] 8007936: 79fb ldrb r3, [r7, #7] 8007938: 2b02 cmp r3, #2 800793a: d165 bne.n 8007a08 800793c: 68bb ldr r3, [r7, #8] 800793e: 4a41 ldr r2, [pc, #260] @ (8007a44 ) 8007940: 4293 cmp r3, r2 8007942: d906 bls.n 8007952 8007944: 68bb ldr r3, [r7, #8] 8007946: 4a40 ldr r2, [pc, #256] @ (8007a48 ) 8007948: 4293 cmp r3, r2 800794a: d202 bcs.n 8007952 800794c: 230f movs r3, #15 800794e: 617b str r3, [r7, #20] 8007950: e062 b.n 8007a18 8007952: 68bb ldr r3, [r7, #8] 8007954: 4a3c ldr r2, [pc, #240] @ (8007a48 ) 8007956: 4293 cmp r3, r2 8007958: d306 bcc.n 8007968 800795a: 68bb ldr r3, [r7, #8] 800795c: 4a3b ldr r2, [pc, #236] @ (8007a4c ) 800795e: 4293 cmp r3, r2 8007960: d202 bcs.n 8007968 8007962: 230e movs r3, #14 8007964: 617b str r3, [r7, #20] 8007966: e057 b.n 8007a18 8007968: 68bb ldr r3, [r7, #8] 800796a: 4a38 ldr r2, [pc, #224] @ (8007a4c ) 800796c: 4293 cmp r3, r2 800796e: d306 bcc.n 800797e 8007970: 68bb ldr r3, [r7, #8] 8007972: 4a37 ldr r2, [pc, #220] @ (8007a50 ) 8007974: 4293 cmp r3, r2 8007976: d202 bcs.n 800797e 8007978: 230d movs r3, #13 800797a: 617b str r3, [r7, #20] 800797c: e04c b.n 8007a18 800797e: 68bb ldr r3, [r7, #8] 8007980: 4a33 ldr r2, [pc, #204] @ (8007a50 ) 8007982: 4293 cmp r3, r2 8007984: d306 bcc.n 8007994 8007986: 68bb ldr r3, [r7, #8] 8007988: 4a32 ldr r2, [pc, #200] @ (8007a54 ) 800798a: 4293 cmp r3, r2 800798c: d802 bhi.n 8007994 800798e: 230c movs r3, #12 8007990: 617b str r3, [r7, #20] 8007992: e041 b.n 8007a18 8007994: 68bb ldr r3, [r7, #8] 8007996: 4a2f ldr r2, [pc, #188] @ (8007a54 ) 8007998: 4293 cmp r3, r2 800799a: d906 bls.n 80079aa 800799c: 68bb ldr r3, [r7, #8] 800799e: 4a2e ldr r2, [pc, #184] @ (8007a58 ) 80079a0: 4293 cmp r3, r2 80079a2: d802 bhi.n 80079aa 80079a4: 230b movs r3, #11 80079a6: 617b str r3, [r7, #20] 80079a8: e036 b.n 8007a18 80079aa: 68bb ldr r3, [r7, #8] 80079ac: 4a2a ldr r2, [pc, #168] @ (8007a58 ) 80079ae: 4293 cmp r3, r2 80079b0: d906 bls.n 80079c0 80079b2: 68bb ldr r3, [r7, #8] 80079b4: 4a29 ldr r2, [pc, #164] @ (8007a5c ) 80079b6: 4293 cmp r3, r2 80079b8: d802 bhi.n 80079c0 80079ba: 230a movs r3, #10 80079bc: 617b str r3, [r7, #20] 80079be: e02b b.n 8007a18 80079c0: 68bb ldr r3, [r7, #8] 80079c2: 4a26 ldr r2, [pc, #152] @ (8007a5c ) 80079c4: 4293 cmp r3, r2 80079c6: d906 bls.n 80079d6 80079c8: 68bb ldr r3, [r7, #8] 80079ca: 4a25 ldr r2, [pc, #148] @ (8007a60 ) 80079cc: 4293 cmp r3, r2 80079ce: d202 bcs.n 80079d6 80079d0: 2309 movs r3, #9 80079d2: 617b str r3, [r7, #20] 80079d4: e020 b.n 8007a18 80079d6: 68bb ldr r3, [r7, #8] 80079d8: 4a21 ldr r2, [pc, #132] @ (8007a60 ) 80079da: 4293 cmp r3, r2 80079dc: d306 bcc.n 80079ec 80079de: 68bb ldr r3, [r7, #8] 80079e0: 4a20 ldr r2, [pc, #128] @ (8007a64 ) 80079e2: 4293 cmp r3, r2 80079e4: d802 bhi.n 80079ec 80079e6: 2308 movs r3, #8 80079e8: 617b str r3, [r7, #20] 80079ea: e015 b.n 8007a18 80079ec: 68bb ldr r3, [r7, #8] 80079ee: 4a1d ldr r2, [pc, #116] @ (8007a64 ) 80079f0: 4293 cmp r3, r2 80079f2: d906 bls.n 8007a02 80079f4: 68bb ldr r3, [r7, #8] 80079f6: 4a1c ldr r2, [pc, #112] @ (8007a68 ) 80079f8: 4293 cmp r3, r2 80079fa: d202 bcs.n 8007a02 80079fc: 2307 movs r3, #7 80079fe: 617b str r3, [r7, #20] 8007a00: e00a b.n 8007a18 8007a02: 2306 movs r3, #6 8007a04: 617b str r3, [r7, #20] 8007a06: e007 b.n 8007a18 8007a08: 79fb ldrb r3, [r7, #7] 8007a0a: 2b00 cmp r3, #0 8007a0c: d102 bne.n 8007a14 8007a0e: 2309 movs r3, #9 8007a10: 617b str r3, [r7, #20] 8007a12: e001 b.n 8007a18 8007a14: 2309 movs r3, #9 8007a16: 617b str r3, [r7, #20] 8007a18: 68fb ldr r3, [r7, #12] 8007a1a: 68db ldr r3, [r3, #12] 8007a1c: f423 5270 bic.w r2, r3, #15360 @ 0x3c00 8007a20: 68fb ldr r3, [r7, #12] 8007a22: 60da str r2, [r3, #12] 8007a24: 68fb ldr r3, [r7, #12] 8007a26: 68da ldr r2, [r3, #12] 8007a28: 697b ldr r3, [r7, #20] 8007a2a: 029b lsls r3, r3, #10 8007a2c: f403 5370 and.w r3, r3, #15360 @ 0x3c00 8007a30: 431a orrs r2, r3 8007a32: 68fb ldr r3, [r7, #12] 8007a34: 60da str r2, [r3, #12] 8007a36: 2300 movs r3, #0 8007a38: 4618 mov r0, r3 8007a3a: 371c adds r7, #28 8007a3c: 46bd mov sp, r7 8007a3e: f85d 7b04 ldr.w r7, [sp], #4 8007a42: 4770 bx lr 8007a44: 00d8acbf .word 0x00d8acbf 8007a48: 00e4e1c0 .word 0x00e4e1c0 8007a4c: 00f42400 .word 0x00f42400 8007a50: 01067380 .word 0x01067380 8007a54: 011a499f .word 0x011a499f 8007a58: 01312cff .word 0x01312cff 8007a5c: 014ca43f .word 0x014ca43f 8007a60: 016e3600 .word 0x016e3600 8007a64: 01a6ab1f .word 0x01a6ab1f 8007a68: 01e84800 .word 0x01e84800 08007a6c : 8007a6c: b480 push {r7} 8007a6e: b083 sub sp, #12 8007a70: af00 add r7, sp, #0 8007a72: 6078 str r0, [r7, #4] 8007a74: 687b ldr r3, [r7, #4] 8007a76: 689b ldr r3, [r3, #8] 8007a78: f043 0201 orr.w r2, r3, #1 8007a7c: 687b ldr r3, [r7, #4] 8007a7e: 609a str r2, [r3, #8] 8007a80: 2300 movs r3, #0 8007a82: 4618 mov r0, r3 8007a84: 370c adds r7, #12 8007a86: 46bd mov sp, r7 8007a88: f85d 7b04 ldr.w r7, [sp], #4 8007a8c: 4770 bx lr 08007a8e : 8007a8e: b480 push {r7} 8007a90: b083 sub sp, #12 8007a92: af00 add r7, sp, #0 8007a94: 6078 str r0, [r7, #4] 8007a96: 687b ldr r3, [r7, #4] 8007a98: 689b ldr r3, [r3, #8] 8007a9a: f023 0201 bic.w r2, r3, #1 8007a9e: 687b ldr r3, [r7, #4] 8007aa0: 609a str r2, [r3, #8] 8007aa2: 2300 movs r3, #0 8007aa4: 4618 mov r0, r3 8007aa6: 370c adds r7, #12 8007aa8: 46bd mov sp, r7 8007aaa: f85d 7b04 ldr.w r7, [sp], #4 8007aae: 4770 bx lr 08007ab0 : 8007ab0: b580 push {r7, lr} 8007ab2: b084 sub sp, #16 8007ab4: af00 add r7, sp, #0 8007ab6: 6078 str r0, [r7, #4] 8007ab8: 460b mov r3, r1 8007aba: 70fb strb r3, [r7, #3] 8007abc: 2300 movs r3, #0 8007abe: 60fb str r3, [r7, #12] 8007ac0: 687b ldr r3, [r7, #4] 8007ac2: 68db ldr r3, [r3, #12] 8007ac4: f023 42c0 bic.w r2, r3, #1610612736 @ 0x60000000 8007ac8: 687b ldr r3, [r7, #4] 8007aca: 60da str r2, [r3, #12] 8007acc: 78fb ldrb r3, [r7, #3] 8007ace: 2b01 cmp r3, #1 8007ad0: d115 bne.n 8007afe 8007ad2: 687b ldr r3, [r7, #4] 8007ad4: 68db ldr r3, [r3, #12] 8007ad6: f043 5200 orr.w r2, r3, #536870912 @ 0x20000000 8007ada: 687b ldr r3, [r7, #4] 8007adc: 60da str r2, [r3, #12] 8007ade: 200a movs r0, #10 8007ae0: f7fa fa2e bl 8001f40 8007ae4: 68fb ldr r3, [r7, #12] 8007ae6: 330a adds r3, #10 8007ae8: 60fb str r3, [r7, #12] 8007aea: 6878 ldr r0, [r7, #4] 8007aec: f001 f939 bl 8008d62 8007af0: 4603 mov r3, r0 8007af2: 2b01 cmp r3, #1 8007af4: d01e beq.n 8007b34 8007af6: 68fb ldr r3, [r7, #12] 8007af8: 2bc7 cmp r3, #199 @ 0xc7 8007afa: d9f0 bls.n 8007ade 8007afc: e01a b.n 8007b34 8007afe: 78fb ldrb r3, [r7, #3] 8007b00: 2b00 cmp r3, #0 8007b02: d115 bne.n 8007b30 8007b04: 687b ldr r3, [r7, #4] 8007b06: 68db ldr r3, [r3, #12] 8007b08: f043 4280 orr.w r2, r3, #1073741824 @ 0x40000000 8007b0c: 687b ldr r3, [r7, #4] 8007b0e: 60da str r2, [r3, #12] 8007b10: 200a movs r0, #10 8007b12: f7fa fa15 bl 8001f40 8007b16: 68fb ldr r3, [r7, #12] 8007b18: 330a adds r3, #10 8007b1a: 60fb str r3, [r7, #12] 8007b1c: 6878 ldr r0, [r7, #4] 8007b1e: f001 f920 bl 8008d62 8007b22: 4603 mov r3, r0 8007b24: 2b00 cmp r3, #0 8007b26: d005 beq.n 8007b34 8007b28: 68fb ldr r3, [r7, #12] 8007b2a: 2bc7 cmp r3, #199 @ 0xc7 8007b2c: d9f0 bls.n 8007b10 8007b2e: e001 b.n 8007b34 8007b30: 2301 movs r3, #1 8007b32: e005 b.n 8007b40 8007b34: 68fb ldr r3, [r7, #12] 8007b36: 2bc8 cmp r3, #200 @ 0xc8 8007b38: d101 bne.n 8007b3e 8007b3a: 2301 movs r3, #1 8007b3c: e000 b.n 8007b40 8007b3e: 2300 movs r3, #0 8007b40: 4618 mov r0, r3 8007b42: 3710 adds r7, #16 8007b44: 46bd mov sp, r7 8007b46: bd80 pop {r7, pc} 08007b48 : 8007b48: b084 sub sp, #16 8007b4a: b580 push {r7, lr} 8007b4c: b086 sub sp, #24 8007b4e: af00 add r7, sp, #0 8007b50: 6078 str r0, [r7, #4] 8007b52: f107 0024 add.w r0, r7, #36 @ 0x24 8007b56: e880 000e stmia.w r0, {r1, r2, r3} 8007b5a: 2300 movs r3, #0 8007b5c: 75fb strb r3, [r7, #23] 8007b5e: 687b ldr r3, [r7, #4] 8007b60: 60fb str r3, [r7, #12] 8007b62: 2300 movs r3, #0 8007b64: 613b str r3, [r7, #16] 8007b66: e009 b.n 8007b7c 8007b68: 687a ldr r2, [r7, #4] 8007b6a: 693b ldr r3, [r7, #16] 8007b6c: 3340 adds r3, #64 @ 0x40 8007b6e: 009b lsls r3, r3, #2 8007b70: 4413 add r3, r2 8007b72: 2200 movs r2, #0 8007b74: 605a str r2, [r3, #4] 8007b76: 693b ldr r3, [r7, #16] 8007b78: 3301 adds r3, #1 8007b7a: 613b str r3, [r7, #16] 8007b7c: 693b ldr r3, [r7, #16] 8007b7e: 2b0e cmp r3, #14 8007b80: d9f2 bls.n 8007b68 8007b82: f897 302e ldrb.w r3, [r7, #46] @ 0x2e 8007b86: 2b00 cmp r3, #0 8007b88: d11c bne.n 8007bc4 8007b8a: 68fb ldr r3, [r7, #12] 8007b8c: f503 6300 add.w r3, r3, #2048 @ 0x800 8007b90: 685b ldr r3, [r3, #4] 8007b92: 68fa ldr r2, [r7, #12] 8007b94: f502 6200 add.w r2, r2, #2048 @ 0x800 8007b98: f043 0302 orr.w r3, r3, #2 8007b9c: 6053 str r3, [r2, #4] 8007b9e: 687b ldr r3, [r7, #4] 8007ba0: 6b9b ldr r3, [r3, #56] @ 0x38 8007ba2: f423 1200 bic.w r2, r3, #2097152 @ 0x200000 8007ba6: 687b ldr r3, [r7, #4] 8007ba8: 639a str r2, [r3, #56] @ 0x38 8007baa: 687b ldr r3, [r7, #4] 8007bac: 681b ldr r3, [r3, #0] 8007bae: f043 0240 orr.w r2, r3, #64 @ 0x40 8007bb2: 687b ldr r3, [r7, #4] 8007bb4: 601a str r2, [r3, #0] 8007bb6: 687b ldr r3, [r7, #4] 8007bb8: 681b ldr r3, [r3, #0] 8007bba: f043 0280 orr.w r2, r3, #128 @ 0x80 8007bbe: 687b ldr r3, [r7, #4] 8007bc0: 601a str r2, [r3, #0] 8007bc2: e005 b.n 8007bd0 8007bc4: 687b ldr r3, [r7, #4] 8007bc6: 6b9b ldr r3, [r3, #56] @ 0x38 8007bc8: f443 1200 orr.w r2, r3, #2097152 @ 0x200000 8007bcc: 687b ldr r3, [r7, #4] 8007bce: 639a str r2, [r3, #56] @ 0x38 8007bd0: 68fb ldr r3, [r7, #12] 8007bd2: f503 6360 add.w r3, r3, #3584 @ 0xe00 8007bd6: 461a mov r2, r3 8007bd8: 2300 movs r3, #0 8007bda: 6013 str r3, [r2, #0] 8007bdc: f897 3029 ldrb.w r3, [r7, #41] @ 0x29 8007be0: 2b01 cmp r3, #1 8007be2: d10d bne.n 8007c00 8007be4: f897 3027 ldrb.w r3, [r7, #39] @ 0x27 8007be8: 2b00 cmp r3, #0 8007bea: d104 bne.n 8007bf6 8007bec: 2100 movs r1, #0 8007bee: 6878 ldr r0, [r7, #4] 8007bf0: f000 f968 bl 8007ec4 8007bf4: e008 b.n 8007c08 8007bf6: 2101 movs r1, #1 8007bf8: 6878 ldr r0, [r7, #4] 8007bfa: f000 f963 bl 8007ec4 8007bfe: e003 b.n 8007c08 8007c00: 2103 movs r1, #3 8007c02: 6878 ldr r0, [r7, #4] 8007c04: f000 f95e bl 8007ec4 8007c08: 2110 movs r1, #16 8007c0a: 6878 ldr r0, [r7, #4] 8007c0c: f000 f8fa bl 8007e04 8007c10: 4603 mov r3, r0 8007c12: 2b00 cmp r3, #0 8007c14: d001 beq.n 8007c1a 8007c16: 2301 movs r3, #1 8007c18: 75fb strb r3, [r7, #23] 8007c1a: 6878 ldr r0, [r7, #4] 8007c1c: f000 f924 bl 8007e68 8007c20: 4603 mov r3, r0 8007c22: 2b00 cmp r3, #0 8007c24: d001 beq.n 8007c2a 8007c26: 2301 movs r3, #1 8007c28: 75fb strb r3, [r7, #23] 8007c2a: 68fb ldr r3, [r7, #12] 8007c2c: f503 6300 add.w r3, r3, #2048 @ 0x800 8007c30: 461a mov r2, r3 8007c32: 2300 movs r3, #0 8007c34: 6113 str r3, [r2, #16] 8007c36: 68fb ldr r3, [r7, #12] 8007c38: f503 6300 add.w r3, r3, #2048 @ 0x800 8007c3c: 461a mov r2, r3 8007c3e: 2300 movs r3, #0 8007c40: 6153 str r3, [r2, #20] 8007c42: 68fb ldr r3, [r7, #12] 8007c44: f503 6300 add.w r3, r3, #2048 @ 0x800 8007c48: 461a mov r2, r3 8007c4a: 2300 movs r3, #0 8007c4c: 61d3 str r3, [r2, #28] 8007c4e: 2300 movs r3, #0 8007c50: 613b str r3, [r7, #16] 8007c52: e043 b.n 8007cdc 8007c54: 693b ldr r3, [r7, #16] 8007c56: 015a lsls r2, r3, #5 8007c58: 68fb ldr r3, [r7, #12] 8007c5a: 4413 add r3, r2 8007c5c: f503 6310 add.w r3, r3, #2304 @ 0x900 8007c60: 681b ldr r3, [r3, #0] 8007c62: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 8007c66: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8007c6a: d118 bne.n 8007c9e 8007c6c: 693b ldr r3, [r7, #16] 8007c6e: 2b00 cmp r3, #0 8007c70: d10a bne.n 8007c88 8007c72: 693b ldr r3, [r7, #16] 8007c74: 015a lsls r2, r3, #5 8007c76: 68fb ldr r3, [r7, #12] 8007c78: 4413 add r3, r2 8007c7a: f503 6310 add.w r3, r3, #2304 @ 0x900 8007c7e: 461a mov r2, r3 8007c80: f04f 6300 mov.w r3, #134217728 @ 0x8000000 8007c84: 6013 str r3, [r2, #0] 8007c86: e013 b.n 8007cb0 8007c88: 693b ldr r3, [r7, #16] 8007c8a: 015a lsls r2, r3, #5 8007c8c: 68fb ldr r3, [r7, #12] 8007c8e: 4413 add r3, r2 8007c90: f503 6310 add.w r3, r3, #2304 @ 0x900 8007c94: 461a mov r2, r3 8007c96: f04f 4390 mov.w r3, #1207959552 @ 0x48000000 8007c9a: 6013 str r3, [r2, #0] 8007c9c: e008 b.n 8007cb0 8007c9e: 693b ldr r3, [r7, #16] 8007ca0: 015a lsls r2, r3, #5 8007ca2: 68fb ldr r3, [r7, #12] 8007ca4: 4413 add r3, r2 8007ca6: f503 6310 add.w r3, r3, #2304 @ 0x900 8007caa: 461a mov r2, r3 8007cac: 2300 movs r3, #0 8007cae: 6013 str r3, [r2, #0] 8007cb0: 693b ldr r3, [r7, #16] 8007cb2: 015a lsls r2, r3, #5 8007cb4: 68fb ldr r3, [r7, #12] 8007cb6: 4413 add r3, r2 8007cb8: f503 6310 add.w r3, r3, #2304 @ 0x900 8007cbc: 461a mov r2, r3 8007cbe: 2300 movs r3, #0 8007cc0: 6113 str r3, [r2, #16] 8007cc2: 693b ldr r3, [r7, #16] 8007cc4: 015a lsls r2, r3, #5 8007cc6: 68fb ldr r3, [r7, #12] 8007cc8: 4413 add r3, r2 8007cca: f503 6310 add.w r3, r3, #2304 @ 0x900 8007cce: 461a mov r2, r3 8007cd0: f64f 337f movw r3, #64383 @ 0xfb7f 8007cd4: 6093 str r3, [r2, #8] 8007cd6: 693b ldr r3, [r7, #16] 8007cd8: 3301 adds r3, #1 8007cda: 613b str r3, [r7, #16] 8007cdc: f897 3024 ldrb.w r3, [r7, #36] @ 0x24 8007ce0: 461a mov r2, r3 8007ce2: 693b ldr r3, [r7, #16] 8007ce4: 4293 cmp r3, r2 8007ce6: d3b5 bcc.n 8007c54 8007ce8: 2300 movs r3, #0 8007cea: 613b str r3, [r7, #16] 8007cec: e043 b.n 8007d76 8007cee: 693b ldr r3, [r7, #16] 8007cf0: 015a lsls r2, r3, #5 8007cf2: 68fb ldr r3, [r7, #12] 8007cf4: 4413 add r3, r2 8007cf6: f503 6330 add.w r3, r3, #2816 @ 0xb00 8007cfa: 681b ldr r3, [r3, #0] 8007cfc: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 8007d00: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8007d04: d118 bne.n 8007d38 8007d06: 693b ldr r3, [r7, #16] 8007d08: 2b00 cmp r3, #0 8007d0a: d10a bne.n 8007d22 8007d0c: 693b ldr r3, [r7, #16] 8007d0e: 015a lsls r2, r3, #5 8007d10: 68fb ldr r3, [r7, #12] 8007d12: 4413 add r3, r2 8007d14: f503 6330 add.w r3, r3, #2816 @ 0xb00 8007d18: 461a mov r2, r3 8007d1a: f04f 6300 mov.w r3, #134217728 @ 0x8000000 8007d1e: 6013 str r3, [r2, #0] 8007d20: e013 b.n 8007d4a 8007d22: 693b ldr r3, [r7, #16] 8007d24: 015a lsls r2, r3, #5 8007d26: 68fb ldr r3, [r7, #12] 8007d28: 4413 add r3, r2 8007d2a: f503 6330 add.w r3, r3, #2816 @ 0xb00 8007d2e: 461a mov r2, r3 8007d30: f04f 4390 mov.w r3, #1207959552 @ 0x48000000 8007d34: 6013 str r3, [r2, #0] 8007d36: e008 b.n 8007d4a 8007d38: 693b ldr r3, [r7, #16] 8007d3a: 015a lsls r2, r3, #5 8007d3c: 68fb ldr r3, [r7, #12] 8007d3e: 4413 add r3, r2 8007d40: f503 6330 add.w r3, r3, #2816 @ 0xb00 8007d44: 461a mov r2, r3 8007d46: 2300 movs r3, #0 8007d48: 6013 str r3, [r2, #0] 8007d4a: 693b ldr r3, [r7, #16] 8007d4c: 015a lsls r2, r3, #5 8007d4e: 68fb ldr r3, [r7, #12] 8007d50: 4413 add r3, r2 8007d52: f503 6330 add.w r3, r3, #2816 @ 0xb00 8007d56: 461a mov r2, r3 8007d58: 2300 movs r3, #0 8007d5a: 6113 str r3, [r2, #16] 8007d5c: 693b ldr r3, [r7, #16] 8007d5e: 015a lsls r2, r3, #5 8007d60: 68fb ldr r3, [r7, #12] 8007d62: 4413 add r3, r2 8007d64: f503 6330 add.w r3, r3, #2816 @ 0xb00 8007d68: 461a mov r2, r3 8007d6a: f64f 337f movw r3, #64383 @ 0xfb7f 8007d6e: 6093 str r3, [r2, #8] 8007d70: 693b ldr r3, [r7, #16] 8007d72: 3301 adds r3, #1 8007d74: 613b str r3, [r7, #16] 8007d76: f897 3024 ldrb.w r3, [r7, #36] @ 0x24 8007d7a: 461a mov r2, r3 8007d7c: 693b ldr r3, [r7, #16] 8007d7e: 4293 cmp r3, r2 8007d80: d3b5 bcc.n 8007cee 8007d82: 68fb ldr r3, [r7, #12] 8007d84: f503 6300 add.w r3, r3, #2048 @ 0x800 8007d88: 691b ldr r3, [r3, #16] 8007d8a: 68fa ldr r2, [r7, #12] 8007d8c: f502 6200 add.w r2, r2, #2048 @ 0x800 8007d90: f423 7380 bic.w r3, r3, #256 @ 0x100 8007d94: 6113 str r3, [r2, #16] 8007d96: 687b ldr r3, [r7, #4] 8007d98: 2200 movs r2, #0 8007d9a: 619a str r2, [r3, #24] 8007d9c: 687b ldr r3, [r7, #4] 8007d9e: f06f 4280 mvn.w r2, #1073741824 @ 0x40000000 8007da2: 615a str r2, [r3, #20] 8007da4: f897 3026 ldrb.w r3, [r7, #38] @ 0x26 8007da8: 2b00 cmp r3, #0 8007daa: d105 bne.n 8007db8 8007dac: 687b ldr r3, [r7, #4] 8007dae: 699b ldr r3, [r3, #24] 8007db0: f043 0210 orr.w r2, r3, #16 8007db4: 687b ldr r3, [r7, #4] 8007db6: 619a str r2, [r3, #24] 8007db8: 687b ldr r3, [r7, #4] 8007dba: 699a ldr r2, [r3, #24] 8007dbc: 4b10 ldr r3, [pc, #64] @ (8007e00 ) 8007dbe: 4313 orrs r3, r2 8007dc0: 687a ldr r2, [r7, #4] 8007dc2: 6193 str r3, [r2, #24] 8007dc4: f897 302a ldrb.w r3, [r7, #42] @ 0x2a 8007dc8: 2b00 cmp r3, #0 8007dca: d005 beq.n 8007dd8 8007dcc: 687b ldr r3, [r7, #4] 8007dce: 699b ldr r3, [r3, #24] 8007dd0: f043 0208 orr.w r2, r3, #8 8007dd4: 687b ldr r3, [r7, #4] 8007dd6: 619a str r2, [r3, #24] 8007dd8: f897 302e ldrb.w r3, [r7, #46] @ 0x2e 8007ddc: 2b01 cmp r3, #1 8007dde: d107 bne.n 8007df0 8007de0: 687b ldr r3, [r7, #4] 8007de2: 699b ldr r3, [r3, #24] 8007de4: f043 4380 orr.w r3, r3, #1073741824 @ 0x40000000 8007de8: f043 0304 orr.w r3, r3, #4 8007dec: 687a ldr r2, [r7, #4] 8007dee: 6193 str r3, [r2, #24] 8007df0: 7dfb ldrb r3, [r7, #23] 8007df2: 4618 mov r0, r3 8007df4: 3718 adds r7, #24 8007df6: 46bd mov sp, r7 8007df8: e8bd 4080 ldmia.w sp!, {r7, lr} 8007dfc: b004 add sp, #16 8007dfe: 4770 bx lr 8007e00: 803c3800 .word 0x803c3800 08007e04 : 8007e04: b480 push {r7} 8007e06: b085 sub sp, #20 8007e08: af00 add r7, sp, #0 8007e0a: 6078 str r0, [r7, #4] 8007e0c: 6039 str r1, [r7, #0] 8007e0e: 2300 movs r3, #0 8007e10: 60fb str r3, [r7, #12] 8007e12: 68fb ldr r3, [r7, #12] 8007e14: 3301 adds r3, #1 8007e16: 60fb str r3, [r7, #12] 8007e18: 68fb ldr r3, [r7, #12] 8007e1a: f1b3 6f70 cmp.w r3, #251658240 @ 0xf000000 8007e1e: d901 bls.n 8007e24 8007e20: 2303 movs r3, #3 8007e22: e01b b.n 8007e5c 8007e24: 687b ldr r3, [r7, #4] 8007e26: 691b ldr r3, [r3, #16] 8007e28: 2b00 cmp r3, #0 8007e2a: daf2 bge.n 8007e12 8007e2c: 2300 movs r3, #0 8007e2e: 60fb str r3, [r7, #12] 8007e30: 683b ldr r3, [r7, #0] 8007e32: 019b lsls r3, r3, #6 8007e34: f043 0220 orr.w r2, r3, #32 8007e38: 687b ldr r3, [r7, #4] 8007e3a: 611a str r2, [r3, #16] 8007e3c: 68fb ldr r3, [r7, #12] 8007e3e: 3301 adds r3, #1 8007e40: 60fb str r3, [r7, #12] 8007e42: 68fb ldr r3, [r7, #12] 8007e44: f1b3 6f70 cmp.w r3, #251658240 @ 0xf000000 8007e48: d901 bls.n 8007e4e 8007e4a: 2303 movs r3, #3 8007e4c: e006 b.n 8007e5c 8007e4e: 687b ldr r3, [r7, #4] 8007e50: 691b ldr r3, [r3, #16] 8007e52: f003 0320 and.w r3, r3, #32 8007e56: 2b20 cmp r3, #32 8007e58: d0f0 beq.n 8007e3c 8007e5a: 2300 movs r3, #0 8007e5c: 4618 mov r0, r3 8007e5e: 3714 adds r7, #20 8007e60: 46bd mov sp, r7 8007e62: f85d 7b04 ldr.w r7, [sp], #4 8007e66: 4770 bx lr 08007e68 : 8007e68: b480 push {r7} 8007e6a: b085 sub sp, #20 8007e6c: af00 add r7, sp, #0 8007e6e: 6078 str r0, [r7, #4] 8007e70: 2300 movs r3, #0 8007e72: 60fb str r3, [r7, #12] 8007e74: 68fb ldr r3, [r7, #12] 8007e76: 3301 adds r3, #1 8007e78: 60fb str r3, [r7, #12] 8007e7a: 68fb ldr r3, [r7, #12] 8007e7c: f1b3 6f70 cmp.w r3, #251658240 @ 0xf000000 8007e80: d901 bls.n 8007e86 8007e82: 2303 movs r3, #3 8007e84: e018 b.n 8007eb8 8007e86: 687b ldr r3, [r7, #4] 8007e88: 691b ldr r3, [r3, #16] 8007e8a: 2b00 cmp r3, #0 8007e8c: daf2 bge.n 8007e74 8007e8e: 2300 movs r3, #0 8007e90: 60fb str r3, [r7, #12] 8007e92: 687b ldr r3, [r7, #4] 8007e94: 2210 movs r2, #16 8007e96: 611a str r2, [r3, #16] 8007e98: 68fb ldr r3, [r7, #12] 8007e9a: 3301 adds r3, #1 8007e9c: 60fb str r3, [r7, #12] 8007e9e: 68fb ldr r3, [r7, #12] 8007ea0: f1b3 6f70 cmp.w r3, #251658240 @ 0xf000000 8007ea4: d901 bls.n 8007eaa 8007ea6: 2303 movs r3, #3 8007ea8: e006 b.n 8007eb8 8007eaa: 687b ldr r3, [r7, #4] 8007eac: 691b ldr r3, [r3, #16] 8007eae: f003 0310 and.w r3, r3, #16 8007eb2: 2b10 cmp r3, #16 8007eb4: d0f0 beq.n 8007e98 8007eb6: 2300 movs r3, #0 8007eb8: 4618 mov r0, r3 8007eba: 3714 adds r7, #20 8007ebc: 46bd mov sp, r7 8007ebe: f85d 7b04 ldr.w r7, [sp], #4 8007ec2: 4770 bx lr 08007ec4 : 8007ec4: b480 push {r7} 8007ec6: b085 sub sp, #20 8007ec8: af00 add r7, sp, #0 8007eca: 6078 str r0, [r7, #4] 8007ecc: 460b mov r3, r1 8007ece: 70fb strb r3, [r7, #3] 8007ed0: 687b ldr r3, [r7, #4] 8007ed2: 60fb str r3, [r7, #12] 8007ed4: 68fb ldr r3, [r7, #12] 8007ed6: f503 6300 add.w r3, r3, #2048 @ 0x800 8007eda: 681a ldr r2, [r3, #0] 8007edc: 78fb ldrb r3, [r7, #3] 8007ede: 68f9 ldr r1, [r7, #12] 8007ee0: f501 6100 add.w r1, r1, #2048 @ 0x800 8007ee4: 4313 orrs r3, r2 8007ee6: 600b str r3, [r1, #0] 8007ee8: 2300 movs r3, #0 8007eea: 4618 mov r0, r3 8007eec: 3714 adds r7, #20 8007eee: 46bd mov sp, r7 8007ef0: f85d 7b04 ldr.w r7, [sp], #4 8007ef4: 4770 bx lr 08007ef6 : 8007ef6: b480 push {r7} 8007ef8: b087 sub sp, #28 8007efa: af00 add r7, sp, #0 8007efc: 6078 str r0, [r7, #4] 8007efe: 687b ldr r3, [r7, #4] 8007f00: 613b str r3, [r7, #16] 8007f02: 693b ldr r3, [r7, #16] 8007f04: f503 6300 add.w r3, r3, #2048 @ 0x800 8007f08: 689b ldr r3, [r3, #8] 8007f0a: f003 0306 and.w r3, r3, #6 8007f0e: 60fb str r3, [r7, #12] 8007f10: 68fb ldr r3, [r7, #12] 8007f12: 2b00 cmp r3, #0 8007f14: d102 bne.n 8007f1c 8007f16: 2300 movs r3, #0 8007f18: 75fb strb r3, [r7, #23] 8007f1a: e00a b.n 8007f32 8007f1c: 68fb ldr r3, [r7, #12] 8007f1e: 2b02 cmp r3, #2 8007f20: d002 beq.n 8007f28 8007f22: 68fb ldr r3, [r7, #12] 8007f24: 2b06 cmp r3, #6 8007f26: d102 bne.n 8007f2e 8007f28: 2302 movs r3, #2 8007f2a: 75fb strb r3, [r7, #23] 8007f2c: e001 b.n 8007f32 8007f2e: 230f movs r3, #15 8007f30: 75fb strb r3, [r7, #23] 8007f32: 7dfb ldrb r3, [r7, #23] 8007f34: 4618 mov r0, r3 8007f36: 371c adds r7, #28 8007f38: 46bd mov sp, r7 8007f3a: f85d 7b04 ldr.w r7, [sp], #4 8007f3e: 4770 bx lr 08007f40 : 8007f40: b480 push {r7} 8007f42: b085 sub sp, #20 8007f44: af00 add r7, sp, #0 8007f46: 6078 str r0, [r7, #4] 8007f48: 6039 str r1, [r7, #0] 8007f4a: 687b ldr r3, [r7, #4] 8007f4c: 60fb str r3, [r7, #12] 8007f4e: 683b ldr r3, [r7, #0] 8007f50: 781b ldrb r3, [r3, #0] 8007f52: 60bb str r3, [r7, #8] 8007f54: 683b ldr r3, [r7, #0] 8007f56: 785b ldrb r3, [r3, #1] 8007f58: 2b01 cmp r3, #1 8007f5a: d13a bne.n 8007fd2 8007f5c: 68fb ldr r3, [r7, #12] 8007f5e: f503 6300 add.w r3, r3, #2048 @ 0x800 8007f62: 69da ldr r2, [r3, #28] 8007f64: 683b ldr r3, [r7, #0] 8007f66: 781b ldrb r3, [r3, #0] 8007f68: f003 030f and.w r3, r3, #15 8007f6c: 2101 movs r1, #1 8007f6e: fa01 f303 lsl.w r3, r1, r3 8007f72: b29b uxth r3, r3 8007f74: 68f9 ldr r1, [r7, #12] 8007f76: f501 6100 add.w r1, r1, #2048 @ 0x800 8007f7a: 4313 orrs r3, r2 8007f7c: 61cb str r3, [r1, #28] 8007f7e: 68bb ldr r3, [r7, #8] 8007f80: 015a lsls r2, r3, #5 8007f82: 68fb ldr r3, [r7, #12] 8007f84: 4413 add r3, r2 8007f86: f503 6310 add.w r3, r3, #2304 @ 0x900 8007f8a: 681b ldr r3, [r3, #0] 8007f8c: f403 4300 and.w r3, r3, #32768 @ 0x8000 8007f90: 2b00 cmp r3, #0 8007f92: d155 bne.n 8008040 8007f94: 68bb ldr r3, [r7, #8] 8007f96: 015a lsls r2, r3, #5 8007f98: 68fb ldr r3, [r7, #12] 8007f9a: 4413 add r3, r2 8007f9c: f503 6310 add.w r3, r3, #2304 @ 0x900 8007fa0: 681a ldr r2, [r3, #0] 8007fa2: 683b ldr r3, [r7, #0] 8007fa4: 689b ldr r3, [r3, #8] 8007fa6: f3c3 010a ubfx r1, r3, #0, #11 8007faa: 683b ldr r3, [r7, #0] 8007fac: 791b ldrb r3, [r3, #4] 8007fae: 049b lsls r3, r3, #18 8007fb0: 4319 orrs r1, r3 8007fb2: 68bb ldr r3, [r7, #8] 8007fb4: 059b lsls r3, r3, #22 8007fb6: 430b orrs r3, r1 8007fb8: 4313 orrs r3, r2 8007fba: 68ba ldr r2, [r7, #8] 8007fbc: 0151 lsls r1, r2, #5 8007fbe: 68fa ldr r2, [r7, #12] 8007fc0: 440a add r2, r1 8007fc2: f502 6210 add.w r2, r2, #2304 @ 0x900 8007fc6: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8007fca: f443 4300 orr.w r3, r3, #32768 @ 0x8000 8007fce: 6013 str r3, [r2, #0] 8007fd0: e036 b.n 8008040 8007fd2: 68fb ldr r3, [r7, #12] 8007fd4: f503 6300 add.w r3, r3, #2048 @ 0x800 8007fd8: 69da ldr r2, [r3, #28] 8007fda: 683b ldr r3, [r7, #0] 8007fdc: 781b ldrb r3, [r3, #0] 8007fde: f003 030f and.w r3, r3, #15 8007fe2: 2101 movs r1, #1 8007fe4: fa01 f303 lsl.w r3, r1, r3 8007fe8: 041b lsls r3, r3, #16 8007fea: 68f9 ldr r1, [r7, #12] 8007fec: f501 6100 add.w r1, r1, #2048 @ 0x800 8007ff0: 4313 orrs r3, r2 8007ff2: 61cb str r3, [r1, #28] 8007ff4: 68bb ldr r3, [r7, #8] 8007ff6: 015a lsls r2, r3, #5 8007ff8: 68fb ldr r3, [r7, #12] 8007ffa: 4413 add r3, r2 8007ffc: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008000: 681b ldr r3, [r3, #0] 8008002: f403 4300 and.w r3, r3, #32768 @ 0x8000 8008006: 2b00 cmp r3, #0 8008008: d11a bne.n 8008040 800800a: 68bb ldr r3, [r7, #8] 800800c: 015a lsls r2, r3, #5 800800e: 68fb ldr r3, [r7, #12] 8008010: 4413 add r3, r2 8008012: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008016: 681a ldr r2, [r3, #0] 8008018: 683b ldr r3, [r7, #0] 800801a: 689b ldr r3, [r3, #8] 800801c: f3c3 010a ubfx r1, r3, #0, #11 8008020: 683b ldr r3, [r7, #0] 8008022: 791b ldrb r3, [r3, #4] 8008024: 049b lsls r3, r3, #18 8008026: 430b orrs r3, r1 8008028: 4313 orrs r3, r2 800802a: 68ba ldr r2, [r7, #8] 800802c: 0151 lsls r1, r2, #5 800802e: 68fa ldr r2, [r7, #12] 8008030: 440a add r2, r1 8008032: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008036: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 800803a: f443 4300 orr.w r3, r3, #32768 @ 0x8000 800803e: 6013 str r3, [r2, #0] 8008040: 2300 movs r3, #0 8008042: 4618 mov r0, r3 8008044: 3714 adds r7, #20 8008046: 46bd mov sp, r7 8008048: f85d 7b04 ldr.w r7, [sp], #4 800804c: 4770 bx lr ... 08008050 : 8008050: b480 push {r7} 8008052: b085 sub sp, #20 8008054: af00 add r7, sp, #0 8008056: 6078 str r0, [r7, #4] 8008058: 6039 str r1, [r7, #0] 800805a: 687b ldr r3, [r7, #4] 800805c: 60fb str r3, [r7, #12] 800805e: 683b ldr r3, [r7, #0] 8008060: 781b ldrb r3, [r3, #0] 8008062: 60bb str r3, [r7, #8] 8008064: 683b ldr r3, [r7, #0] 8008066: 785b ldrb r3, [r3, #1] 8008068: 2b01 cmp r3, #1 800806a: d161 bne.n 8008130 800806c: 68bb ldr r3, [r7, #8] 800806e: 015a lsls r2, r3, #5 8008070: 68fb ldr r3, [r7, #12] 8008072: 4413 add r3, r2 8008074: f503 6310 add.w r3, r3, #2304 @ 0x900 8008078: 681b ldr r3, [r3, #0] 800807a: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 800807e: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8008082: d11f bne.n 80080c4 8008084: 68bb ldr r3, [r7, #8] 8008086: 015a lsls r2, r3, #5 8008088: 68fb ldr r3, [r7, #12] 800808a: 4413 add r3, r2 800808c: f503 6310 add.w r3, r3, #2304 @ 0x900 8008090: 681b ldr r3, [r3, #0] 8008092: 68ba ldr r2, [r7, #8] 8008094: 0151 lsls r1, r2, #5 8008096: 68fa ldr r2, [r7, #12] 8008098: 440a add r2, r1 800809a: f502 6210 add.w r2, r2, #2304 @ 0x900 800809e: f043 6300 orr.w r3, r3, #134217728 @ 0x8000000 80080a2: 6013 str r3, [r2, #0] 80080a4: 68bb ldr r3, [r7, #8] 80080a6: 015a lsls r2, r3, #5 80080a8: 68fb ldr r3, [r7, #12] 80080aa: 4413 add r3, r2 80080ac: f503 6310 add.w r3, r3, #2304 @ 0x900 80080b0: 681b ldr r3, [r3, #0] 80080b2: 68ba ldr r2, [r7, #8] 80080b4: 0151 lsls r1, r2, #5 80080b6: 68fa ldr r2, [r7, #12] 80080b8: 440a add r2, r1 80080ba: f502 6210 add.w r2, r2, #2304 @ 0x900 80080be: f043 4380 orr.w r3, r3, #1073741824 @ 0x40000000 80080c2: 6013 str r3, [r2, #0] 80080c4: 68fb ldr r3, [r7, #12] 80080c6: f503 6300 add.w r3, r3, #2048 @ 0x800 80080ca: 6bda ldr r2, [r3, #60] @ 0x3c 80080cc: 683b ldr r3, [r7, #0] 80080ce: 781b ldrb r3, [r3, #0] 80080d0: f003 030f and.w r3, r3, #15 80080d4: 2101 movs r1, #1 80080d6: fa01 f303 lsl.w r3, r1, r3 80080da: b29b uxth r3, r3 80080dc: 43db mvns r3, r3 80080de: 68f9 ldr r1, [r7, #12] 80080e0: f501 6100 add.w r1, r1, #2048 @ 0x800 80080e4: 4013 ands r3, r2 80080e6: 63cb str r3, [r1, #60] @ 0x3c 80080e8: 68fb ldr r3, [r7, #12] 80080ea: f503 6300 add.w r3, r3, #2048 @ 0x800 80080ee: 69da ldr r2, [r3, #28] 80080f0: 683b ldr r3, [r7, #0] 80080f2: 781b ldrb r3, [r3, #0] 80080f4: f003 030f and.w r3, r3, #15 80080f8: 2101 movs r1, #1 80080fa: fa01 f303 lsl.w r3, r1, r3 80080fe: b29b uxth r3, r3 8008100: 43db mvns r3, r3 8008102: 68f9 ldr r1, [r7, #12] 8008104: f501 6100 add.w r1, r1, #2048 @ 0x800 8008108: 4013 ands r3, r2 800810a: 61cb str r3, [r1, #28] 800810c: 68bb ldr r3, [r7, #8] 800810e: 015a lsls r2, r3, #5 8008110: 68fb ldr r3, [r7, #12] 8008112: 4413 add r3, r2 8008114: f503 6310 add.w r3, r3, #2304 @ 0x900 8008118: 681a ldr r2, [r3, #0] 800811a: 68bb ldr r3, [r7, #8] 800811c: 0159 lsls r1, r3, #5 800811e: 68fb ldr r3, [r7, #12] 8008120: 440b add r3, r1 8008122: f503 6310 add.w r3, r3, #2304 @ 0x900 8008126: 4619 mov r1, r3 8008128: 4b35 ldr r3, [pc, #212] @ (8008200 ) 800812a: 4013 ands r3, r2 800812c: 600b str r3, [r1, #0] 800812e: e060 b.n 80081f2 8008130: 68bb ldr r3, [r7, #8] 8008132: 015a lsls r2, r3, #5 8008134: 68fb ldr r3, [r7, #12] 8008136: 4413 add r3, r2 8008138: f503 6330 add.w r3, r3, #2816 @ 0xb00 800813c: 681b ldr r3, [r3, #0] 800813e: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 8008142: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8008146: d11f bne.n 8008188 8008148: 68bb ldr r3, [r7, #8] 800814a: 015a lsls r2, r3, #5 800814c: 68fb ldr r3, [r7, #12] 800814e: 4413 add r3, r2 8008150: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008154: 681b ldr r3, [r3, #0] 8008156: 68ba ldr r2, [r7, #8] 8008158: 0151 lsls r1, r2, #5 800815a: 68fa ldr r2, [r7, #12] 800815c: 440a add r2, r1 800815e: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008162: f043 6300 orr.w r3, r3, #134217728 @ 0x8000000 8008166: 6013 str r3, [r2, #0] 8008168: 68bb ldr r3, [r7, #8] 800816a: 015a lsls r2, r3, #5 800816c: 68fb ldr r3, [r7, #12] 800816e: 4413 add r3, r2 8008170: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008174: 681b ldr r3, [r3, #0] 8008176: 68ba ldr r2, [r7, #8] 8008178: 0151 lsls r1, r2, #5 800817a: 68fa ldr r2, [r7, #12] 800817c: 440a add r2, r1 800817e: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008182: f043 4380 orr.w r3, r3, #1073741824 @ 0x40000000 8008186: 6013 str r3, [r2, #0] 8008188: 68fb ldr r3, [r7, #12] 800818a: f503 6300 add.w r3, r3, #2048 @ 0x800 800818e: 6bda ldr r2, [r3, #60] @ 0x3c 8008190: 683b ldr r3, [r7, #0] 8008192: 781b ldrb r3, [r3, #0] 8008194: f003 030f and.w r3, r3, #15 8008198: 2101 movs r1, #1 800819a: fa01 f303 lsl.w r3, r1, r3 800819e: 041b lsls r3, r3, #16 80081a0: 43db mvns r3, r3 80081a2: 68f9 ldr r1, [r7, #12] 80081a4: f501 6100 add.w r1, r1, #2048 @ 0x800 80081a8: 4013 ands r3, r2 80081aa: 63cb str r3, [r1, #60] @ 0x3c 80081ac: 68fb ldr r3, [r7, #12] 80081ae: f503 6300 add.w r3, r3, #2048 @ 0x800 80081b2: 69da ldr r2, [r3, #28] 80081b4: 683b ldr r3, [r7, #0] 80081b6: 781b ldrb r3, [r3, #0] 80081b8: f003 030f and.w r3, r3, #15 80081bc: 2101 movs r1, #1 80081be: fa01 f303 lsl.w r3, r1, r3 80081c2: 041b lsls r3, r3, #16 80081c4: 43db mvns r3, r3 80081c6: 68f9 ldr r1, [r7, #12] 80081c8: f501 6100 add.w r1, r1, #2048 @ 0x800 80081cc: 4013 ands r3, r2 80081ce: 61cb str r3, [r1, #28] 80081d0: 68bb ldr r3, [r7, #8] 80081d2: 015a lsls r2, r3, #5 80081d4: 68fb ldr r3, [r7, #12] 80081d6: 4413 add r3, r2 80081d8: f503 6330 add.w r3, r3, #2816 @ 0xb00 80081dc: 681a ldr r2, [r3, #0] 80081de: 68bb ldr r3, [r7, #8] 80081e0: 0159 lsls r1, r3, #5 80081e2: 68fb ldr r3, [r7, #12] 80081e4: 440b add r3, r1 80081e6: f503 6330 add.w r3, r3, #2816 @ 0xb00 80081ea: 4619 mov r1, r3 80081ec: 4b05 ldr r3, [pc, #20] @ (8008204 ) 80081ee: 4013 ands r3, r2 80081f0: 600b str r3, [r1, #0] 80081f2: 2300 movs r3, #0 80081f4: 4618 mov r0, r3 80081f6: 3714 adds r7, #20 80081f8: 46bd mov sp, r7 80081fa: f85d 7b04 ldr.w r7, [sp], #4 80081fe: 4770 bx lr 8008200: ec337800 .word 0xec337800 8008204: eff37800 .word 0xeff37800 08008208 : 8008208: b580 push {r7, lr} 800820a: b08a sub sp, #40 @ 0x28 800820c: af02 add r7, sp, #8 800820e: 60f8 str r0, [r7, #12] 8008210: 60b9 str r1, [r7, #8] 8008212: 4613 mov r3, r2 8008214: 71fb strb r3, [r7, #7] 8008216: 68fb ldr r3, [r7, #12] 8008218: 61fb str r3, [r7, #28] 800821a: 68bb ldr r3, [r7, #8] 800821c: 781b ldrb r3, [r3, #0] 800821e: 61bb str r3, [r7, #24] 8008220: 68bb ldr r3, [r7, #8] 8008222: 785b ldrb r3, [r3, #1] 8008224: 2b01 cmp r3, #1 8008226: f040 817f bne.w 8008528 800822a: 68bb ldr r3, [r7, #8] 800822c: 691b ldr r3, [r3, #16] 800822e: 2b00 cmp r3, #0 8008230: d132 bne.n 8008298 8008232: 69bb ldr r3, [r7, #24] 8008234: 015a lsls r2, r3, #5 8008236: 69fb ldr r3, [r7, #28] 8008238: 4413 add r3, r2 800823a: f503 6310 add.w r3, r3, #2304 @ 0x900 800823e: 691b ldr r3, [r3, #16] 8008240: 69ba ldr r2, [r7, #24] 8008242: 0151 lsls r1, r2, #5 8008244: 69fa ldr r2, [r7, #28] 8008246: 440a add r2, r1 8008248: f502 6210 add.w r2, r2, #2304 @ 0x900 800824c: f023 53ff bic.w r3, r3, #534773760 @ 0x1fe00000 8008250: f423 13c0 bic.w r3, r3, #1572864 @ 0x180000 8008254: 6113 str r3, [r2, #16] 8008256: 69bb ldr r3, [r7, #24] 8008258: 015a lsls r2, r3, #5 800825a: 69fb ldr r3, [r7, #28] 800825c: 4413 add r3, r2 800825e: f503 6310 add.w r3, r3, #2304 @ 0x900 8008262: 691b ldr r3, [r3, #16] 8008264: 69ba ldr r2, [r7, #24] 8008266: 0151 lsls r1, r2, #5 8008268: 69fa ldr r2, [r7, #28] 800826a: 440a add r2, r1 800826c: f502 6210 add.w r2, r2, #2304 @ 0x900 8008270: f443 2300 orr.w r3, r3, #524288 @ 0x80000 8008274: 6113 str r3, [r2, #16] 8008276: 69bb ldr r3, [r7, #24] 8008278: 015a lsls r2, r3, #5 800827a: 69fb ldr r3, [r7, #28] 800827c: 4413 add r3, r2 800827e: f503 6310 add.w r3, r3, #2304 @ 0x900 8008282: 691b ldr r3, [r3, #16] 8008284: 69ba ldr r2, [r7, #24] 8008286: 0151 lsls r1, r2, #5 8008288: 69fa ldr r2, [r7, #28] 800828a: 440a add r2, r1 800828c: f502 6210 add.w r2, r2, #2304 @ 0x900 8008290: 0cdb lsrs r3, r3, #19 8008292: 04db lsls r3, r3, #19 8008294: 6113 str r3, [r2, #16] 8008296: e097 b.n 80083c8 8008298: 69bb ldr r3, [r7, #24] 800829a: 015a lsls r2, r3, #5 800829c: 69fb ldr r3, [r7, #28] 800829e: 4413 add r3, r2 80082a0: f503 6310 add.w r3, r3, #2304 @ 0x900 80082a4: 691b ldr r3, [r3, #16] 80082a6: 69ba ldr r2, [r7, #24] 80082a8: 0151 lsls r1, r2, #5 80082aa: 69fa ldr r2, [r7, #28] 80082ac: 440a add r2, r1 80082ae: f502 6210 add.w r2, r2, #2304 @ 0x900 80082b2: 0cdb lsrs r3, r3, #19 80082b4: 04db lsls r3, r3, #19 80082b6: 6113 str r3, [r2, #16] 80082b8: 69bb ldr r3, [r7, #24] 80082ba: 015a lsls r2, r3, #5 80082bc: 69fb ldr r3, [r7, #28] 80082be: 4413 add r3, r2 80082c0: f503 6310 add.w r3, r3, #2304 @ 0x900 80082c4: 691b ldr r3, [r3, #16] 80082c6: 69ba ldr r2, [r7, #24] 80082c8: 0151 lsls r1, r2, #5 80082ca: 69fa ldr r2, [r7, #28] 80082cc: 440a add r2, r1 80082ce: f502 6210 add.w r2, r2, #2304 @ 0x900 80082d2: f023 53ff bic.w r3, r3, #534773760 @ 0x1fe00000 80082d6: f423 13c0 bic.w r3, r3, #1572864 @ 0x180000 80082da: 6113 str r3, [r2, #16] 80082dc: 69bb ldr r3, [r7, #24] 80082de: 2b00 cmp r3, #0 80082e0: d11a bne.n 8008318 80082e2: 68bb ldr r3, [r7, #8] 80082e4: 691a ldr r2, [r3, #16] 80082e6: 68bb ldr r3, [r7, #8] 80082e8: 689b ldr r3, [r3, #8] 80082ea: 429a cmp r2, r3 80082ec: d903 bls.n 80082f6 80082ee: 68bb ldr r3, [r7, #8] 80082f0: 689a ldr r2, [r3, #8] 80082f2: 68bb ldr r3, [r7, #8] 80082f4: 611a str r2, [r3, #16] 80082f6: 69bb ldr r3, [r7, #24] 80082f8: 015a lsls r2, r3, #5 80082fa: 69fb ldr r3, [r7, #28] 80082fc: 4413 add r3, r2 80082fe: f503 6310 add.w r3, r3, #2304 @ 0x900 8008302: 691b ldr r3, [r3, #16] 8008304: 69ba ldr r2, [r7, #24] 8008306: 0151 lsls r1, r2, #5 8008308: 69fa ldr r2, [r7, #28] 800830a: 440a add r2, r1 800830c: f502 6210 add.w r2, r2, #2304 @ 0x900 8008310: f443 2300 orr.w r3, r3, #524288 @ 0x80000 8008314: 6113 str r3, [r2, #16] 8008316: e044 b.n 80083a2 8008318: 68bb ldr r3, [r7, #8] 800831a: 691a ldr r2, [r3, #16] 800831c: 68bb ldr r3, [r7, #8] 800831e: 689b ldr r3, [r3, #8] 8008320: 4413 add r3, r2 8008322: 1e5a subs r2, r3, #1 8008324: 68bb ldr r3, [r7, #8] 8008326: 689b ldr r3, [r3, #8] 8008328: fbb2 f3f3 udiv r3, r2, r3 800832c: 82fb strh r3, [r7, #22] 800832e: 69bb ldr r3, [r7, #24] 8008330: 015a lsls r2, r3, #5 8008332: 69fb ldr r3, [r7, #28] 8008334: 4413 add r3, r2 8008336: f503 6310 add.w r3, r3, #2304 @ 0x900 800833a: 691a ldr r2, [r3, #16] 800833c: 8afb ldrh r3, [r7, #22] 800833e: 04d9 lsls r1, r3, #19 8008340: 4ba4 ldr r3, [pc, #656] @ (80085d4 ) 8008342: 400b ands r3, r1 8008344: 69b9 ldr r1, [r7, #24] 8008346: 0148 lsls r0, r1, #5 8008348: 69f9 ldr r1, [r7, #28] 800834a: 4401 add r1, r0 800834c: f501 6110 add.w r1, r1, #2304 @ 0x900 8008350: 4313 orrs r3, r2 8008352: 610b str r3, [r1, #16] 8008354: 68bb ldr r3, [r7, #8] 8008356: 791b ldrb r3, [r3, #4] 8008358: 2b01 cmp r3, #1 800835a: d122 bne.n 80083a2 800835c: 69bb ldr r3, [r7, #24] 800835e: 015a lsls r2, r3, #5 8008360: 69fb ldr r3, [r7, #28] 8008362: 4413 add r3, r2 8008364: f503 6310 add.w r3, r3, #2304 @ 0x900 8008368: 691b ldr r3, [r3, #16] 800836a: 69ba ldr r2, [r7, #24] 800836c: 0151 lsls r1, r2, #5 800836e: 69fa ldr r2, [r7, #28] 8008370: 440a add r2, r1 8008372: f502 6210 add.w r2, r2, #2304 @ 0x900 8008376: f023 43c0 bic.w r3, r3, #1610612736 @ 0x60000000 800837a: 6113 str r3, [r2, #16] 800837c: 69bb ldr r3, [r7, #24] 800837e: 015a lsls r2, r3, #5 8008380: 69fb ldr r3, [r7, #28] 8008382: 4413 add r3, r2 8008384: f503 6310 add.w r3, r3, #2304 @ 0x900 8008388: 691a ldr r2, [r3, #16] 800838a: 8afb ldrh r3, [r7, #22] 800838c: 075b lsls r3, r3, #29 800838e: f003 43c0 and.w r3, r3, #1610612736 @ 0x60000000 8008392: 69b9 ldr r1, [r7, #24] 8008394: 0148 lsls r0, r1, #5 8008396: 69f9 ldr r1, [r7, #28] 8008398: 4401 add r1, r0 800839a: f501 6110 add.w r1, r1, #2304 @ 0x900 800839e: 4313 orrs r3, r2 80083a0: 610b str r3, [r1, #16] 80083a2: 69bb ldr r3, [r7, #24] 80083a4: 015a lsls r2, r3, #5 80083a6: 69fb ldr r3, [r7, #28] 80083a8: 4413 add r3, r2 80083aa: f503 6310 add.w r3, r3, #2304 @ 0x900 80083ae: 691a ldr r2, [r3, #16] 80083b0: 68bb ldr r3, [r7, #8] 80083b2: 691b ldr r3, [r3, #16] 80083b4: f3c3 0312 ubfx r3, r3, #0, #19 80083b8: 69b9 ldr r1, [r7, #24] 80083ba: 0148 lsls r0, r1, #5 80083bc: 69f9 ldr r1, [r7, #28] 80083be: 4401 add r1, r0 80083c0: f501 6110 add.w r1, r1, #2304 @ 0x900 80083c4: 4313 orrs r3, r2 80083c6: 610b str r3, [r1, #16] 80083c8: 79fb ldrb r3, [r7, #7] 80083ca: 2b01 cmp r3, #1 80083cc: d14b bne.n 8008466 80083ce: 68bb ldr r3, [r7, #8] 80083d0: 69db ldr r3, [r3, #28] 80083d2: 2b00 cmp r3, #0 80083d4: d009 beq.n 80083ea 80083d6: 69bb ldr r3, [r7, #24] 80083d8: 015a lsls r2, r3, #5 80083da: 69fb ldr r3, [r7, #28] 80083dc: 4413 add r3, r2 80083de: f503 6310 add.w r3, r3, #2304 @ 0x900 80083e2: 461a mov r2, r3 80083e4: 68bb ldr r3, [r7, #8] 80083e6: 69db ldr r3, [r3, #28] 80083e8: 6153 str r3, [r2, #20] 80083ea: 68bb ldr r3, [r7, #8] 80083ec: 791b ldrb r3, [r3, #4] 80083ee: 2b01 cmp r3, #1 80083f0: d128 bne.n 8008444 80083f2: 69fb ldr r3, [r7, #28] 80083f4: f503 6300 add.w r3, r3, #2048 @ 0x800 80083f8: 689b ldr r3, [r3, #8] 80083fa: f403 7380 and.w r3, r3, #256 @ 0x100 80083fe: 2b00 cmp r3, #0 8008400: d110 bne.n 8008424 8008402: 69bb ldr r3, [r7, #24] 8008404: 015a lsls r2, r3, #5 8008406: 69fb ldr r3, [r7, #28] 8008408: 4413 add r3, r2 800840a: f503 6310 add.w r3, r3, #2304 @ 0x900 800840e: 681b ldr r3, [r3, #0] 8008410: 69ba ldr r2, [r7, #24] 8008412: 0151 lsls r1, r2, #5 8008414: 69fa ldr r2, [r7, #28] 8008416: 440a add r2, r1 8008418: f502 6210 add.w r2, r2, #2304 @ 0x900 800841c: f043 5300 orr.w r3, r3, #536870912 @ 0x20000000 8008420: 6013 str r3, [r2, #0] 8008422: e00f b.n 8008444 8008424: 69bb ldr r3, [r7, #24] 8008426: 015a lsls r2, r3, #5 8008428: 69fb ldr r3, [r7, #28] 800842a: 4413 add r3, r2 800842c: f503 6310 add.w r3, r3, #2304 @ 0x900 8008430: 681b ldr r3, [r3, #0] 8008432: 69ba ldr r2, [r7, #24] 8008434: 0151 lsls r1, r2, #5 8008436: 69fa ldr r2, [r7, #28] 8008438: 440a add r2, r1 800843a: f502 6210 add.w r2, r2, #2304 @ 0x900 800843e: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8008442: 6013 str r3, [r2, #0] 8008444: 69bb ldr r3, [r7, #24] 8008446: 015a lsls r2, r3, #5 8008448: 69fb ldr r3, [r7, #28] 800844a: 4413 add r3, r2 800844c: f503 6310 add.w r3, r3, #2304 @ 0x900 8008450: 681b ldr r3, [r3, #0] 8008452: 69ba ldr r2, [r7, #24] 8008454: 0151 lsls r1, r2, #5 8008456: 69fa ldr r2, [r7, #28] 8008458: 440a add r2, r1 800845a: f502 6210 add.w r2, r2, #2304 @ 0x900 800845e: f043 4304 orr.w r3, r3, #2214592512 @ 0x84000000 8008462: 6013 str r3, [r2, #0] 8008464: e166 b.n 8008734 8008466: 69bb ldr r3, [r7, #24] 8008468: 015a lsls r2, r3, #5 800846a: 69fb ldr r3, [r7, #28] 800846c: 4413 add r3, r2 800846e: f503 6310 add.w r3, r3, #2304 @ 0x900 8008472: 681b ldr r3, [r3, #0] 8008474: 69ba ldr r2, [r7, #24] 8008476: 0151 lsls r1, r2, #5 8008478: 69fa ldr r2, [r7, #28] 800847a: 440a add r2, r1 800847c: f502 6210 add.w r2, r2, #2304 @ 0x900 8008480: f043 4304 orr.w r3, r3, #2214592512 @ 0x84000000 8008484: 6013 str r3, [r2, #0] 8008486: 68bb ldr r3, [r7, #8] 8008488: 791b ldrb r3, [r3, #4] 800848a: 2b01 cmp r3, #1 800848c: d015 beq.n 80084ba 800848e: 68bb ldr r3, [r7, #8] 8008490: 691b ldr r3, [r3, #16] 8008492: 2b00 cmp r3, #0 8008494: f000 814e beq.w 8008734 8008498: 69fb ldr r3, [r7, #28] 800849a: f503 6300 add.w r3, r3, #2048 @ 0x800 800849e: 6b5a ldr r2, [r3, #52] @ 0x34 80084a0: 68bb ldr r3, [r7, #8] 80084a2: 781b ldrb r3, [r3, #0] 80084a4: f003 030f and.w r3, r3, #15 80084a8: 2101 movs r1, #1 80084aa: fa01 f303 lsl.w r3, r1, r3 80084ae: 69f9 ldr r1, [r7, #28] 80084b0: f501 6100 add.w r1, r1, #2048 @ 0x800 80084b4: 4313 orrs r3, r2 80084b6: 634b str r3, [r1, #52] @ 0x34 80084b8: e13c b.n 8008734 80084ba: 69fb ldr r3, [r7, #28] 80084bc: f503 6300 add.w r3, r3, #2048 @ 0x800 80084c0: 689b ldr r3, [r3, #8] 80084c2: f403 7380 and.w r3, r3, #256 @ 0x100 80084c6: 2b00 cmp r3, #0 80084c8: d110 bne.n 80084ec 80084ca: 69bb ldr r3, [r7, #24] 80084cc: 015a lsls r2, r3, #5 80084ce: 69fb ldr r3, [r7, #28] 80084d0: 4413 add r3, r2 80084d2: f503 6310 add.w r3, r3, #2304 @ 0x900 80084d6: 681b ldr r3, [r3, #0] 80084d8: 69ba ldr r2, [r7, #24] 80084da: 0151 lsls r1, r2, #5 80084dc: 69fa ldr r2, [r7, #28] 80084de: 440a add r2, r1 80084e0: f502 6210 add.w r2, r2, #2304 @ 0x900 80084e4: f043 5300 orr.w r3, r3, #536870912 @ 0x20000000 80084e8: 6013 str r3, [r2, #0] 80084ea: e00f b.n 800850c 80084ec: 69bb ldr r3, [r7, #24] 80084ee: 015a lsls r2, r3, #5 80084f0: 69fb ldr r3, [r7, #28] 80084f2: 4413 add r3, r2 80084f4: f503 6310 add.w r3, r3, #2304 @ 0x900 80084f8: 681b ldr r3, [r3, #0] 80084fa: 69ba ldr r2, [r7, #24] 80084fc: 0151 lsls r1, r2, #5 80084fe: 69fa ldr r2, [r7, #28] 8008500: 440a add r2, r1 8008502: f502 6210 add.w r2, r2, #2304 @ 0x900 8008506: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 800850a: 6013 str r3, [r2, #0] 800850c: 68bb ldr r3, [r7, #8] 800850e: 68d9 ldr r1, [r3, #12] 8008510: 68bb ldr r3, [r7, #8] 8008512: 781a ldrb r2, [r3, #0] 8008514: 68bb ldr r3, [r7, #8] 8008516: 691b ldr r3, [r3, #16] 8008518: b298 uxth r0, r3 800851a: 79fb ldrb r3, [r7, #7] 800851c: 9300 str r3, [sp, #0] 800851e: 4603 mov r3, r0 8008520: 68f8 ldr r0, [r7, #12] 8008522: f000 f9b9 bl 8008898 8008526: e105 b.n 8008734 8008528: 69bb ldr r3, [r7, #24] 800852a: 015a lsls r2, r3, #5 800852c: 69fb ldr r3, [r7, #28] 800852e: 4413 add r3, r2 8008530: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008534: 691b ldr r3, [r3, #16] 8008536: 69ba ldr r2, [r7, #24] 8008538: 0151 lsls r1, r2, #5 800853a: 69fa ldr r2, [r7, #28] 800853c: 440a add r2, r1 800853e: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008542: 0cdb lsrs r3, r3, #19 8008544: 04db lsls r3, r3, #19 8008546: 6113 str r3, [r2, #16] 8008548: 69bb ldr r3, [r7, #24] 800854a: 015a lsls r2, r3, #5 800854c: 69fb ldr r3, [r7, #28] 800854e: 4413 add r3, r2 8008550: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008554: 691b ldr r3, [r3, #16] 8008556: 69ba ldr r2, [r7, #24] 8008558: 0151 lsls r1, r2, #5 800855a: 69fa ldr r2, [r7, #28] 800855c: 440a add r2, r1 800855e: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008562: f023 53ff bic.w r3, r3, #534773760 @ 0x1fe00000 8008566: f423 13c0 bic.w r3, r3, #1572864 @ 0x180000 800856a: 6113 str r3, [r2, #16] 800856c: 69bb ldr r3, [r7, #24] 800856e: 2b00 cmp r3, #0 8008570: d132 bne.n 80085d8 8008572: 68bb ldr r3, [r7, #8] 8008574: 691b ldr r3, [r3, #16] 8008576: 2b00 cmp r3, #0 8008578: d003 beq.n 8008582 800857a: 68bb ldr r3, [r7, #8] 800857c: 689a ldr r2, [r3, #8] 800857e: 68bb ldr r3, [r7, #8] 8008580: 611a str r2, [r3, #16] 8008582: 68bb ldr r3, [r7, #8] 8008584: 689a ldr r2, [r3, #8] 8008586: 68bb ldr r3, [r7, #8] 8008588: 621a str r2, [r3, #32] 800858a: 69bb ldr r3, [r7, #24] 800858c: 015a lsls r2, r3, #5 800858e: 69fb ldr r3, [r7, #28] 8008590: 4413 add r3, r2 8008592: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008596: 691a ldr r2, [r3, #16] 8008598: 68bb ldr r3, [r7, #8] 800859a: 6a1b ldr r3, [r3, #32] 800859c: f3c3 0312 ubfx r3, r3, #0, #19 80085a0: 69b9 ldr r1, [r7, #24] 80085a2: 0148 lsls r0, r1, #5 80085a4: 69f9 ldr r1, [r7, #28] 80085a6: 4401 add r1, r0 80085a8: f501 6130 add.w r1, r1, #2816 @ 0xb00 80085ac: 4313 orrs r3, r2 80085ae: 610b str r3, [r1, #16] 80085b0: 69bb ldr r3, [r7, #24] 80085b2: 015a lsls r2, r3, #5 80085b4: 69fb ldr r3, [r7, #28] 80085b6: 4413 add r3, r2 80085b8: f503 6330 add.w r3, r3, #2816 @ 0xb00 80085bc: 691b ldr r3, [r3, #16] 80085be: 69ba ldr r2, [r7, #24] 80085c0: 0151 lsls r1, r2, #5 80085c2: 69fa ldr r2, [r7, #28] 80085c4: 440a add r2, r1 80085c6: f502 6230 add.w r2, r2, #2816 @ 0xb00 80085ca: f443 2300 orr.w r3, r3, #524288 @ 0x80000 80085ce: 6113 str r3, [r2, #16] 80085d0: e062 b.n 8008698 80085d2: bf00 nop 80085d4: 1ff80000 .word 0x1ff80000 80085d8: 68bb ldr r3, [r7, #8] 80085da: 691b ldr r3, [r3, #16] 80085dc: 2b00 cmp r3, #0 80085de: d123 bne.n 8008628 80085e0: 69bb ldr r3, [r7, #24] 80085e2: 015a lsls r2, r3, #5 80085e4: 69fb ldr r3, [r7, #28] 80085e6: 4413 add r3, r2 80085e8: f503 6330 add.w r3, r3, #2816 @ 0xb00 80085ec: 691a ldr r2, [r3, #16] 80085ee: 68bb ldr r3, [r7, #8] 80085f0: 689b ldr r3, [r3, #8] 80085f2: f3c3 0312 ubfx r3, r3, #0, #19 80085f6: 69b9 ldr r1, [r7, #24] 80085f8: 0148 lsls r0, r1, #5 80085fa: 69f9 ldr r1, [r7, #28] 80085fc: 4401 add r1, r0 80085fe: f501 6130 add.w r1, r1, #2816 @ 0xb00 8008602: 4313 orrs r3, r2 8008604: 610b str r3, [r1, #16] 8008606: 69bb ldr r3, [r7, #24] 8008608: 015a lsls r2, r3, #5 800860a: 69fb ldr r3, [r7, #28] 800860c: 4413 add r3, r2 800860e: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008612: 691b ldr r3, [r3, #16] 8008614: 69ba ldr r2, [r7, #24] 8008616: 0151 lsls r1, r2, #5 8008618: 69fa ldr r2, [r7, #28] 800861a: 440a add r2, r1 800861c: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008620: f443 2300 orr.w r3, r3, #524288 @ 0x80000 8008624: 6113 str r3, [r2, #16] 8008626: e037 b.n 8008698 8008628: 68bb ldr r3, [r7, #8] 800862a: 691a ldr r2, [r3, #16] 800862c: 68bb ldr r3, [r7, #8] 800862e: 689b ldr r3, [r3, #8] 8008630: 4413 add r3, r2 8008632: 1e5a subs r2, r3, #1 8008634: 68bb ldr r3, [r7, #8] 8008636: 689b ldr r3, [r3, #8] 8008638: fbb2 f3f3 udiv r3, r2, r3 800863c: 82fb strh r3, [r7, #22] 800863e: 68bb ldr r3, [r7, #8] 8008640: 689b ldr r3, [r3, #8] 8008642: 8afa ldrh r2, [r7, #22] 8008644: fb03 f202 mul.w r2, r3, r2 8008648: 68bb ldr r3, [r7, #8] 800864a: 621a str r2, [r3, #32] 800864c: 69bb ldr r3, [r7, #24] 800864e: 015a lsls r2, r3, #5 8008650: 69fb ldr r3, [r7, #28] 8008652: 4413 add r3, r2 8008654: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008658: 691a ldr r2, [r3, #16] 800865a: 8afb ldrh r3, [r7, #22] 800865c: 04d9 lsls r1, r3, #19 800865e: 4b38 ldr r3, [pc, #224] @ (8008740 ) 8008660: 400b ands r3, r1 8008662: 69b9 ldr r1, [r7, #24] 8008664: 0148 lsls r0, r1, #5 8008666: 69f9 ldr r1, [r7, #28] 8008668: 4401 add r1, r0 800866a: f501 6130 add.w r1, r1, #2816 @ 0xb00 800866e: 4313 orrs r3, r2 8008670: 610b str r3, [r1, #16] 8008672: 69bb ldr r3, [r7, #24] 8008674: 015a lsls r2, r3, #5 8008676: 69fb ldr r3, [r7, #28] 8008678: 4413 add r3, r2 800867a: f503 6330 add.w r3, r3, #2816 @ 0xb00 800867e: 691a ldr r2, [r3, #16] 8008680: 68bb ldr r3, [r7, #8] 8008682: 6a1b ldr r3, [r3, #32] 8008684: f3c3 0312 ubfx r3, r3, #0, #19 8008688: 69b9 ldr r1, [r7, #24] 800868a: 0148 lsls r0, r1, #5 800868c: 69f9 ldr r1, [r7, #28] 800868e: 4401 add r1, r0 8008690: f501 6130 add.w r1, r1, #2816 @ 0xb00 8008694: 4313 orrs r3, r2 8008696: 610b str r3, [r1, #16] 8008698: 79fb ldrb r3, [r7, #7] 800869a: 2b01 cmp r3, #1 800869c: d10d bne.n 80086ba 800869e: 68bb ldr r3, [r7, #8] 80086a0: 68db ldr r3, [r3, #12] 80086a2: 2b00 cmp r3, #0 80086a4: d009 beq.n 80086ba 80086a6: 68bb ldr r3, [r7, #8] 80086a8: 68d9 ldr r1, [r3, #12] 80086aa: 69bb ldr r3, [r7, #24] 80086ac: 015a lsls r2, r3, #5 80086ae: 69fb ldr r3, [r7, #28] 80086b0: 4413 add r3, r2 80086b2: f503 6330 add.w r3, r3, #2816 @ 0xb00 80086b6: 460a mov r2, r1 80086b8: 615a str r2, [r3, #20] 80086ba: 68bb ldr r3, [r7, #8] 80086bc: 791b ldrb r3, [r3, #4] 80086be: 2b01 cmp r3, #1 80086c0: d128 bne.n 8008714 80086c2: 69fb ldr r3, [r7, #28] 80086c4: f503 6300 add.w r3, r3, #2048 @ 0x800 80086c8: 689b ldr r3, [r3, #8] 80086ca: f403 7380 and.w r3, r3, #256 @ 0x100 80086ce: 2b00 cmp r3, #0 80086d0: d110 bne.n 80086f4 80086d2: 69bb ldr r3, [r7, #24] 80086d4: 015a lsls r2, r3, #5 80086d6: 69fb ldr r3, [r7, #28] 80086d8: 4413 add r3, r2 80086da: f503 6330 add.w r3, r3, #2816 @ 0xb00 80086de: 681b ldr r3, [r3, #0] 80086e0: 69ba ldr r2, [r7, #24] 80086e2: 0151 lsls r1, r2, #5 80086e4: 69fa ldr r2, [r7, #28] 80086e6: 440a add r2, r1 80086e8: f502 6230 add.w r2, r2, #2816 @ 0xb00 80086ec: f043 5300 orr.w r3, r3, #536870912 @ 0x20000000 80086f0: 6013 str r3, [r2, #0] 80086f2: e00f b.n 8008714 80086f4: 69bb ldr r3, [r7, #24] 80086f6: 015a lsls r2, r3, #5 80086f8: 69fb ldr r3, [r7, #28] 80086fa: 4413 add r3, r2 80086fc: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008700: 681b ldr r3, [r3, #0] 8008702: 69ba ldr r2, [r7, #24] 8008704: 0151 lsls r1, r2, #5 8008706: 69fa ldr r2, [r7, #28] 8008708: 440a add r2, r1 800870a: f502 6230 add.w r2, r2, #2816 @ 0xb00 800870e: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8008712: 6013 str r3, [r2, #0] 8008714: 69bb ldr r3, [r7, #24] 8008716: 015a lsls r2, r3, #5 8008718: 69fb ldr r3, [r7, #28] 800871a: 4413 add r3, r2 800871c: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008720: 681b ldr r3, [r3, #0] 8008722: 69ba ldr r2, [r7, #24] 8008724: 0151 lsls r1, r2, #5 8008726: 69fa ldr r2, [r7, #28] 8008728: 440a add r2, r1 800872a: f502 6230 add.w r2, r2, #2816 @ 0xb00 800872e: f043 4304 orr.w r3, r3, #2214592512 @ 0x84000000 8008732: 6013 str r3, [r2, #0] 8008734: 2300 movs r3, #0 8008736: 4618 mov r0, r3 8008738: 3720 adds r7, #32 800873a: 46bd mov sp, r7 800873c: bd80 pop {r7, pc} 800873e: bf00 nop 8008740: 1ff80000 .word 0x1ff80000 08008744 : 8008744: b480 push {r7} 8008746: b087 sub sp, #28 8008748: af00 add r7, sp, #0 800874a: 6078 str r0, [r7, #4] 800874c: 6039 str r1, [r7, #0] 800874e: 2300 movs r3, #0 8008750: 60fb str r3, [r7, #12] 8008752: 2300 movs r3, #0 8008754: 75fb strb r3, [r7, #23] 8008756: 687b ldr r3, [r7, #4] 8008758: 613b str r3, [r7, #16] 800875a: 683b ldr r3, [r7, #0] 800875c: 785b ldrb r3, [r3, #1] 800875e: 2b01 cmp r3, #1 8008760: d14a bne.n 80087f8 8008762: 683b ldr r3, [r7, #0] 8008764: 781b ldrb r3, [r3, #0] 8008766: 015a lsls r2, r3, #5 8008768: 693b ldr r3, [r7, #16] 800876a: 4413 add r3, r2 800876c: f503 6310 add.w r3, r3, #2304 @ 0x900 8008770: 681b ldr r3, [r3, #0] 8008772: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 8008776: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 800877a: f040 8086 bne.w 800888a 800877e: 683b ldr r3, [r7, #0] 8008780: 781b ldrb r3, [r3, #0] 8008782: 015a lsls r2, r3, #5 8008784: 693b ldr r3, [r7, #16] 8008786: 4413 add r3, r2 8008788: f503 6310 add.w r3, r3, #2304 @ 0x900 800878c: 681b ldr r3, [r3, #0] 800878e: 683a ldr r2, [r7, #0] 8008790: 7812 ldrb r2, [r2, #0] 8008792: 0151 lsls r1, r2, #5 8008794: 693a ldr r2, [r7, #16] 8008796: 440a add r2, r1 8008798: f502 6210 add.w r2, r2, #2304 @ 0x900 800879c: f043 6300 orr.w r3, r3, #134217728 @ 0x8000000 80087a0: 6013 str r3, [r2, #0] 80087a2: 683b ldr r3, [r7, #0] 80087a4: 781b ldrb r3, [r3, #0] 80087a6: 015a lsls r2, r3, #5 80087a8: 693b ldr r3, [r7, #16] 80087aa: 4413 add r3, r2 80087ac: f503 6310 add.w r3, r3, #2304 @ 0x900 80087b0: 681b ldr r3, [r3, #0] 80087b2: 683a ldr r2, [r7, #0] 80087b4: 7812 ldrb r2, [r2, #0] 80087b6: 0151 lsls r1, r2, #5 80087b8: 693a ldr r2, [r7, #16] 80087ba: 440a add r2, r1 80087bc: f502 6210 add.w r2, r2, #2304 @ 0x900 80087c0: f043 4380 orr.w r3, r3, #1073741824 @ 0x40000000 80087c4: 6013 str r3, [r2, #0] 80087c6: 68fb ldr r3, [r7, #12] 80087c8: 3301 adds r3, #1 80087ca: 60fb str r3, [r7, #12] 80087cc: 68fb ldr r3, [r7, #12] 80087ce: f242 7210 movw r2, #10000 @ 0x2710 80087d2: 4293 cmp r3, r2 80087d4: d902 bls.n 80087dc 80087d6: 2301 movs r3, #1 80087d8: 75fb strb r3, [r7, #23] 80087da: e056 b.n 800888a 80087dc: 683b ldr r3, [r7, #0] 80087de: 781b ldrb r3, [r3, #0] 80087e0: 015a lsls r2, r3, #5 80087e2: 693b ldr r3, [r7, #16] 80087e4: 4413 add r3, r2 80087e6: f503 6310 add.w r3, r3, #2304 @ 0x900 80087ea: 681b ldr r3, [r3, #0] 80087ec: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 80087f0: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 80087f4: d0e7 beq.n 80087c6 80087f6: e048 b.n 800888a 80087f8: 683b ldr r3, [r7, #0] 80087fa: 781b ldrb r3, [r3, #0] 80087fc: 015a lsls r2, r3, #5 80087fe: 693b ldr r3, [r7, #16] 8008800: 4413 add r3, r2 8008802: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008806: 681b ldr r3, [r3, #0] 8008808: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 800880c: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8008810: d13b bne.n 800888a 8008812: 683b ldr r3, [r7, #0] 8008814: 781b ldrb r3, [r3, #0] 8008816: 015a lsls r2, r3, #5 8008818: 693b ldr r3, [r7, #16] 800881a: 4413 add r3, r2 800881c: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008820: 681b ldr r3, [r3, #0] 8008822: 683a ldr r2, [r7, #0] 8008824: 7812 ldrb r2, [r2, #0] 8008826: 0151 lsls r1, r2, #5 8008828: 693a ldr r2, [r7, #16] 800882a: 440a add r2, r1 800882c: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008830: f043 6300 orr.w r3, r3, #134217728 @ 0x8000000 8008834: 6013 str r3, [r2, #0] 8008836: 683b ldr r3, [r7, #0] 8008838: 781b ldrb r3, [r3, #0] 800883a: 015a lsls r2, r3, #5 800883c: 693b ldr r3, [r7, #16] 800883e: 4413 add r3, r2 8008840: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008844: 681b ldr r3, [r3, #0] 8008846: 683a ldr r2, [r7, #0] 8008848: 7812 ldrb r2, [r2, #0] 800884a: 0151 lsls r1, r2, #5 800884c: 693a ldr r2, [r7, #16] 800884e: 440a add r2, r1 8008850: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008854: f043 4380 orr.w r3, r3, #1073741824 @ 0x40000000 8008858: 6013 str r3, [r2, #0] 800885a: 68fb ldr r3, [r7, #12] 800885c: 3301 adds r3, #1 800885e: 60fb str r3, [r7, #12] 8008860: 68fb ldr r3, [r7, #12] 8008862: f242 7210 movw r2, #10000 @ 0x2710 8008866: 4293 cmp r3, r2 8008868: d902 bls.n 8008870 800886a: 2301 movs r3, #1 800886c: 75fb strb r3, [r7, #23] 800886e: e00c b.n 800888a 8008870: 683b ldr r3, [r7, #0] 8008872: 781b ldrb r3, [r3, #0] 8008874: 015a lsls r2, r3, #5 8008876: 693b ldr r3, [r7, #16] 8008878: 4413 add r3, r2 800887a: f503 6330 add.w r3, r3, #2816 @ 0xb00 800887e: 681b ldr r3, [r3, #0] 8008880: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 8008884: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8008888: d0e7 beq.n 800885a 800888a: 7dfb ldrb r3, [r7, #23] 800888c: 4618 mov r0, r3 800888e: 371c adds r7, #28 8008890: 46bd mov sp, r7 8008892: f85d 7b04 ldr.w r7, [sp], #4 8008896: 4770 bx lr 08008898 : 8008898: b480 push {r7} 800889a: b089 sub sp, #36 @ 0x24 800889c: af00 add r7, sp, #0 800889e: 60f8 str r0, [r7, #12] 80088a0: 60b9 str r1, [r7, #8] 80088a2: 4611 mov r1, r2 80088a4: 461a mov r2, r3 80088a6: 460b mov r3, r1 80088a8: 71fb strb r3, [r7, #7] 80088aa: 4613 mov r3, r2 80088ac: 80bb strh r3, [r7, #4] 80088ae: 68fb ldr r3, [r7, #12] 80088b0: 617b str r3, [r7, #20] 80088b2: 68bb ldr r3, [r7, #8] 80088b4: 61fb str r3, [r7, #28] 80088b6: f897 3028 ldrb.w r3, [r7, #40] @ 0x28 80088ba: 2b00 cmp r3, #0 80088bc: d123 bne.n 8008906 80088be: 88bb ldrh r3, [r7, #4] 80088c0: 3303 adds r3, #3 80088c2: 089b lsrs r3, r3, #2 80088c4: 613b str r3, [r7, #16] 80088c6: 2300 movs r3, #0 80088c8: 61bb str r3, [r7, #24] 80088ca: e018 b.n 80088fe 80088cc: 79fb ldrb r3, [r7, #7] 80088ce: 031a lsls r2, r3, #12 80088d0: 697b ldr r3, [r7, #20] 80088d2: 4413 add r3, r2 80088d4: f503 5380 add.w r3, r3, #4096 @ 0x1000 80088d8: 461a mov r2, r3 80088da: 69fb ldr r3, [r7, #28] 80088dc: 681b ldr r3, [r3, #0] 80088de: 6013 str r3, [r2, #0] 80088e0: 69fb ldr r3, [r7, #28] 80088e2: 3301 adds r3, #1 80088e4: 61fb str r3, [r7, #28] 80088e6: 69fb ldr r3, [r7, #28] 80088e8: 3301 adds r3, #1 80088ea: 61fb str r3, [r7, #28] 80088ec: 69fb ldr r3, [r7, #28] 80088ee: 3301 adds r3, #1 80088f0: 61fb str r3, [r7, #28] 80088f2: 69fb ldr r3, [r7, #28] 80088f4: 3301 adds r3, #1 80088f6: 61fb str r3, [r7, #28] 80088f8: 69bb ldr r3, [r7, #24] 80088fa: 3301 adds r3, #1 80088fc: 61bb str r3, [r7, #24] 80088fe: 69ba ldr r2, [r7, #24] 8008900: 693b ldr r3, [r7, #16] 8008902: 429a cmp r2, r3 8008904: d3e2 bcc.n 80088cc 8008906: 2300 movs r3, #0 8008908: 4618 mov r0, r3 800890a: 3724 adds r7, #36 @ 0x24 800890c: 46bd mov sp, r7 800890e: f85d 7b04 ldr.w r7, [sp], #4 8008912: 4770 bx lr 08008914 : 8008914: b480 push {r7} 8008916: b08b sub sp, #44 @ 0x2c 8008918: af00 add r7, sp, #0 800891a: 60f8 str r0, [r7, #12] 800891c: 60b9 str r1, [r7, #8] 800891e: 4613 mov r3, r2 8008920: 80fb strh r3, [r7, #6] 8008922: 68fb ldr r3, [r7, #12] 8008924: 61bb str r3, [r7, #24] 8008926: 68bb ldr r3, [r7, #8] 8008928: 627b str r3, [r7, #36] @ 0x24 800892a: 88fb ldrh r3, [r7, #6] 800892c: 089b lsrs r3, r3, #2 800892e: b29b uxth r3, r3 8008930: 617b str r3, [r7, #20] 8008932: 88fb ldrh r3, [r7, #6] 8008934: f003 0303 and.w r3, r3, #3 8008938: 83fb strh r3, [r7, #30] 800893a: 2300 movs r3, #0 800893c: 623b str r3, [r7, #32] 800893e: e014 b.n 800896a 8008940: 69bb ldr r3, [r7, #24] 8008942: f503 5380 add.w r3, r3, #4096 @ 0x1000 8008946: 681a ldr r2, [r3, #0] 8008948: 6a7b ldr r3, [r7, #36] @ 0x24 800894a: 601a str r2, [r3, #0] 800894c: 6a7b ldr r3, [r7, #36] @ 0x24 800894e: 3301 adds r3, #1 8008950: 627b str r3, [r7, #36] @ 0x24 8008952: 6a7b ldr r3, [r7, #36] @ 0x24 8008954: 3301 adds r3, #1 8008956: 627b str r3, [r7, #36] @ 0x24 8008958: 6a7b ldr r3, [r7, #36] @ 0x24 800895a: 3301 adds r3, #1 800895c: 627b str r3, [r7, #36] @ 0x24 800895e: 6a7b ldr r3, [r7, #36] @ 0x24 8008960: 3301 adds r3, #1 8008962: 627b str r3, [r7, #36] @ 0x24 8008964: 6a3b ldr r3, [r7, #32] 8008966: 3301 adds r3, #1 8008968: 623b str r3, [r7, #32] 800896a: 6a3a ldr r2, [r7, #32] 800896c: 697b ldr r3, [r7, #20] 800896e: 429a cmp r2, r3 8008970: d3e6 bcc.n 8008940 8008972: 8bfb ldrh r3, [r7, #30] 8008974: 2b00 cmp r3, #0 8008976: d01e beq.n 80089b6 8008978: 2300 movs r3, #0 800897a: 623b str r3, [r7, #32] 800897c: 69bb ldr r3, [r7, #24] 800897e: f503 5380 add.w r3, r3, #4096 @ 0x1000 8008982: 461a mov r2, r3 8008984: f107 0310 add.w r3, r7, #16 8008988: 6812 ldr r2, [r2, #0] 800898a: 601a str r2, [r3, #0] 800898c: 693a ldr r2, [r7, #16] 800898e: 6a3b ldr r3, [r7, #32] 8008990: b2db uxtb r3, r3 8008992: 00db lsls r3, r3, #3 8008994: fa22 f303 lsr.w r3, r2, r3 8008998: b2da uxtb r2, r3 800899a: 6a7b ldr r3, [r7, #36] @ 0x24 800899c: 701a strb r2, [r3, #0] 800899e: 6a3b ldr r3, [r7, #32] 80089a0: 3301 adds r3, #1 80089a2: 623b str r3, [r7, #32] 80089a4: 6a7b ldr r3, [r7, #36] @ 0x24 80089a6: 3301 adds r3, #1 80089a8: 627b str r3, [r7, #36] @ 0x24 80089aa: 8bfb ldrh r3, [r7, #30] 80089ac: 3b01 subs r3, #1 80089ae: 83fb strh r3, [r7, #30] 80089b0: 8bfb ldrh r3, [r7, #30] 80089b2: 2b00 cmp r3, #0 80089b4: d1ea bne.n 800898c 80089b6: 6a7b ldr r3, [r7, #36] @ 0x24 80089b8: 4618 mov r0, r3 80089ba: 372c adds r7, #44 @ 0x2c 80089bc: 46bd mov sp, r7 80089be: f85d 7b04 ldr.w r7, [sp], #4 80089c2: 4770 bx lr 080089c4 : 80089c4: b480 push {r7} 80089c6: b085 sub sp, #20 80089c8: af00 add r7, sp, #0 80089ca: 6078 str r0, [r7, #4] 80089cc: 6039 str r1, [r7, #0] 80089ce: 687b ldr r3, [r7, #4] 80089d0: 60fb str r3, [r7, #12] 80089d2: 683b ldr r3, [r7, #0] 80089d4: 781b ldrb r3, [r3, #0] 80089d6: 60bb str r3, [r7, #8] 80089d8: 683b ldr r3, [r7, #0] 80089da: 785b ldrb r3, [r3, #1] 80089dc: 2b01 cmp r3, #1 80089de: d12c bne.n 8008a3a 80089e0: 68bb ldr r3, [r7, #8] 80089e2: 015a lsls r2, r3, #5 80089e4: 68fb ldr r3, [r7, #12] 80089e6: 4413 add r3, r2 80089e8: f503 6310 add.w r3, r3, #2304 @ 0x900 80089ec: 681b ldr r3, [r3, #0] 80089ee: 2b00 cmp r3, #0 80089f0: db12 blt.n 8008a18 80089f2: 68bb ldr r3, [r7, #8] 80089f4: 2b00 cmp r3, #0 80089f6: d00f beq.n 8008a18 80089f8: 68bb ldr r3, [r7, #8] 80089fa: 015a lsls r2, r3, #5 80089fc: 68fb ldr r3, [r7, #12] 80089fe: 4413 add r3, r2 8008a00: f503 6310 add.w r3, r3, #2304 @ 0x900 8008a04: 681b ldr r3, [r3, #0] 8008a06: 68ba ldr r2, [r7, #8] 8008a08: 0151 lsls r1, r2, #5 8008a0a: 68fa ldr r2, [r7, #12] 8008a0c: 440a add r2, r1 8008a0e: f502 6210 add.w r2, r2, #2304 @ 0x900 8008a12: f023 4380 bic.w r3, r3, #1073741824 @ 0x40000000 8008a16: 6013 str r3, [r2, #0] 8008a18: 68bb ldr r3, [r7, #8] 8008a1a: 015a lsls r2, r3, #5 8008a1c: 68fb ldr r3, [r7, #12] 8008a1e: 4413 add r3, r2 8008a20: f503 6310 add.w r3, r3, #2304 @ 0x900 8008a24: 681b ldr r3, [r3, #0] 8008a26: 68ba ldr r2, [r7, #8] 8008a28: 0151 lsls r1, r2, #5 8008a2a: 68fa ldr r2, [r7, #12] 8008a2c: 440a add r2, r1 8008a2e: f502 6210 add.w r2, r2, #2304 @ 0x900 8008a32: f443 1300 orr.w r3, r3, #2097152 @ 0x200000 8008a36: 6013 str r3, [r2, #0] 8008a38: e02b b.n 8008a92 8008a3a: 68bb ldr r3, [r7, #8] 8008a3c: 015a lsls r2, r3, #5 8008a3e: 68fb ldr r3, [r7, #12] 8008a40: 4413 add r3, r2 8008a42: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008a46: 681b ldr r3, [r3, #0] 8008a48: 2b00 cmp r3, #0 8008a4a: db12 blt.n 8008a72 8008a4c: 68bb ldr r3, [r7, #8] 8008a4e: 2b00 cmp r3, #0 8008a50: d00f beq.n 8008a72 8008a52: 68bb ldr r3, [r7, #8] 8008a54: 015a lsls r2, r3, #5 8008a56: 68fb ldr r3, [r7, #12] 8008a58: 4413 add r3, r2 8008a5a: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008a5e: 681b ldr r3, [r3, #0] 8008a60: 68ba ldr r2, [r7, #8] 8008a62: 0151 lsls r1, r2, #5 8008a64: 68fa ldr r2, [r7, #12] 8008a66: 440a add r2, r1 8008a68: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008a6c: f023 4380 bic.w r3, r3, #1073741824 @ 0x40000000 8008a70: 6013 str r3, [r2, #0] 8008a72: 68bb ldr r3, [r7, #8] 8008a74: 015a lsls r2, r3, #5 8008a76: 68fb ldr r3, [r7, #12] 8008a78: 4413 add r3, r2 8008a7a: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008a7e: 681b ldr r3, [r3, #0] 8008a80: 68ba ldr r2, [r7, #8] 8008a82: 0151 lsls r1, r2, #5 8008a84: 68fa ldr r2, [r7, #12] 8008a86: 440a add r2, r1 8008a88: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008a8c: f443 1300 orr.w r3, r3, #2097152 @ 0x200000 8008a90: 6013 str r3, [r2, #0] 8008a92: 2300 movs r3, #0 8008a94: 4618 mov r0, r3 8008a96: 3714 adds r7, #20 8008a98: 46bd mov sp, r7 8008a9a: f85d 7b04 ldr.w r7, [sp], #4 8008a9e: 4770 bx lr 08008aa0 : 8008aa0: b480 push {r7} 8008aa2: b085 sub sp, #20 8008aa4: af00 add r7, sp, #0 8008aa6: 6078 str r0, [r7, #4] 8008aa8: 6039 str r1, [r7, #0] 8008aaa: 687b ldr r3, [r7, #4] 8008aac: 60fb str r3, [r7, #12] 8008aae: 683b ldr r3, [r7, #0] 8008ab0: 781b ldrb r3, [r3, #0] 8008ab2: 60bb str r3, [r7, #8] 8008ab4: 683b ldr r3, [r7, #0] 8008ab6: 785b ldrb r3, [r3, #1] 8008ab8: 2b01 cmp r3, #1 8008aba: d128 bne.n 8008b0e 8008abc: 68bb ldr r3, [r7, #8] 8008abe: 015a lsls r2, r3, #5 8008ac0: 68fb ldr r3, [r7, #12] 8008ac2: 4413 add r3, r2 8008ac4: f503 6310 add.w r3, r3, #2304 @ 0x900 8008ac8: 681b ldr r3, [r3, #0] 8008aca: 68ba ldr r2, [r7, #8] 8008acc: 0151 lsls r1, r2, #5 8008ace: 68fa ldr r2, [r7, #12] 8008ad0: 440a add r2, r1 8008ad2: f502 6210 add.w r2, r2, #2304 @ 0x900 8008ad6: f423 1300 bic.w r3, r3, #2097152 @ 0x200000 8008ada: 6013 str r3, [r2, #0] 8008adc: 683b ldr r3, [r7, #0] 8008ade: 791b ldrb r3, [r3, #4] 8008ae0: 2b03 cmp r3, #3 8008ae2: d003 beq.n 8008aec 8008ae4: 683b ldr r3, [r7, #0] 8008ae6: 791b ldrb r3, [r3, #4] 8008ae8: 2b02 cmp r3, #2 8008aea: d138 bne.n 8008b5e 8008aec: 68bb ldr r3, [r7, #8] 8008aee: 015a lsls r2, r3, #5 8008af0: 68fb ldr r3, [r7, #12] 8008af2: 4413 add r3, r2 8008af4: f503 6310 add.w r3, r3, #2304 @ 0x900 8008af8: 681b ldr r3, [r3, #0] 8008afa: 68ba ldr r2, [r7, #8] 8008afc: 0151 lsls r1, r2, #5 8008afe: 68fa ldr r2, [r7, #12] 8008b00: 440a add r2, r1 8008b02: f502 6210 add.w r2, r2, #2304 @ 0x900 8008b06: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8008b0a: 6013 str r3, [r2, #0] 8008b0c: e027 b.n 8008b5e 8008b0e: 68bb ldr r3, [r7, #8] 8008b10: 015a lsls r2, r3, #5 8008b12: 68fb ldr r3, [r7, #12] 8008b14: 4413 add r3, r2 8008b16: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008b1a: 681b ldr r3, [r3, #0] 8008b1c: 68ba ldr r2, [r7, #8] 8008b1e: 0151 lsls r1, r2, #5 8008b20: 68fa ldr r2, [r7, #12] 8008b22: 440a add r2, r1 8008b24: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008b28: f423 1300 bic.w r3, r3, #2097152 @ 0x200000 8008b2c: 6013 str r3, [r2, #0] 8008b2e: 683b ldr r3, [r7, #0] 8008b30: 791b ldrb r3, [r3, #4] 8008b32: 2b03 cmp r3, #3 8008b34: d003 beq.n 8008b3e 8008b36: 683b ldr r3, [r7, #0] 8008b38: 791b ldrb r3, [r3, #4] 8008b3a: 2b02 cmp r3, #2 8008b3c: d10f bne.n 8008b5e 8008b3e: 68bb ldr r3, [r7, #8] 8008b40: 015a lsls r2, r3, #5 8008b42: 68fb ldr r3, [r7, #12] 8008b44: 4413 add r3, r2 8008b46: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008b4a: 681b ldr r3, [r3, #0] 8008b4c: 68ba ldr r2, [r7, #8] 8008b4e: 0151 lsls r1, r2, #5 8008b50: 68fa ldr r2, [r7, #12] 8008b52: 440a add r2, r1 8008b54: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008b58: f043 5380 orr.w r3, r3, #268435456 @ 0x10000000 8008b5c: 6013 str r3, [r2, #0] 8008b5e: 2300 movs r3, #0 8008b60: 4618 mov r0, r3 8008b62: 3714 adds r7, #20 8008b64: 46bd mov sp, r7 8008b66: f85d 7b04 ldr.w r7, [sp], #4 8008b6a: 4770 bx lr 08008b6c : 8008b6c: b480 push {r7} 8008b6e: b085 sub sp, #20 8008b70: af00 add r7, sp, #0 8008b72: 6078 str r0, [r7, #4] 8008b74: 460b mov r3, r1 8008b76: 70fb strb r3, [r7, #3] 8008b78: 687b ldr r3, [r7, #4] 8008b7a: 60fb str r3, [r7, #12] 8008b7c: 68fb ldr r3, [r7, #12] 8008b7e: f503 6300 add.w r3, r3, #2048 @ 0x800 8008b82: 681b ldr r3, [r3, #0] 8008b84: 68fa ldr r2, [r7, #12] 8008b86: f502 6200 add.w r2, r2, #2048 @ 0x800 8008b8a: f423 63fe bic.w r3, r3, #2032 @ 0x7f0 8008b8e: 6013 str r3, [r2, #0] 8008b90: 68fb ldr r3, [r7, #12] 8008b92: f503 6300 add.w r3, r3, #2048 @ 0x800 8008b96: 681a ldr r2, [r3, #0] 8008b98: 78fb ldrb r3, [r7, #3] 8008b9a: 011b lsls r3, r3, #4 8008b9c: f403 63fe and.w r3, r3, #2032 @ 0x7f0 8008ba0: 68f9 ldr r1, [r7, #12] 8008ba2: f501 6100 add.w r1, r1, #2048 @ 0x800 8008ba6: 4313 orrs r3, r2 8008ba8: 600b str r3, [r1, #0] 8008baa: 2300 movs r3, #0 8008bac: 4618 mov r0, r3 8008bae: 3714 adds r7, #20 8008bb0: 46bd mov sp, r7 8008bb2: f85d 7b04 ldr.w r7, [sp], #4 8008bb6: 4770 bx lr 08008bb8 : 8008bb8: b480 push {r7} 8008bba: b085 sub sp, #20 8008bbc: af00 add r7, sp, #0 8008bbe: 6078 str r0, [r7, #4] 8008bc0: 687b ldr r3, [r7, #4] 8008bc2: 60fb str r3, [r7, #12] 8008bc4: 68fb ldr r3, [r7, #12] 8008bc6: f503 6360 add.w r3, r3, #3584 @ 0xe00 8008bca: 681b ldr r3, [r3, #0] 8008bcc: 68fa ldr r2, [r7, #12] 8008bce: f502 6260 add.w r2, r2, #3584 @ 0xe00 8008bd2: f023 0303 bic.w r3, r3, #3 8008bd6: 6013 str r3, [r2, #0] 8008bd8: 68fb ldr r3, [r7, #12] 8008bda: f503 6300 add.w r3, r3, #2048 @ 0x800 8008bde: 685b ldr r3, [r3, #4] 8008be0: 68fa ldr r2, [r7, #12] 8008be2: f502 6200 add.w r2, r2, #2048 @ 0x800 8008be6: f023 0302 bic.w r3, r3, #2 8008bea: 6053 str r3, [r2, #4] 8008bec: 2300 movs r3, #0 8008bee: 4618 mov r0, r3 8008bf0: 3714 adds r7, #20 8008bf2: 46bd mov sp, r7 8008bf4: f85d 7b04 ldr.w r7, [sp], #4 8008bf8: 4770 bx lr 08008bfa : 8008bfa: b480 push {r7} 8008bfc: b085 sub sp, #20 8008bfe: af00 add r7, sp, #0 8008c00: 6078 str r0, [r7, #4] 8008c02: 687b ldr r3, [r7, #4] 8008c04: 60fb str r3, [r7, #12] 8008c06: 68fb ldr r3, [r7, #12] 8008c08: f503 6360 add.w r3, r3, #3584 @ 0xe00 8008c0c: 681b ldr r3, [r3, #0] 8008c0e: 68fa ldr r2, [r7, #12] 8008c10: f502 6260 add.w r2, r2, #3584 @ 0xe00 8008c14: f023 0303 bic.w r3, r3, #3 8008c18: 6013 str r3, [r2, #0] 8008c1a: 68fb ldr r3, [r7, #12] 8008c1c: f503 6300 add.w r3, r3, #2048 @ 0x800 8008c20: 685b ldr r3, [r3, #4] 8008c22: 68fa ldr r2, [r7, #12] 8008c24: f502 6200 add.w r2, r2, #2048 @ 0x800 8008c28: f043 0302 orr.w r3, r3, #2 8008c2c: 6053 str r3, [r2, #4] 8008c2e: 2300 movs r3, #0 8008c30: 4618 mov r0, r3 8008c32: 3714 adds r7, #20 8008c34: 46bd mov sp, r7 8008c36: f85d 7b04 ldr.w r7, [sp], #4 8008c3a: 4770 bx lr 08008c3c : 8008c3c: b480 push {r7} 8008c3e: b085 sub sp, #20 8008c40: af00 add r7, sp, #0 8008c42: 6078 str r0, [r7, #4] 8008c44: 687b ldr r3, [r7, #4] 8008c46: 695b ldr r3, [r3, #20] 8008c48: 60fb str r3, [r7, #12] 8008c4a: 687b ldr r3, [r7, #4] 8008c4c: 699b ldr r3, [r3, #24] 8008c4e: 68fa ldr r2, [r7, #12] 8008c50: 4013 ands r3, r2 8008c52: 60fb str r3, [r7, #12] 8008c54: 68fb ldr r3, [r7, #12] 8008c56: 4618 mov r0, r3 8008c58: 3714 adds r7, #20 8008c5a: 46bd mov sp, r7 8008c5c: f85d 7b04 ldr.w r7, [sp], #4 8008c60: 4770 bx lr 08008c62 : 8008c62: b480 push {r7} 8008c64: b085 sub sp, #20 8008c66: af00 add r7, sp, #0 8008c68: 6078 str r0, [r7, #4] 8008c6a: 687b ldr r3, [r7, #4] 8008c6c: 60fb str r3, [r7, #12] 8008c6e: 68fb ldr r3, [r7, #12] 8008c70: f503 6300 add.w r3, r3, #2048 @ 0x800 8008c74: 699b ldr r3, [r3, #24] 8008c76: 60bb str r3, [r7, #8] 8008c78: 68fb ldr r3, [r7, #12] 8008c7a: f503 6300 add.w r3, r3, #2048 @ 0x800 8008c7e: 69db ldr r3, [r3, #28] 8008c80: 68ba ldr r2, [r7, #8] 8008c82: 4013 ands r3, r2 8008c84: 60bb str r3, [r7, #8] 8008c86: 68bb ldr r3, [r7, #8] 8008c88: 0c1b lsrs r3, r3, #16 8008c8a: 4618 mov r0, r3 8008c8c: 3714 adds r7, #20 8008c8e: 46bd mov sp, r7 8008c90: f85d 7b04 ldr.w r7, [sp], #4 8008c94: 4770 bx lr 08008c96 : 8008c96: b480 push {r7} 8008c98: b085 sub sp, #20 8008c9a: af00 add r7, sp, #0 8008c9c: 6078 str r0, [r7, #4] 8008c9e: 687b ldr r3, [r7, #4] 8008ca0: 60fb str r3, [r7, #12] 8008ca2: 68fb ldr r3, [r7, #12] 8008ca4: f503 6300 add.w r3, r3, #2048 @ 0x800 8008ca8: 699b ldr r3, [r3, #24] 8008caa: 60bb str r3, [r7, #8] 8008cac: 68fb ldr r3, [r7, #12] 8008cae: f503 6300 add.w r3, r3, #2048 @ 0x800 8008cb2: 69db ldr r3, [r3, #28] 8008cb4: 68ba ldr r2, [r7, #8] 8008cb6: 4013 ands r3, r2 8008cb8: 60bb str r3, [r7, #8] 8008cba: 68bb ldr r3, [r7, #8] 8008cbc: b29b uxth r3, r3 8008cbe: 4618 mov r0, r3 8008cc0: 3714 adds r7, #20 8008cc2: 46bd mov sp, r7 8008cc4: f85d 7b04 ldr.w r7, [sp], #4 8008cc8: 4770 bx lr 08008cca : 8008cca: b480 push {r7} 8008ccc: b085 sub sp, #20 8008cce: af00 add r7, sp, #0 8008cd0: 6078 str r0, [r7, #4] 8008cd2: 460b mov r3, r1 8008cd4: 70fb strb r3, [r7, #3] 8008cd6: 687b ldr r3, [r7, #4] 8008cd8: 60fb str r3, [r7, #12] 8008cda: 78fb ldrb r3, [r7, #3] 8008cdc: 015a lsls r2, r3, #5 8008cde: 68fb ldr r3, [r7, #12] 8008ce0: 4413 add r3, r2 8008ce2: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008ce6: 689b ldr r3, [r3, #8] 8008ce8: 60bb str r3, [r7, #8] 8008cea: 68fb ldr r3, [r7, #12] 8008cec: f503 6300 add.w r3, r3, #2048 @ 0x800 8008cf0: 695b ldr r3, [r3, #20] 8008cf2: 68ba ldr r2, [r7, #8] 8008cf4: 4013 ands r3, r2 8008cf6: 60bb str r3, [r7, #8] 8008cf8: 68bb ldr r3, [r7, #8] 8008cfa: 4618 mov r0, r3 8008cfc: 3714 adds r7, #20 8008cfe: 46bd mov sp, r7 8008d00: f85d 7b04 ldr.w r7, [sp], #4 8008d04: 4770 bx lr 08008d06 : 8008d06: b480 push {r7} 8008d08: b087 sub sp, #28 8008d0a: af00 add r7, sp, #0 8008d0c: 6078 str r0, [r7, #4] 8008d0e: 460b mov r3, r1 8008d10: 70fb strb r3, [r7, #3] 8008d12: 687b ldr r3, [r7, #4] 8008d14: 617b str r3, [r7, #20] 8008d16: 697b ldr r3, [r7, #20] 8008d18: f503 6300 add.w r3, r3, #2048 @ 0x800 8008d1c: 691b ldr r3, [r3, #16] 8008d1e: 613b str r3, [r7, #16] 8008d20: 697b ldr r3, [r7, #20] 8008d22: f503 6300 add.w r3, r3, #2048 @ 0x800 8008d26: 6b5b ldr r3, [r3, #52] @ 0x34 8008d28: 60fb str r3, [r7, #12] 8008d2a: 78fb ldrb r3, [r7, #3] 8008d2c: f003 030f and.w r3, r3, #15 8008d30: 68fa ldr r2, [r7, #12] 8008d32: fa22 f303 lsr.w r3, r2, r3 8008d36: 01db lsls r3, r3, #7 8008d38: b2db uxtb r3, r3 8008d3a: 693a ldr r2, [r7, #16] 8008d3c: 4313 orrs r3, r2 8008d3e: 613b str r3, [r7, #16] 8008d40: 78fb ldrb r3, [r7, #3] 8008d42: 015a lsls r2, r3, #5 8008d44: 697b ldr r3, [r7, #20] 8008d46: 4413 add r3, r2 8008d48: f503 6310 add.w r3, r3, #2304 @ 0x900 8008d4c: 689b ldr r3, [r3, #8] 8008d4e: 693a ldr r2, [r7, #16] 8008d50: 4013 ands r3, r2 8008d52: 60bb str r3, [r7, #8] 8008d54: 68bb ldr r3, [r7, #8] 8008d56: 4618 mov r0, r3 8008d58: 371c adds r7, #28 8008d5a: 46bd mov sp, r7 8008d5c: f85d 7b04 ldr.w r7, [sp], #4 8008d60: 4770 bx lr 08008d62 : 8008d62: b480 push {r7} 8008d64: b083 sub sp, #12 8008d66: af00 add r7, sp, #0 8008d68: 6078 str r0, [r7, #4] 8008d6a: 687b ldr r3, [r7, #4] 8008d6c: 695b ldr r3, [r3, #20] 8008d6e: f003 0301 and.w r3, r3, #1 8008d72: 4618 mov r0, r3 8008d74: 370c adds r7, #12 8008d76: 46bd mov sp, r7 8008d78: f85d 7b04 ldr.w r7, [sp], #4 8008d7c: 4770 bx lr 08008d7e : 8008d7e: b480 push {r7} 8008d80: b085 sub sp, #20 8008d82: af00 add r7, sp, #0 8008d84: 6078 str r0, [r7, #4] 8008d86: 687b ldr r3, [r7, #4] 8008d88: 60fb str r3, [r7, #12] 8008d8a: 68fb ldr r3, [r7, #12] 8008d8c: f503 6310 add.w r3, r3, #2304 @ 0x900 8008d90: 681b ldr r3, [r3, #0] 8008d92: 68fa ldr r2, [r7, #12] 8008d94: f502 6210 add.w r2, r2, #2304 @ 0x900 8008d98: f423 63ff bic.w r3, r3, #2040 @ 0x7f8 8008d9c: f023 0307 bic.w r3, r3, #7 8008da0: 6013 str r3, [r2, #0] 8008da2: 68fb ldr r3, [r7, #12] 8008da4: f503 6300 add.w r3, r3, #2048 @ 0x800 8008da8: 685b ldr r3, [r3, #4] 8008daa: 68fa ldr r2, [r7, #12] 8008dac: f502 6200 add.w r2, r2, #2048 @ 0x800 8008db0: f443 7380 orr.w r3, r3, #256 @ 0x100 8008db4: 6053 str r3, [r2, #4] 8008db6: 2300 movs r3, #0 8008db8: 4618 mov r0, r3 8008dba: 3714 adds r7, #20 8008dbc: 46bd mov sp, r7 8008dbe: f85d 7b04 ldr.w r7, [sp], #4 8008dc2: 4770 bx lr 08008dc4 : 8008dc4: b480 push {r7} 8008dc6: b087 sub sp, #28 8008dc8: af00 add r7, sp, #0 8008dca: 60f8 str r0, [r7, #12] 8008dcc: 460b mov r3, r1 8008dce: 607a str r2, [r7, #4] 8008dd0: 72fb strb r3, [r7, #11] 8008dd2: 68fb ldr r3, [r7, #12] 8008dd4: 617b str r3, [r7, #20] 8008dd6: 68fb ldr r3, [r7, #12] 8008dd8: 333c adds r3, #60 @ 0x3c 8008dda: 3304 adds r3, #4 8008ddc: 681b ldr r3, [r3, #0] 8008dde: 613b str r3, [r7, #16] 8008de0: 693b ldr r3, [r7, #16] 8008de2: 4a26 ldr r2, [pc, #152] @ (8008e7c ) 8008de4: 4293 cmp r3, r2 8008de6: d90a bls.n 8008dfe 8008de8: 697b ldr r3, [r7, #20] 8008dea: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008dee: 681b ldr r3, [r3, #0] 8008df0: f003 4300 and.w r3, r3, #2147483648 @ 0x80000000 8008df4: f1b3 4f00 cmp.w r3, #2147483648 @ 0x80000000 8008df8: d101 bne.n 8008dfe 8008dfa: 2300 movs r3, #0 8008dfc: e037 b.n 8008e6e 8008dfe: 697b ldr r3, [r7, #20] 8008e00: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008e04: 461a mov r2, r3 8008e06: 2300 movs r3, #0 8008e08: 6113 str r3, [r2, #16] 8008e0a: 697b ldr r3, [r7, #20] 8008e0c: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008e10: 691b ldr r3, [r3, #16] 8008e12: 697a ldr r2, [r7, #20] 8008e14: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008e18: f443 2300 orr.w r3, r3, #524288 @ 0x80000 8008e1c: 6113 str r3, [r2, #16] 8008e1e: 697b ldr r3, [r7, #20] 8008e20: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008e24: 691b ldr r3, [r3, #16] 8008e26: 697a ldr r2, [r7, #20] 8008e28: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008e2c: f043 0318 orr.w r3, r3, #24 8008e30: 6113 str r3, [r2, #16] 8008e32: 697b ldr r3, [r7, #20] 8008e34: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008e38: 691b ldr r3, [r3, #16] 8008e3a: 697a ldr r2, [r7, #20] 8008e3c: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008e40: f043 43c0 orr.w r3, r3, #1610612736 @ 0x60000000 8008e44: 6113 str r3, [r2, #16] 8008e46: 7afb ldrb r3, [r7, #11] 8008e48: 2b01 cmp r3, #1 8008e4a: d10f bne.n 8008e6c 8008e4c: 697b ldr r3, [r7, #20] 8008e4e: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008e52: 461a mov r2, r3 8008e54: 687b ldr r3, [r7, #4] 8008e56: 6153 str r3, [r2, #20] 8008e58: 697b ldr r3, [r7, #20] 8008e5a: f503 6330 add.w r3, r3, #2816 @ 0xb00 8008e5e: 681b ldr r3, [r3, #0] 8008e60: 697a ldr r2, [r7, #20] 8008e62: f502 6230 add.w r2, r2, #2816 @ 0xb00 8008e66: f043 2380 orr.w r3, r3, #2147516416 @ 0x80008000 8008e6a: 6013 str r3, [r2, #0] 8008e6c: 2300 movs r3, #0 8008e6e: 4618 mov r0, r3 8008e70: 371c adds r7, #28 8008e72: 46bd mov sp, r7 8008e74: f85d 7b04 ldr.w r7, [sp], #4 8008e78: 4770 bx lr 8008e7a: bf00 nop 8008e7c: 4f54300a .word 0x4f54300a 08008e80 : 8008e80: b480 push {r7} 8008e82: b085 sub sp, #20 8008e84: af00 add r7, sp, #0 8008e86: 6078 str r0, [r7, #4] 8008e88: 2300 movs r3, #0 8008e8a: 60fb str r3, [r7, #12] 8008e8c: 68fb ldr r3, [r7, #12] 8008e8e: 3301 adds r3, #1 8008e90: 60fb str r3, [r7, #12] 8008e92: 68fb ldr r3, [r7, #12] 8008e94: f1b3 6f70 cmp.w r3, #251658240 @ 0xf000000 8008e98: d901 bls.n 8008e9e 8008e9a: 2303 movs r3, #3 8008e9c: e022 b.n 8008ee4 8008e9e: 687b ldr r3, [r7, #4] 8008ea0: 691b ldr r3, [r3, #16] 8008ea2: 2b00 cmp r3, #0 8008ea4: daf2 bge.n 8008e8c 8008ea6: 230a movs r3, #10 8008ea8: 60fb str r3, [r7, #12] 8008eaa: e002 b.n 8008eb2 8008eac: 68fb ldr r3, [r7, #12] 8008eae: 3b01 subs r3, #1 8008eb0: 60fb str r3, [r7, #12] 8008eb2: 68fb ldr r3, [r7, #12] 8008eb4: 2b00 cmp r3, #0 8008eb6: d1f9 bne.n 8008eac 8008eb8: 687b ldr r3, [r7, #4] 8008eba: 691b ldr r3, [r3, #16] 8008ebc: f043 0201 orr.w r2, r3, #1 8008ec0: 687b ldr r3, [r7, #4] 8008ec2: 611a str r2, [r3, #16] 8008ec4: 68fb ldr r3, [r7, #12] 8008ec6: 3301 adds r3, #1 8008ec8: 60fb str r3, [r7, #12] 8008eca: 68fb ldr r3, [r7, #12] 8008ecc: f1b3 6f70 cmp.w r3, #251658240 @ 0xf000000 8008ed0: d901 bls.n 8008ed6 8008ed2: 2303 movs r3, #3 8008ed4: e006 b.n 8008ee4 8008ed6: 687b ldr r3, [r7, #4] 8008ed8: 691b ldr r3, [r3, #16] 8008eda: f003 0301 and.w r3, r3, #1 8008ede: 2b01 cmp r3, #1 8008ee0: d0f0 beq.n 8008ec4 8008ee2: 2300 movs r3, #0 8008ee4: 4618 mov r0, r3 8008ee6: 3714 adds r7, #20 8008ee8: 46bd mov sp, r7 8008eea: f85d 7b04 ldr.w r7, [sp], #4 8008eee: 4770 bx lr 08008ef0 : 8008ef0: b580 push {r7, lr} 8008ef2: b084 sub sp, #16 8008ef4: af00 add r7, sp, #0 8008ef6: 6078 str r0, [r7, #4] 8008ef8: 460b mov r3, r1 8008efa: 70fb strb r3, [r7, #3] 8008efc: 2010 movs r0, #16 8008efe: f002 f9e3 bl 800b2c8 8008f02: 60f8 str r0, [r7, #12] 8008f04: 68fb ldr r3, [r7, #12] 8008f06: 2b00 cmp r3, #0 8008f08: d109 bne.n 8008f1e 8008f0a: 687b ldr r3, [r7, #4] 8008f0c: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8008f10: 687b ldr r3, [r7, #4] 8008f12: 32b0 adds r2, #176 @ 0xb0 8008f14: 2100 movs r1, #0 8008f16: f843 1022 str.w r1, [r3, r2, lsl #2] 8008f1a: 2302 movs r3, #2 8008f1c: e048 b.n 8008fb0 8008f1e: 687b ldr r3, [r7, #4] 8008f20: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8008f24: 687b ldr r3, [r7, #4] 8008f26: 32b0 adds r2, #176 @ 0xb0 8008f28: 68f9 ldr r1, [r7, #12] 8008f2a: f843 1022 str.w r1, [r3, r2, lsl #2] 8008f2e: 687b ldr r3, [r7, #4] 8008f30: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8008f34: 687b ldr r3, [r7, #4] 8008f36: 32b0 adds r2, #176 @ 0xb0 8008f38: f853 2022 ldr.w r2, [r3, r2, lsl #2] 8008f3c: 687b ldr r3, [r7, #4] 8008f3e: f8c3 22bc str.w r2, [r3, #700] @ 0x2bc 8008f42: 687b ldr r3, [r7, #4] 8008f44: 7c1b ldrb r3, [r3, #16] 8008f46: 2b00 cmp r3, #0 8008f48: d10d bne.n 8008f66 8008f4a: 4b1b ldr r3, [pc, #108] @ (8008fb8 ) 8008f4c: 781b ldrb r3, [r3, #0] 8008f4e: f003 020f and.w r2, r3, #15 8008f52: 6879 ldr r1, [r7, #4] 8008f54: 4613 mov r3, r2 8008f56: 009b lsls r3, r3, #2 8008f58: 4413 add r3, r2 8008f5a: 009b lsls r3, r3, #2 8008f5c: 440b add r3, r1 8008f5e: 331c adds r3, #28 8008f60: 2207 movs r2, #7 8008f62: 601a str r2, [r3, #0] 8008f64: e00c b.n 8008f80 8008f66: 4b14 ldr r3, [pc, #80] @ (8008fb8 ) 8008f68: 781b ldrb r3, [r3, #0] 8008f6a: f003 020f and.w r2, r3, #15 8008f6e: 6879 ldr r1, [r7, #4] 8008f70: 4613 mov r3, r2 8008f72: 009b lsls r3, r3, #2 8008f74: 4413 add r3, r2 8008f76: 009b lsls r3, r3, #2 8008f78: 440b add r3, r1 8008f7a: 331c adds r3, #28 8008f7c: 220a movs r2, #10 8008f7e: 601a str r2, [r3, #0] 8008f80: 4b0d ldr r3, [pc, #52] @ (8008fb8 ) 8008f82: 7819 ldrb r1, [r3, #0] 8008f84: 230e movs r3, #14 8008f86: 2203 movs r2, #3 8008f88: 6878 ldr r0, [r7, #4] 8008f8a: f002 f83e bl 800b00a 8008f8e: 4b0a ldr r3, [pc, #40] @ (8008fb8 ) 8008f90: 781b ldrb r3, [r3, #0] 8008f92: f003 020f and.w r2, r3, #15 8008f96: 6879 ldr r1, [r7, #4] 8008f98: 4613 mov r3, r2 8008f9a: 009b lsls r3, r3, #2 8008f9c: 4413 add r3, r2 8008f9e: 009b lsls r3, r3, #2 8008fa0: 440b add r3, r1 8008fa2: 3323 adds r3, #35 @ 0x23 8008fa4: 2201 movs r2, #1 8008fa6: 701a strb r2, [r3, #0] 8008fa8: 68fb ldr r3, [r7, #12] 8008faa: 2200 movs r2, #0 8008fac: 731a strb r2, [r3, #12] 8008fae: 2300 movs r3, #0 8008fb0: 4618 mov r0, r3 8008fb2: 3710 adds r7, #16 8008fb4: 46bd mov sp, r7 8008fb6: bd80 pop {r7, pc} 8008fb8: 2000013d .word 0x2000013d 08008fbc : 8008fbc: b580 push {r7, lr} 8008fbe: b082 sub sp, #8 8008fc0: af00 add r7, sp, #0 8008fc2: 6078 str r0, [r7, #4] 8008fc4: 460b mov r3, r1 8008fc6: 70fb strb r3, [r7, #3] 8008fc8: 4b1f ldr r3, [pc, #124] @ (8009048 ) 8008fca: 781b ldrb r3, [r3, #0] 8008fcc: 4619 mov r1, r3 8008fce: 6878 ldr r0, [r7, #4] 8008fd0: f002 f841 bl 800b056 8008fd4: 4b1c ldr r3, [pc, #112] @ (8009048 ) 8008fd6: 781b ldrb r3, [r3, #0] 8008fd8: f003 020f and.w r2, r3, #15 8008fdc: 6879 ldr r1, [r7, #4] 8008fde: 4613 mov r3, r2 8008fe0: 009b lsls r3, r3, #2 8008fe2: 4413 add r3, r2 8008fe4: 009b lsls r3, r3, #2 8008fe6: 440b add r3, r1 8008fe8: 3323 adds r3, #35 @ 0x23 8008fea: 2200 movs r2, #0 8008fec: 701a strb r2, [r3, #0] 8008fee: 4b16 ldr r3, [pc, #88] @ (8009048 ) 8008ff0: 781b ldrb r3, [r3, #0] 8008ff2: f003 020f and.w r2, r3, #15 8008ff6: 6879 ldr r1, [r7, #4] 8008ff8: 4613 mov r3, r2 8008ffa: 009b lsls r3, r3, #2 8008ffc: 4413 add r3, r2 8008ffe: 009b lsls r3, r3, #2 8009000: 440b add r3, r1 8009002: 331c adds r3, #28 8009004: 2200 movs r2, #0 8009006: 601a str r2, [r3, #0] 8009008: 687b ldr r3, [r7, #4] 800900a: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 800900e: 687b ldr r3, [r7, #4] 8009010: 32b0 adds r2, #176 @ 0xb0 8009012: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009016: 2b00 cmp r3, #0 8009018: d011 beq.n 800903e 800901a: 687b ldr r3, [r7, #4] 800901c: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009020: 687b ldr r3, [r7, #4] 8009022: 32b0 adds r2, #176 @ 0xb0 8009024: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009028: 4618 mov r0, r3 800902a: f002 f95b bl 800b2e4 800902e: 687b ldr r3, [r7, #4] 8009030: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009034: 687b ldr r3, [r7, #4] 8009036: 32b0 adds r2, #176 @ 0xb0 8009038: 2100 movs r1, #0 800903a: f843 1022 str.w r1, [r3, r2, lsl #2] 800903e: 2300 movs r3, #0 8009040: 4618 mov r0, r3 8009042: 3708 adds r7, #8 8009044: 46bd mov sp, r7 8009046: bd80 pop {r7, pc} 8009048: 2000013d .word 0x2000013d 0800904c : 800904c: b580 push {r7, lr} 800904e: b086 sub sp, #24 8009050: af00 add r7, sp, #0 8009052: 6078 str r0, [r7, #4] 8009054: 6039 str r1, [r7, #0] 8009056: 687b ldr r3, [r7, #4] 8009058: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 800905c: 687b ldr r3, [r7, #4] 800905e: 32b0 adds r2, #176 @ 0xb0 8009060: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009064: 60fb str r3, [r7, #12] 8009066: 2300 movs r3, #0 8009068: 75fb strb r3, [r7, #23] 800906a: 2300 movs r3, #0 800906c: 817b strh r3, [r7, #10] 800906e: 68fb ldr r3, [r7, #12] 8009070: 2b00 cmp r3, #0 8009072: d101 bne.n 8009078 8009074: 2303 movs r3, #3 8009076: e0e8 b.n 800924a 8009078: 683b ldr r3, [r7, #0] 800907a: 781b ldrb r3, [r3, #0] 800907c: f003 0360 and.w r3, r3, #96 @ 0x60 8009080: 2b00 cmp r3, #0 8009082: d046 beq.n 8009112 8009084: 2b20 cmp r3, #32 8009086: f040 80d8 bne.w 800923a 800908a: 683b ldr r3, [r7, #0] 800908c: 785b ldrb r3, [r3, #1] 800908e: 3b02 subs r3, #2 8009090: 2b09 cmp r3, #9 8009092: d836 bhi.n 8009102 8009094: a201 add r2, pc, #4 @ (adr r2, 800909c ) 8009096: f852 f023 ldr.w pc, [r2, r3, lsl #2] 800909a: bf00 nop 800909c: 080090f3 .word 0x080090f3 80090a0: 080090d3 .word 0x080090d3 80090a4: 08009103 .word 0x08009103 80090a8: 08009103 .word 0x08009103 80090ac: 08009103 .word 0x08009103 80090b0: 08009103 .word 0x08009103 80090b4: 08009103 .word 0x08009103 80090b8: 08009103 .word 0x08009103 80090bc: 080090e1 .word 0x080090e1 80090c0: 080090c5 .word 0x080090c5 80090c4: 683b ldr r3, [r7, #0] 80090c6: 885b ldrh r3, [r3, #2] 80090c8: b2db uxtb r3, r3 80090ca: 461a mov r2, r3 80090cc: 68fb ldr r3, [r7, #12] 80090ce: 601a str r2, [r3, #0] 80090d0: e01e b.n 8009110 80090d2: 68fb ldr r3, [r7, #12] 80090d4: 2201 movs r2, #1 80090d6: 4619 mov r1, r3 80090d8: 6878 ldr r0, [r7, #4] 80090da: f001 fc25 bl 800a928 80090de: e017 b.n 8009110 80090e0: 683b ldr r3, [r7, #0] 80090e2: 885b ldrh r3, [r3, #2] 80090e4: 0a1b lsrs r3, r3, #8 80090e6: b29b uxth r3, r3 80090e8: b2db uxtb r3, r3 80090ea: 461a mov r2, r3 80090ec: 68fb ldr r3, [r7, #12] 80090ee: 605a str r2, [r3, #4] 80090f0: e00e b.n 8009110 80090f2: 68fb ldr r3, [r7, #12] 80090f4: 3304 adds r3, #4 80090f6: 2201 movs r2, #1 80090f8: 4619 mov r1, r3 80090fa: 6878 ldr r0, [r7, #4] 80090fc: f001 fc14 bl 800a928 8009100: e006 b.n 8009110 8009102: 6839 ldr r1, [r7, #0] 8009104: 6878 ldr r0, [r7, #4] 8009106: f001 fb92 bl 800a82e 800910a: 2303 movs r3, #3 800910c: 75fb strb r3, [r7, #23] 800910e: bf00 nop 8009110: e09a b.n 8009248 8009112: 683b ldr r3, [r7, #0] 8009114: 785b ldrb r3, [r3, #1] 8009116: 2b0b cmp r3, #11 8009118: f200 8086 bhi.w 8009228 800911c: a201 add r2, pc, #4 @ (adr r2, 8009124 ) 800911e: f852 f023 ldr.w pc, [r2, r3, lsl #2] 8009122: bf00 nop 8009124: 08009155 .word 0x08009155 8009128: 08009237 .word 0x08009237 800912c: 08009229 .word 0x08009229 8009130: 08009229 .word 0x08009229 8009134: 08009229 .word 0x08009229 8009138: 08009229 .word 0x08009229 800913c: 0800917f .word 0x0800917f 8009140: 08009229 .word 0x08009229 8009144: 08009229 .word 0x08009229 8009148: 08009229 .word 0x08009229 800914c: 080091d7 .word 0x080091d7 8009150: 08009201 .word 0x08009201 8009154: 687b ldr r3, [r7, #4] 8009156: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800915a: b2db uxtb r3, r3 800915c: 2b03 cmp r3, #3 800915e: d107 bne.n 8009170 8009160: f107 030a add.w r3, r7, #10 8009164: 2202 movs r2, #2 8009166: 4619 mov r1, r3 8009168: 6878 ldr r0, [r7, #4] 800916a: f001 fbdd bl 800a928 800916e: e063 b.n 8009238 8009170: 6839 ldr r1, [r7, #0] 8009172: 6878 ldr r0, [r7, #4] 8009174: f001 fb5b bl 800a82e 8009178: 2303 movs r3, #3 800917a: 75fb strb r3, [r7, #23] 800917c: e05c b.n 8009238 800917e: 683b ldr r3, [r7, #0] 8009180: 885b ldrh r3, [r3, #2] 8009182: 0a1b lsrs r3, r3, #8 8009184: b29b uxth r3, r3 8009186: 2b22 cmp r3, #34 @ 0x22 8009188: d108 bne.n 800919c 800918a: 683b ldr r3, [r7, #0] 800918c: 88db ldrh r3, [r3, #6] 800918e: 2b2d cmp r3, #45 @ 0x2d 8009190: bf28 it cs 8009192: 232d movcs r3, #45 @ 0x2d 8009194: 82bb strh r3, [r7, #20] 8009196: 4b2f ldr r3, [pc, #188] @ (8009254 ) 8009198: 613b str r3, [r7, #16] 800919a: e015 b.n 80091c8 800919c: 683b ldr r3, [r7, #0] 800919e: 885b ldrh r3, [r3, #2] 80091a0: 0a1b lsrs r3, r3, #8 80091a2: b29b uxth r3, r3 80091a4: 2b21 cmp r3, #33 @ 0x21 80091a6: d108 bne.n 80091ba 80091a8: 4b2b ldr r3, [pc, #172] @ (8009258 ) 80091aa: 613b str r3, [r7, #16] 80091ac: 683b ldr r3, [r7, #0] 80091ae: 88db ldrh r3, [r3, #6] 80091b0: 2b09 cmp r3, #9 80091b2: bf28 it cs 80091b4: 2309 movcs r3, #9 80091b6: 82bb strh r3, [r7, #20] 80091b8: e006 b.n 80091c8 80091ba: 6839 ldr r1, [r7, #0] 80091bc: 6878 ldr r0, [r7, #4] 80091be: f001 fb36 bl 800a82e 80091c2: 2303 movs r3, #3 80091c4: 75fb strb r3, [r7, #23] 80091c6: e037 b.n 8009238 80091c8: 8abb ldrh r3, [r7, #20] 80091ca: 461a mov r2, r3 80091cc: 6939 ldr r1, [r7, #16] 80091ce: 6878 ldr r0, [r7, #4] 80091d0: f001 fbaa bl 800a928 80091d4: e030 b.n 8009238 80091d6: 687b ldr r3, [r7, #4] 80091d8: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 80091dc: b2db uxtb r3, r3 80091de: 2b03 cmp r3, #3 80091e0: d107 bne.n 80091f2 80091e2: 68fb ldr r3, [r7, #12] 80091e4: 3308 adds r3, #8 80091e6: 2201 movs r2, #1 80091e8: 4619 mov r1, r3 80091ea: 6878 ldr r0, [r7, #4] 80091ec: f001 fb9c bl 800a928 80091f0: e022 b.n 8009238 80091f2: 6839 ldr r1, [r7, #0] 80091f4: 6878 ldr r0, [r7, #4] 80091f6: f001 fb1a bl 800a82e 80091fa: 2303 movs r3, #3 80091fc: 75fb strb r3, [r7, #23] 80091fe: e01b b.n 8009238 8009200: 687b ldr r3, [r7, #4] 8009202: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009206: b2db uxtb r3, r3 8009208: 2b03 cmp r3, #3 800920a: d106 bne.n 800921a 800920c: 683b ldr r3, [r7, #0] 800920e: 885b ldrh r3, [r3, #2] 8009210: b2db uxtb r3, r3 8009212: 461a mov r2, r3 8009214: 68fb ldr r3, [r7, #12] 8009216: 609a str r2, [r3, #8] 8009218: e00e b.n 8009238 800921a: 6839 ldr r1, [r7, #0] 800921c: 6878 ldr r0, [r7, #4] 800921e: f001 fb06 bl 800a82e 8009222: 2303 movs r3, #3 8009224: 75fb strb r3, [r7, #23] 8009226: e007 b.n 8009238 8009228: 6839 ldr r1, [r7, #0] 800922a: 6878 ldr r0, [r7, #4] 800922c: f001 faff bl 800a82e 8009230: 2303 movs r3, #3 8009232: 75fb strb r3, [r7, #23] 8009234: e000 b.n 8009238 8009236: bf00 nop 8009238: e006 b.n 8009248 800923a: 6839 ldr r1, [r7, #0] 800923c: 6878 ldr r0, [r7, #4] 800923e: f001 faf6 bl 800a82e 8009242: 2303 movs r3, #3 8009244: 75fb strb r3, [r7, #23] 8009246: bf00 nop 8009248: 7dfb ldrb r3, [r7, #23] 800924a: 4618 mov r0, r3 800924c: 3718 adds r7, #24 800924e: 46bd mov sp, r7 8009250: bd80 pop {r7, pc} 8009252: bf00 nop 8009254: 20000110 .word 0x20000110 8009258: 200000f8 .word 0x200000f8 0800925c : 800925c: b580 push {r7, lr} 800925e: b086 sub sp, #24 8009260: af00 add r7, sp, #0 8009262: 60f8 str r0, [r7, #12] 8009264: 60b9 str r1, [r7, #8] 8009266: 4613 mov r3, r2 8009268: 80fb strh r3, [r7, #6] 800926a: 68fb ldr r3, [r7, #12] 800926c: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009270: 68fb ldr r3, [r7, #12] 8009272: 32b0 adds r2, #176 @ 0xb0 8009274: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009278: 617b str r3, [r7, #20] 800927a: 697b ldr r3, [r7, #20] 800927c: 2b00 cmp r3, #0 800927e: d101 bne.n 8009284 8009280: 2303 movs r3, #3 8009282: e014 b.n 80092ae 8009284: 68fb ldr r3, [r7, #12] 8009286: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800928a: b2db uxtb r3, r3 800928c: 2b03 cmp r3, #3 800928e: d10d bne.n 80092ac 8009290: 697b ldr r3, [r7, #20] 8009292: 7b1b ldrb r3, [r3, #12] 8009294: 2b00 cmp r3, #0 8009296: d109 bne.n 80092ac 8009298: 697b ldr r3, [r7, #20] 800929a: 2201 movs r2, #1 800929c: 731a strb r2, [r3, #12] 800929e: 4b06 ldr r3, [pc, #24] @ (80092b8 ) 80092a0: 7819 ldrb r1, [r3, #0] 80092a2: 88fb ldrh r3, [r7, #6] 80092a4: 68ba ldr r2, [r7, #8] 80092a6: 68f8 ldr r0, [r7, #12] 80092a8: f001 ff7d bl 800b1a6 80092ac: 2300 movs r3, #0 80092ae: 4618 mov r0, r3 80092b0: 3718 adds r7, #24 80092b2: 46bd mov sp, r7 80092b4: bd80 pop {r7, pc} 80092b6: bf00 nop 80092b8: 2000013d .word 0x2000013d 080092bc : 80092bc: b580 push {r7, lr} 80092be: b084 sub sp, #16 80092c0: af00 add r7, sp, #0 80092c2: 6078 str r0, [r7, #4] 80092c4: 2181 movs r1, #129 @ 0x81 80092c6: 4809 ldr r0, [pc, #36] @ (80092ec ) 80092c8: f000 fc4e bl 8009b68 80092cc: 60f8 str r0, [r7, #12] 80092ce: 68fb ldr r3, [r7, #12] 80092d0: 2b00 cmp r3, #0 80092d2: d002 beq.n 80092da 80092d4: 68fb ldr r3, [r7, #12] 80092d6: 220a movs r2, #10 80092d8: 719a strb r2, [r3, #6] 80092da: 687b ldr r3, [r7, #4] 80092dc: 2222 movs r2, #34 @ 0x22 80092de: 801a strh r2, [r3, #0] 80092e0: 4b02 ldr r3, [pc, #8] @ (80092ec ) 80092e2: 4618 mov r0, r3 80092e4: 3710 adds r7, #16 80092e6: 46bd mov sp, r7 80092e8: bd80 pop {r7, pc} 80092ea: bf00 nop 80092ec: 200000d4 .word 0x200000d4 080092f0 : 80092f0: b580 push {r7, lr} 80092f2: b084 sub sp, #16 80092f4: af00 add r7, sp, #0 80092f6: 6078 str r0, [r7, #4] 80092f8: 2181 movs r1, #129 @ 0x81 80092fa: 4809 ldr r0, [pc, #36] @ (8009320 ) 80092fc: f000 fc34 bl 8009b68 8009300: 60f8 str r0, [r7, #12] 8009302: 68fb ldr r3, [r7, #12] 8009304: 2b00 cmp r3, #0 8009306: d002 beq.n 800930e 8009308: 68fb ldr r3, [r7, #12] 800930a: 2207 movs r2, #7 800930c: 719a strb r2, [r3, #6] 800930e: 687b ldr r3, [r7, #4] 8009310: 2222 movs r2, #34 @ 0x22 8009312: 801a strh r2, [r3, #0] 8009314: 4b02 ldr r3, [pc, #8] @ (8009320 ) 8009316: 4618 mov r0, r3 8009318: 3710 adds r7, #16 800931a: 46bd mov sp, r7 800931c: bd80 pop {r7, pc} 800931e: bf00 nop 8009320: 200000d4 .word 0x200000d4 08009324 : 8009324: b580 push {r7, lr} 8009326: b084 sub sp, #16 8009328: af00 add r7, sp, #0 800932a: 6078 str r0, [r7, #4] 800932c: 2181 movs r1, #129 @ 0x81 800932e: 4809 ldr r0, [pc, #36] @ (8009354 ) 8009330: f000 fc1a bl 8009b68 8009334: 60f8 str r0, [r7, #12] 8009336: 68fb ldr r3, [r7, #12] 8009338: 2b00 cmp r3, #0 800933a: d002 beq.n 8009342 800933c: 68fb ldr r3, [r7, #12] 800933e: 220a movs r2, #10 8009340: 719a strb r2, [r3, #6] 8009342: 687b ldr r3, [r7, #4] 8009344: 2222 movs r2, #34 @ 0x22 8009346: 801a strh r2, [r3, #0] 8009348: 4b02 ldr r3, [pc, #8] @ (8009354 ) 800934a: 4618 mov r0, r3 800934c: 3710 adds r7, #16 800934e: 46bd mov sp, r7 8009350: bd80 pop {r7, pc} 8009352: bf00 nop 8009354: 200000d4 .word 0x200000d4 08009358 : 8009358: b480 push {r7} 800935a: b083 sub sp, #12 800935c: af00 add r7, sp, #0 800935e: 6078 str r0, [r7, #4] 8009360: 460b mov r3, r1 8009362: 70fb strb r3, [r7, #3] 8009364: 687b ldr r3, [r7, #4] 8009366: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 800936a: 687b ldr r3, [r7, #4] 800936c: 32b0 adds r2, #176 @ 0xb0 800936e: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009372: 2200 movs r2, #0 8009374: 731a strb r2, [r3, #12] 8009376: 2300 movs r3, #0 8009378: 4618 mov r0, r3 800937a: 370c adds r7, #12 800937c: 46bd mov sp, r7 800937e: f85d 7b04 ldr.w r7, [sp], #4 8009382: 4770 bx lr 08009384 : 8009384: b480 push {r7} 8009386: b083 sub sp, #12 8009388: af00 add r7, sp, #0 800938a: 6078 str r0, [r7, #4] 800938c: 687b ldr r3, [r7, #4] 800938e: 220a movs r2, #10 8009390: 801a strh r2, [r3, #0] 8009392: 4b03 ldr r3, [pc, #12] @ (80093a0 ) 8009394: 4618 mov r0, r3 8009396: 370c adds r7, #12 8009398: 46bd mov sp, r7 800939a: f85d 7b04 ldr.w r7, [sp], #4 800939e: 4770 bx lr 80093a0: 20000104 .word 0x20000104 080093a4 : 80093a4: b580 push {r7, lr} 80093a6: b086 sub sp, #24 80093a8: af00 add r7, sp, #0 80093aa: 60f8 str r0, [r7, #12] 80093ac: 60b9 str r1, [r7, #8] 80093ae: 4613 mov r3, r2 80093b0: 71fb strb r3, [r7, #7] 80093b2: 68fb ldr r3, [r7, #12] 80093b4: 2b00 cmp r3, #0 80093b6: d101 bne.n 80093bc 80093b8: 2303 movs r3, #3 80093ba: e01f b.n 80093fc 80093bc: 68fb ldr r3, [r7, #12] 80093be: 2200 movs r2, #0 80093c0: f8c3 22b8 str.w r2, [r3, #696] @ 0x2b8 80093c4: 68fb ldr r3, [r7, #12] 80093c6: 2200 movs r2, #0 80093c8: f8c3 22c4 str.w r2, [r3, #708] @ 0x2c4 80093cc: 68fb ldr r3, [r7, #12] 80093ce: 2200 movs r2, #0 80093d0: f8c3 22d0 str.w r2, [r3, #720] @ 0x2d0 80093d4: 68bb ldr r3, [r7, #8] 80093d6: 2b00 cmp r3, #0 80093d8: d003 beq.n 80093e2 80093da: 68fb ldr r3, [r7, #12] 80093dc: 68ba ldr r2, [r7, #8] 80093de: f8c3 22b4 str.w r2, [r3, #692] @ 0x2b4 80093e2: 68fb ldr r3, [r7, #12] 80093e4: 2201 movs r2, #1 80093e6: f883 229c strb.w r2, [r3, #668] @ 0x29c 80093ea: 68fb ldr r3, [r7, #12] 80093ec: 79fa ldrb r2, [r7, #7] 80093ee: 701a strb r2, [r3, #0] 80093f0: 68f8 ldr r0, [r7, #12] 80093f2: f001 fda3 bl 800af3c 80093f6: 4603 mov r3, r0 80093f8: 75fb strb r3, [r7, #23] 80093fa: 7dfb ldrb r3, [r7, #23] 80093fc: 4618 mov r0, r3 80093fe: 3718 adds r7, #24 8009400: 46bd mov sp, r7 8009402: bd80 pop {r7, pc} 08009404 : 8009404: b580 push {r7, lr} 8009406: b084 sub sp, #16 8009408: af00 add r7, sp, #0 800940a: 6078 str r0, [r7, #4] 800940c: 6039 str r1, [r7, #0] 800940e: 2300 movs r3, #0 8009410: 81fb strh r3, [r7, #14] 8009412: 683b ldr r3, [r7, #0] 8009414: 2b00 cmp r3, #0 8009416: d101 bne.n 800941c 8009418: 2303 movs r3, #3 800941a: e025 b.n 8009468 800941c: 687b ldr r3, [r7, #4] 800941e: 683a ldr r2, [r7, #0] 8009420: f8c3 22b8 str.w r2, [r3, #696] @ 0x2b8 8009424: 687b ldr r3, [r7, #4] 8009426: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 800942a: 687b ldr r3, [r7, #4] 800942c: 32ae adds r2, #174 @ 0xae 800942e: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009432: 6adb ldr r3, [r3, #44] @ 0x2c 8009434: 2b00 cmp r3, #0 8009436: d00f beq.n 8009458 8009438: 687b ldr r3, [r7, #4] 800943a: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 800943e: 687b ldr r3, [r7, #4] 8009440: 32ae adds r2, #174 @ 0xae 8009442: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009446: 6adb ldr r3, [r3, #44] @ 0x2c 8009448: f107 020e add.w r2, r7, #14 800944c: 4610 mov r0, r2 800944e: 4798 blx r3 8009450: 4602 mov r2, r0 8009452: 687b ldr r3, [r7, #4] 8009454: f8c3 22d0 str.w r2, [r3, #720] @ 0x2d0 8009458: 687b ldr r3, [r7, #4] 800945a: f8d3 32d8 ldr.w r3, [r3, #728] @ 0x2d8 800945e: 1c5a adds r2, r3, #1 8009460: 687b ldr r3, [r7, #4] 8009462: f8c3 22d8 str.w r2, [r3, #728] @ 0x2d8 8009466: 2300 movs r3, #0 8009468: 4618 mov r0, r3 800946a: 3710 adds r7, #16 800946c: 46bd mov sp, r7 800946e: bd80 pop {r7, pc} 08009470 : 8009470: b580 push {r7, lr} 8009472: b082 sub sp, #8 8009474: af00 add r7, sp, #0 8009476: 6078 str r0, [r7, #4] 8009478: 6878 ldr r0, [r7, #4] 800947a: f001 fdab bl 800afd4 800947e: 4603 mov r3, r0 8009480: 4618 mov r0, r3 8009482: 3708 adds r7, #8 8009484: 46bd mov sp, r7 8009486: bd80 pop {r7, pc} 08009488 : 8009488: b480 push {r7} 800948a: b083 sub sp, #12 800948c: af00 add r7, sp, #0 800948e: 6078 str r0, [r7, #4] 8009490: 2300 movs r3, #0 8009492: 4618 mov r0, r3 8009494: 370c adds r7, #12 8009496: 46bd mov sp, r7 8009498: f85d 7b04 ldr.w r7, [sp], #4 800949c: 4770 bx lr 0800949e : 800949e: b580 push {r7, lr} 80094a0: b084 sub sp, #16 80094a2: af00 add r7, sp, #0 80094a4: 6078 str r0, [r7, #4] 80094a6: 460b mov r3, r1 80094a8: 70fb strb r3, [r7, #3] 80094aa: 2300 movs r3, #0 80094ac: 73fb strb r3, [r7, #15] 80094ae: 687b ldr r3, [r7, #4] 80094b0: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80094b4: 2b00 cmp r3, #0 80094b6: d009 beq.n 80094cc 80094b8: 687b ldr r3, [r7, #4] 80094ba: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80094be: 681b ldr r3, [r3, #0] 80094c0: 78fa ldrb r2, [r7, #3] 80094c2: 4611 mov r1, r2 80094c4: 6878 ldr r0, [r7, #4] 80094c6: 4798 blx r3 80094c8: 4603 mov r3, r0 80094ca: 73fb strb r3, [r7, #15] 80094cc: 7bfb ldrb r3, [r7, #15] 80094ce: 4618 mov r0, r3 80094d0: 3710 adds r7, #16 80094d2: 46bd mov sp, r7 80094d4: bd80 pop {r7, pc} 080094d6 : 80094d6: b580 push {r7, lr} 80094d8: b084 sub sp, #16 80094da: af00 add r7, sp, #0 80094dc: 6078 str r0, [r7, #4] 80094de: 460b mov r3, r1 80094e0: 70fb strb r3, [r7, #3] 80094e2: 2300 movs r3, #0 80094e4: 73fb strb r3, [r7, #15] 80094e6: 687b ldr r3, [r7, #4] 80094e8: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80094ec: 685b ldr r3, [r3, #4] 80094ee: 78fa ldrb r2, [r7, #3] 80094f0: 4611 mov r1, r2 80094f2: 6878 ldr r0, [r7, #4] 80094f4: 4798 blx r3 80094f6: 4603 mov r3, r0 80094f8: 2b00 cmp r3, #0 80094fa: d001 beq.n 8009500 80094fc: 2303 movs r3, #3 80094fe: 73fb strb r3, [r7, #15] 8009500: 7bfb ldrb r3, [r7, #15] 8009502: 4618 mov r0, r3 8009504: 3710 adds r7, #16 8009506: 46bd mov sp, r7 8009508: bd80 pop {r7, pc} 0800950a : 800950a: b580 push {r7, lr} 800950c: b084 sub sp, #16 800950e: af00 add r7, sp, #0 8009510: 6078 str r0, [r7, #4] 8009512: 6039 str r1, [r7, #0] 8009514: 687b ldr r3, [r7, #4] 8009516: f203 23aa addw r3, r3, #682 @ 0x2aa 800951a: 6839 ldr r1, [r7, #0] 800951c: 4618 mov r0, r3 800951e: f001 f94c bl 800a7ba 8009522: 687b ldr r3, [r7, #4] 8009524: 2201 movs r2, #1 8009526: f8c3 2294 str.w r2, [r3, #660] @ 0x294 800952a: 687b ldr r3, [r7, #4] 800952c: f8b3 32b0 ldrh.w r3, [r3, #688] @ 0x2b0 8009530: 461a mov r2, r3 8009532: 687b ldr r3, [r7, #4] 8009534: f8c3 2298 str.w r2, [r3, #664] @ 0x298 8009538: 687b ldr r3, [r7, #4] 800953a: f893 32aa ldrb.w r3, [r3, #682] @ 0x2aa 800953e: f003 031f and.w r3, r3, #31 8009542: 2b02 cmp r3, #2 8009544: d01a beq.n 800957c 8009546: 2b02 cmp r3, #2 8009548: d822 bhi.n 8009590 800954a: 2b00 cmp r3, #0 800954c: d002 beq.n 8009554 800954e: 2b01 cmp r3, #1 8009550: d00a beq.n 8009568 8009552: e01d b.n 8009590 8009554: 687b ldr r3, [r7, #4] 8009556: f203 23aa addw r3, r3, #682 @ 0x2aa 800955a: 4619 mov r1, r3 800955c: 6878 ldr r0, [r7, #4] 800955e: f000 fb77 bl 8009c50 8009562: 4603 mov r3, r0 8009564: 73fb strb r3, [r7, #15] 8009566: e020 b.n 80095aa 8009568: 687b ldr r3, [r7, #4] 800956a: f203 23aa addw r3, r3, #682 @ 0x2aa 800956e: 4619 mov r1, r3 8009570: 6878 ldr r0, [r7, #4] 8009572: f000 fbdf bl 8009d34 8009576: 4603 mov r3, r0 8009578: 73fb strb r3, [r7, #15] 800957a: e016 b.n 80095aa 800957c: 687b ldr r3, [r7, #4] 800957e: f203 23aa addw r3, r3, #682 @ 0x2aa 8009582: 4619 mov r1, r3 8009584: 6878 ldr r0, [r7, #4] 8009586: f000 fc41 bl 8009e0c 800958a: 4603 mov r3, r0 800958c: 73fb strb r3, [r7, #15] 800958e: e00c b.n 80095aa 8009590: 687b ldr r3, [r7, #4] 8009592: f893 32aa ldrb.w r3, [r3, #682] @ 0x2aa 8009596: f023 037f bic.w r3, r3, #127 @ 0x7f 800959a: b2db uxtb r3, r3 800959c: 4619 mov r1, r3 800959e: 6878 ldr r0, [r7, #4] 80095a0: f001 fd78 bl 800b094 80095a4: 4603 mov r3, r0 80095a6: 73fb strb r3, [r7, #15] 80095a8: bf00 nop 80095aa: 7bfb ldrb r3, [r7, #15] 80095ac: 4618 mov r0, r3 80095ae: 3710 adds r7, #16 80095b0: 46bd mov sp, r7 80095b2: bd80 pop {r7, pc} 080095b4 : 80095b4: b580 push {r7, lr} 80095b6: b086 sub sp, #24 80095b8: af00 add r7, sp, #0 80095ba: 60f8 str r0, [r7, #12] 80095bc: 460b mov r3, r1 80095be: 607a str r2, [r7, #4] 80095c0: 72fb strb r3, [r7, #11] 80095c2: 2300 movs r3, #0 80095c4: 75fb strb r3, [r7, #23] 80095c6: 7afb ldrb r3, [r7, #11] 80095c8: 2b00 cmp r3, #0 80095ca: d177 bne.n 80096bc 80095cc: 68fb ldr r3, [r7, #12] 80095ce: f503 73aa add.w r3, r3, #340 @ 0x154 80095d2: 613b str r3, [r7, #16] 80095d4: 68fb ldr r3, [r7, #12] 80095d6: f8d3 3294 ldr.w r3, [r3, #660] @ 0x294 80095da: 2b03 cmp r3, #3 80095dc: f040 80a1 bne.w 8009722 80095e0: 693b ldr r3, [r7, #16] 80095e2: 685b ldr r3, [r3, #4] 80095e4: 693a ldr r2, [r7, #16] 80095e6: 8992 ldrh r2, [r2, #12] 80095e8: 4293 cmp r3, r2 80095ea: d91c bls.n 8009626 80095ec: 693b ldr r3, [r7, #16] 80095ee: 685b ldr r3, [r3, #4] 80095f0: 693a ldr r2, [r7, #16] 80095f2: 8992 ldrh r2, [r2, #12] 80095f4: 1a9a subs r2, r3, r2 80095f6: 693b ldr r3, [r7, #16] 80095f8: 605a str r2, [r3, #4] 80095fa: 693b ldr r3, [r7, #16] 80095fc: 691b ldr r3, [r3, #16] 80095fe: 693a ldr r2, [r7, #16] 8009600: 8992 ldrh r2, [r2, #12] 8009602: 441a add r2, r3 8009604: 693b ldr r3, [r7, #16] 8009606: 611a str r2, [r3, #16] 8009608: 693b ldr r3, [r7, #16] 800960a: 6919 ldr r1, [r3, #16] 800960c: 693b ldr r3, [r7, #16] 800960e: 899b ldrh r3, [r3, #12] 8009610: 461a mov r2, r3 8009612: 693b ldr r3, [r7, #16] 8009614: 685b ldr r3, [r3, #4] 8009616: 4293 cmp r3, r2 8009618: bf38 it cc 800961a: 4613 movcc r3, r2 800961c: 461a mov r2, r3 800961e: 68f8 ldr r0, [r7, #12] 8009620: f001 f9b1 bl 800a986 8009624: e07d b.n 8009722 8009626: 68fb ldr r3, [r7, #12] 8009628: f893 32aa ldrb.w r3, [r3, #682] @ 0x2aa 800962c: f003 031f and.w r3, r3, #31 8009630: 2b02 cmp r3, #2 8009632: d014 beq.n 800965e 8009634: 2b02 cmp r3, #2 8009636: d81d bhi.n 8009674 8009638: 2b00 cmp r3, #0 800963a: d002 beq.n 8009642 800963c: 2b01 cmp r3, #1 800963e: d003 beq.n 8009648 8009640: e018 b.n 8009674 8009642: 2300 movs r3, #0 8009644: 75bb strb r3, [r7, #22] 8009646: e018 b.n 800967a 8009648: 68fb ldr r3, [r7, #12] 800964a: f8b3 32ae ldrh.w r3, [r3, #686] @ 0x2ae 800964e: b2db uxtb r3, r3 8009650: 4619 mov r1, r3 8009652: 68f8 ldr r0, [r7, #12] 8009654: f000 fa6e bl 8009b34 8009658: 4603 mov r3, r0 800965a: 75bb strb r3, [r7, #22] 800965c: e00d b.n 800967a 800965e: 68fb ldr r3, [r7, #12] 8009660: f8b3 32ae ldrh.w r3, [r3, #686] @ 0x2ae 8009664: b2db uxtb r3, r3 8009666: 4619 mov r1, r3 8009668: 68f8 ldr r0, [r7, #12] 800966a: f000 fa70 bl 8009b4e 800966e: 4603 mov r3, r0 8009670: 75bb strb r3, [r7, #22] 8009672: e002 b.n 800967a 8009674: 2300 movs r3, #0 8009676: 75bb strb r3, [r7, #22] 8009678: bf00 nop 800967a: 7dbb ldrb r3, [r7, #22] 800967c: 2b00 cmp r3, #0 800967e: d119 bne.n 80096b4 8009680: 68fb ldr r3, [r7, #12] 8009682: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009686: b2db uxtb r3, r3 8009688: 2b03 cmp r3, #3 800968a: d113 bne.n 80096b4 800968c: 7dba ldrb r2, [r7, #22] 800968e: 68fb ldr r3, [r7, #12] 8009690: 32ae adds r2, #174 @ 0xae 8009692: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009696: 691b ldr r3, [r3, #16] 8009698: 2b00 cmp r3, #0 800969a: d00b beq.n 80096b4 800969c: 7dba ldrb r2, [r7, #22] 800969e: 68fb ldr r3, [r7, #12] 80096a0: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 80096a4: 7dba ldrb r2, [r7, #22] 80096a6: 68fb ldr r3, [r7, #12] 80096a8: 32ae adds r2, #174 @ 0xae 80096aa: f853 3022 ldr.w r3, [r3, r2, lsl #2] 80096ae: 691b ldr r3, [r3, #16] 80096b0: 68f8 ldr r0, [r7, #12] 80096b2: 4798 blx r3 80096b4: 68f8 ldr r0, [r7, #12] 80096b6: f001 f977 bl 800a9a8 80096ba: e032 b.n 8009722 80096bc: 7afb ldrb r3, [r7, #11] 80096be: f003 037f and.w r3, r3, #127 @ 0x7f 80096c2: b2db uxtb r3, r3 80096c4: 4619 mov r1, r3 80096c6: 68f8 ldr r0, [r7, #12] 80096c8: f000 fa41 bl 8009b4e 80096cc: 4603 mov r3, r0 80096ce: 75bb strb r3, [r7, #22] 80096d0: 7dbb ldrb r3, [r7, #22] 80096d2: 2bff cmp r3, #255 @ 0xff 80096d4: d025 beq.n 8009722 80096d6: 7dbb ldrb r3, [r7, #22] 80096d8: 2b00 cmp r3, #0 80096da: d122 bne.n 8009722 80096dc: 68fb ldr r3, [r7, #12] 80096de: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 80096e2: b2db uxtb r3, r3 80096e4: 2b03 cmp r3, #3 80096e6: d117 bne.n 8009718 80096e8: 7dba ldrb r2, [r7, #22] 80096ea: 68fb ldr r3, [r7, #12] 80096ec: 32ae adds r2, #174 @ 0xae 80096ee: f853 3022 ldr.w r3, [r3, r2, lsl #2] 80096f2: 699b ldr r3, [r3, #24] 80096f4: 2b00 cmp r3, #0 80096f6: d00f beq.n 8009718 80096f8: 7dba ldrb r2, [r7, #22] 80096fa: 68fb ldr r3, [r7, #12] 80096fc: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 8009700: 7dba ldrb r2, [r7, #22] 8009702: 68fb ldr r3, [r7, #12] 8009704: 32ae adds r2, #174 @ 0xae 8009706: f853 3022 ldr.w r3, [r3, r2, lsl #2] 800970a: 699b ldr r3, [r3, #24] 800970c: 7afa ldrb r2, [r7, #11] 800970e: 4611 mov r1, r2 8009710: 68f8 ldr r0, [r7, #12] 8009712: 4798 blx r3 8009714: 4603 mov r3, r0 8009716: 75fb strb r3, [r7, #23] 8009718: 7dfb ldrb r3, [r7, #23] 800971a: 2b00 cmp r3, #0 800971c: d001 beq.n 8009722 800971e: 7dfb ldrb r3, [r7, #23] 8009720: e000 b.n 8009724 8009722: 2300 movs r3, #0 8009724: 4618 mov r0, r3 8009726: 3718 adds r7, #24 8009728: 46bd mov sp, r7 800972a: bd80 pop {r7, pc} 0800972c : 800972c: b580 push {r7, lr} 800972e: b086 sub sp, #24 8009730: af00 add r7, sp, #0 8009732: 60f8 str r0, [r7, #12] 8009734: 460b mov r3, r1 8009736: 607a str r2, [r7, #4] 8009738: 72fb strb r3, [r7, #11] 800973a: 7afb ldrb r3, [r7, #11] 800973c: 2b00 cmp r3, #0 800973e: d178 bne.n 8009832 8009740: 68fb ldr r3, [r7, #12] 8009742: 3314 adds r3, #20 8009744: 613b str r3, [r7, #16] 8009746: 68fb ldr r3, [r7, #12] 8009748: f8d3 3294 ldr.w r3, [r3, #660] @ 0x294 800974c: 2b02 cmp r3, #2 800974e: d163 bne.n 8009818 8009750: 693b ldr r3, [r7, #16] 8009752: 685b ldr r3, [r3, #4] 8009754: 693a ldr r2, [r7, #16] 8009756: 8992 ldrh r2, [r2, #12] 8009758: 4293 cmp r3, r2 800975a: d91c bls.n 8009796 800975c: 693b ldr r3, [r7, #16] 800975e: 685b ldr r3, [r3, #4] 8009760: 693a ldr r2, [r7, #16] 8009762: 8992 ldrh r2, [r2, #12] 8009764: 1a9a subs r2, r3, r2 8009766: 693b ldr r3, [r7, #16] 8009768: 605a str r2, [r3, #4] 800976a: 693b ldr r3, [r7, #16] 800976c: 691b ldr r3, [r3, #16] 800976e: 693a ldr r2, [r7, #16] 8009770: 8992 ldrh r2, [r2, #12] 8009772: 441a add r2, r3 8009774: 693b ldr r3, [r7, #16] 8009776: 611a str r2, [r3, #16] 8009778: 693b ldr r3, [r7, #16] 800977a: 6919 ldr r1, [r3, #16] 800977c: 693b ldr r3, [r7, #16] 800977e: 685b ldr r3, [r3, #4] 8009780: 461a mov r2, r3 8009782: 68f8 ldr r0, [r7, #12] 8009784: f001 f8ee bl 800a964 8009788: 2300 movs r3, #0 800978a: 2200 movs r2, #0 800978c: 2100 movs r1, #0 800978e: 68f8 ldr r0, [r7, #12] 8009790: f001 fd2a bl 800b1e8 8009794: e040 b.n 8009818 8009796: 693b ldr r3, [r7, #16] 8009798: 899b ldrh r3, [r3, #12] 800979a: 461a mov r2, r3 800979c: 693b ldr r3, [r7, #16] 800979e: 685b ldr r3, [r3, #4] 80097a0: 429a cmp r2, r3 80097a2: d11c bne.n 80097de 80097a4: 693b ldr r3, [r7, #16] 80097a6: 681b ldr r3, [r3, #0] 80097a8: 693a ldr r2, [r7, #16] 80097aa: 8992 ldrh r2, [r2, #12] 80097ac: 4293 cmp r3, r2 80097ae: d316 bcc.n 80097de 80097b0: 693b ldr r3, [r7, #16] 80097b2: 681a ldr r2, [r3, #0] 80097b4: 68fb ldr r3, [r7, #12] 80097b6: f8d3 3298 ldr.w r3, [r3, #664] @ 0x298 80097ba: 429a cmp r2, r3 80097bc: d20f bcs.n 80097de 80097be: 2200 movs r2, #0 80097c0: 2100 movs r1, #0 80097c2: 68f8 ldr r0, [r7, #12] 80097c4: f001 f8ce bl 800a964 80097c8: 68fb ldr r3, [r7, #12] 80097ca: 2200 movs r2, #0 80097cc: f8c3 2298 str.w r2, [r3, #664] @ 0x298 80097d0: 2300 movs r3, #0 80097d2: 2200 movs r2, #0 80097d4: 2100 movs r1, #0 80097d6: 68f8 ldr r0, [r7, #12] 80097d8: f001 fd06 bl 800b1e8 80097dc: e01c b.n 8009818 80097de: 68fb ldr r3, [r7, #12] 80097e0: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 80097e4: b2db uxtb r3, r3 80097e6: 2b03 cmp r3, #3 80097e8: d10f bne.n 800980a 80097ea: 68fb ldr r3, [r7, #12] 80097ec: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80097f0: 68db ldr r3, [r3, #12] 80097f2: 2b00 cmp r3, #0 80097f4: d009 beq.n 800980a 80097f6: 68fb ldr r3, [r7, #12] 80097f8: 2200 movs r2, #0 80097fa: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 80097fe: 68fb ldr r3, [r7, #12] 8009800: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 8009804: 68db ldr r3, [r3, #12] 8009806: 68f8 ldr r0, [r7, #12] 8009808: 4798 blx r3 800980a: 2180 movs r1, #128 @ 0x80 800980c: 68f8 ldr r0, [r7, #12] 800980e: f001 fc41 bl 800b094 8009812: 68f8 ldr r0, [r7, #12] 8009814: f001 f8db bl 800a9ce 8009818: 68fb ldr r3, [r7, #12] 800981a: f893 32a0 ldrb.w r3, [r3, #672] @ 0x2a0 800981e: 2b00 cmp r3, #0 8009820: d03a beq.n 8009898 8009822: 68f8 ldr r0, [r7, #12] 8009824: f7ff fe30 bl 8009488 8009828: 68fb ldr r3, [r7, #12] 800982a: 2200 movs r2, #0 800982c: f883 22a0 strb.w r2, [r3, #672] @ 0x2a0 8009830: e032 b.n 8009898 8009832: 7afb ldrb r3, [r7, #11] 8009834: f063 037f orn r3, r3, #127 @ 0x7f 8009838: b2db uxtb r3, r3 800983a: 4619 mov r1, r3 800983c: 68f8 ldr r0, [r7, #12] 800983e: f000 f986 bl 8009b4e 8009842: 4603 mov r3, r0 8009844: 75fb strb r3, [r7, #23] 8009846: 7dfb ldrb r3, [r7, #23] 8009848: 2bff cmp r3, #255 @ 0xff 800984a: d025 beq.n 8009898 800984c: 7dfb ldrb r3, [r7, #23] 800984e: 2b00 cmp r3, #0 8009850: d122 bne.n 8009898 8009852: 68fb ldr r3, [r7, #12] 8009854: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009858: b2db uxtb r3, r3 800985a: 2b03 cmp r3, #3 800985c: d11c bne.n 8009898 800985e: 7dfa ldrb r2, [r7, #23] 8009860: 68fb ldr r3, [r7, #12] 8009862: 32ae adds r2, #174 @ 0xae 8009864: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009868: 695b ldr r3, [r3, #20] 800986a: 2b00 cmp r3, #0 800986c: d014 beq.n 8009898 800986e: 7dfa ldrb r2, [r7, #23] 8009870: 68fb ldr r3, [r7, #12] 8009872: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 8009876: 7dfa ldrb r2, [r7, #23] 8009878: 68fb ldr r3, [r7, #12] 800987a: 32ae adds r2, #174 @ 0xae 800987c: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009880: 695b ldr r3, [r3, #20] 8009882: 7afa ldrb r2, [r7, #11] 8009884: 4611 mov r1, r2 8009886: 68f8 ldr r0, [r7, #12] 8009888: 4798 blx r3 800988a: 4603 mov r3, r0 800988c: 75bb strb r3, [r7, #22] 800988e: 7dbb ldrb r3, [r7, #22] 8009890: 2b00 cmp r3, #0 8009892: d001 beq.n 8009898 8009894: 7dbb ldrb r3, [r7, #22] 8009896: e000 b.n 800989a 8009898: 2300 movs r3, #0 800989a: 4618 mov r0, r3 800989c: 3718 adds r7, #24 800989e: 46bd mov sp, r7 80098a0: bd80 pop {r7, pc} 080098a2 : 80098a2: b580 push {r7, lr} 80098a4: b084 sub sp, #16 80098a6: af00 add r7, sp, #0 80098a8: 6078 str r0, [r7, #4] 80098aa: 2300 movs r3, #0 80098ac: 73fb strb r3, [r7, #15] 80098ae: 687b ldr r3, [r7, #4] 80098b0: 2201 movs r2, #1 80098b2: f883 229c strb.w r2, [r3, #668] @ 0x29c 80098b6: 687b ldr r3, [r7, #4] 80098b8: 2200 movs r2, #0 80098ba: f8c3 2294 str.w r2, [r3, #660] @ 0x294 80098be: 687b ldr r3, [r7, #4] 80098c0: 2200 movs r2, #0 80098c2: 605a str r2, [r3, #4] 80098c4: 687b ldr r3, [r7, #4] 80098c6: 2200 movs r2, #0 80098c8: f8c3 22a4 str.w r2, [r3, #676] @ 0x2a4 80098cc: 687b ldr r3, [r7, #4] 80098ce: 2200 movs r2, #0 80098d0: f883 22a0 strb.w r2, [r3, #672] @ 0x2a0 80098d4: 687b ldr r3, [r7, #4] 80098d6: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80098da: 2b00 cmp r3, #0 80098dc: d014 beq.n 8009908 80098de: 687b ldr r3, [r7, #4] 80098e0: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80098e4: 685b ldr r3, [r3, #4] 80098e6: 2b00 cmp r3, #0 80098e8: d00e beq.n 8009908 80098ea: 687b ldr r3, [r7, #4] 80098ec: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80098f0: 685b ldr r3, [r3, #4] 80098f2: 687a ldr r2, [r7, #4] 80098f4: 6852 ldr r2, [r2, #4] 80098f6: b2d2 uxtb r2, r2 80098f8: 4611 mov r1, r2 80098fa: 6878 ldr r0, [r7, #4] 80098fc: 4798 blx r3 80098fe: 4603 mov r3, r0 8009900: 2b00 cmp r3, #0 8009902: d001 beq.n 8009908 8009904: 2303 movs r3, #3 8009906: 73fb strb r3, [r7, #15] 8009908: 2340 movs r3, #64 @ 0x40 800990a: 2200 movs r2, #0 800990c: 2100 movs r1, #0 800990e: 6878 ldr r0, [r7, #4] 8009910: f001 fb7b bl 800b00a 8009914: 687b ldr r3, [r7, #4] 8009916: 2201 movs r2, #1 8009918: f883 2163 strb.w r2, [r3, #355] @ 0x163 800991c: 687b ldr r3, [r7, #4] 800991e: 2240 movs r2, #64 @ 0x40 8009920: f8a3 2160 strh.w r2, [r3, #352] @ 0x160 8009924: 2340 movs r3, #64 @ 0x40 8009926: 2200 movs r2, #0 8009928: 2180 movs r1, #128 @ 0x80 800992a: 6878 ldr r0, [r7, #4] 800992c: f001 fb6d bl 800b00a 8009930: 687b ldr r3, [r7, #4] 8009932: 2201 movs r2, #1 8009934: f883 2023 strb.w r2, [r3, #35] @ 0x23 8009938: 687b ldr r3, [r7, #4] 800993a: 2240 movs r2, #64 @ 0x40 800993c: 841a strh r2, [r3, #32] 800993e: 7bfb ldrb r3, [r7, #15] 8009940: 4618 mov r0, r3 8009942: 3710 adds r7, #16 8009944: 46bd mov sp, r7 8009946: bd80 pop {r7, pc} 08009948 : 8009948: b480 push {r7} 800994a: b083 sub sp, #12 800994c: af00 add r7, sp, #0 800994e: 6078 str r0, [r7, #4] 8009950: 460b mov r3, r1 8009952: 70fb strb r3, [r7, #3] 8009954: 687b ldr r3, [r7, #4] 8009956: 78fa ldrb r2, [r7, #3] 8009958: 741a strb r2, [r3, #16] 800995a: 2300 movs r3, #0 800995c: 4618 mov r0, r3 800995e: 370c adds r7, #12 8009960: 46bd mov sp, r7 8009962: f85d 7b04 ldr.w r7, [sp], #4 8009966: 4770 bx lr 08009968 : 8009968: b480 push {r7} 800996a: b083 sub sp, #12 800996c: af00 add r7, sp, #0 800996e: 6078 str r0, [r7, #4] 8009970: 687b ldr r3, [r7, #4] 8009972: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009976: b2db uxtb r3, r3 8009978: 2b04 cmp r3, #4 800997a: d006 beq.n 800998a 800997c: 687b ldr r3, [r7, #4] 800997e: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009982: b2da uxtb r2, r3 8009984: 687b ldr r3, [r7, #4] 8009986: f883 229d strb.w r2, [r3, #669] @ 0x29d 800998a: 687b ldr r3, [r7, #4] 800998c: 2204 movs r2, #4 800998e: f883 229c strb.w r2, [r3, #668] @ 0x29c 8009992: 2300 movs r3, #0 8009994: 4618 mov r0, r3 8009996: 370c adds r7, #12 8009998: 46bd mov sp, r7 800999a: f85d 7b04 ldr.w r7, [sp], #4 800999e: 4770 bx lr 080099a0 : 80099a0: b480 push {r7} 80099a2: b083 sub sp, #12 80099a4: af00 add r7, sp, #0 80099a6: 6078 str r0, [r7, #4] 80099a8: 687b ldr r3, [r7, #4] 80099aa: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 80099ae: b2db uxtb r3, r3 80099b0: 2b04 cmp r3, #4 80099b2: d106 bne.n 80099c2 80099b4: 687b ldr r3, [r7, #4] 80099b6: f893 329d ldrb.w r3, [r3, #669] @ 0x29d 80099ba: b2da uxtb r2, r3 80099bc: 687b ldr r3, [r7, #4] 80099be: f883 229c strb.w r2, [r3, #668] @ 0x29c 80099c2: 2300 movs r3, #0 80099c4: 4618 mov r0, r3 80099c6: 370c adds r7, #12 80099c8: 46bd mov sp, r7 80099ca: f85d 7b04 ldr.w r7, [sp], #4 80099ce: 4770 bx lr 080099d0 : 80099d0: b580 push {r7, lr} 80099d2: b082 sub sp, #8 80099d4: af00 add r7, sp, #0 80099d6: 6078 str r0, [r7, #4] 80099d8: 687b ldr r3, [r7, #4] 80099da: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 80099de: b2db uxtb r3, r3 80099e0: 2b03 cmp r3, #3 80099e2: d110 bne.n 8009a06 80099e4: 687b ldr r3, [r7, #4] 80099e6: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80099ea: 2b00 cmp r3, #0 80099ec: d00b beq.n 8009a06 80099ee: 687b ldr r3, [r7, #4] 80099f0: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 80099f4: 69db ldr r3, [r3, #28] 80099f6: 2b00 cmp r3, #0 80099f8: d005 beq.n 8009a06 80099fa: 687b ldr r3, [r7, #4] 80099fc: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 8009a00: 69db ldr r3, [r3, #28] 8009a02: 6878 ldr r0, [r7, #4] 8009a04: 4798 blx r3 8009a06: 2300 movs r3, #0 8009a08: 4618 mov r0, r3 8009a0a: 3708 adds r7, #8 8009a0c: 46bd mov sp, r7 8009a0e: bd80 pop {r7, pc} 08009a10 : 8009a10: b580 push {r7, lr} 8009a12: b082 sub sp, #8 8009a14: af00 add r7, sp, #0 8009a16: 6078 str r0, [r7, #4] 8009a18: 460b mov r3, r1 8009a1a: 70fb strb r3, [r7, #3] 8009a1c: 687b ldr r3, [r7, #4] 8009a1e: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009a22: 687b ldr r3, [r7, #4] 8009a24: 32ae adds r2, #174 @ 0xae 8009a26: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009a2a: 2b00 cmp r3, #0 8009a2c: d101 bne.n 8009a32 8009a2e: 2303 movs r3, #3 8009a30: e01c b.n 8009a6c 8009a32: 687b ldr r3, [r7, #4] 8009a34: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009a38: b2db uxtb r3, r3 8009a3a: 2b03 cmp r3, #3 8009a3c: d115 bne.n 8009a6a 8009a3e: 687b ldr r3, [r7, #4] 8009a40: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009a44: 687b ldr r3, [r7, #4] 8009a46: 32ae adds r2, #174 @ 0xae 8009a48: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009a4c: 6a1b ldr r3, [r3, #32] 8009a4e: 2b00 cmp r3, #0 8009a50: d00b beq.n 8009a6a 8009a52: 687b ldr r3, [r7, #4] 8009a54: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009a58: 687b ldr r3, [r7, #4] 8009a5a: 32ae adds r2, #174 @ 0xae 8009a5c: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009a60: 6a1b ldr r3, [r3, #32] 8009a62: 78fa ldrb r2, [r7, #3] 8009a64: 4611 mov r1, r2 8009a66: 6878 ldr r0, [r7, #4] 8009a68: 4798 blx r3 8009a6a: 2300 movs r3, #0 8009a6c: 4618 mov r0, r3 8009a6e: 3708 adds r7, #8 8009a70: 46bd mov sp, r7 8009a72: bd80 pop {r7, pc} 08009a74 : 8009a74: b580 push {r7, lr} 8009a76: b082 sub sp, #8 8009a78: af00 add r7, sp, #0 8009a7a: 6078 str r0, [r7, #4] 8009a7c: 460b mov r3, r1 8009a7e: 70fb strb r3, [r7, #3] 8009a80: 687b ldr r3, [r7, #4] 8009a82: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009a86: 687b ldr r3, [r7, #4] 8009a88: 32ae adds r2, #174 @ 0xae 8009a8a: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009a8e: 2b00 cmp r3, #0 8009a90: d101 bne.n 8009a96 8009a92: 2303 movs r3, #3 8009a94: e01c b.n 8009ad0 8009a96: 687b ldr r3, [r7, #4] 8009a98: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009a9c: b2db uxtb r3, r3 8009a9e: 2b03 cmp r3, #3 8009aa0: d115 bne.n 8009ace 8009aa2: 687b ldr r3, [r7, #4] 8009aa4: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009aa8: 687b ldr r3, [r7, #4] 8009aaa: 32ae adds r2, #174 @ 0xae 8009aac: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009ab0: 6a5b ldr r3, [r3, #36] @ 0x24 8009ab2: 2b00 cmp r3, #0 8009ab4: d00b beq.n 8009ace 8009ab6: 687b ldr r3, [r7, #4] 8009ab8: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009abc: 687b ldr r3, [r7, #4] 8009abe: 32ae adds r2, #174 @ 0xae 8009ac0: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009ac4: 6a5b ldr r3, [r3, #36] @ 0x24 8009ac6: 78fa ldrb r2, [r7, #3] 8009ac8: 4611 mov r1, r2 8009aca: 6878 ldr r0, [r7, #4] 8009acc: 4798 blx r3 8009ace: 2300 movs r3, #0 8009ad0: 4618 mov r0, r3 8009ad2: 3708 adds r7, #8 8009ad4: 46bd mov sp, r7 8009ad6: bd80 pop {r7, pc} 08009ad8 : 8009ad8: b480 push {r7} 8009ada: b083 sub sp, #12 8009adc: af00 add r7, sp, #0 8009ade: 6078 str r0, [r7, #4] 8009ae0: 2300 movs r3, #0 8009ae2: 4618 mov r0, r3 8009ae4: 370c adds r7, #12 8009ae6: 46bd mov sp, r7 8009ae8: f85d 7b04 ldr.w r7, [sp], #4 8009aec: 4770 bx lr 08009aee : 8009aee: b580 push {r7, lr} 8009af0: b084 sub sp, #16 8009af2: af00 add r7, sp, #0 8009af4: 6078 str r0, [r7, #4] 8009af6: 2300 movs r3, #0 8009af8: 73fb strb r3, [r7, #15] 8009afa: 687b ldr r3, [r7, #4] 8009afc: 2201 movs r2, #1 8009afe: f883 229c strb.w r2, [r3, #668] @ 0x29c 8009b02: 687b ldr r3, [r7, #4] 8009b04: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 8009b08: 2b00 cmp r3, #0 8009b0a: d00e beq.n 8009b2a 8009b0c: 687b ldr r3, [r7, #4] 8009b0e: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 8009b12: 685b ldr r3, [r3, #4] 8009b14: 687a ldr r2, [r7, #4] 8009b16: 6852 ldr r2, [r2, #4] 8009b18: b2d2 uxtb r2, r2 8009b1a: 4611 mov r1, r2 8009b1c: 6878 ldr r0, [r7, #4] 8009b1e: 4798 blx r3 8009b20: 4603 mov r3, r0 8009b22: 2b00 cmp r3, #0 8009b24: d001 beq.n 8009b2a 8009b26: 2303 movs r3, #3 8009b28: 73fb strb r3, [r7, #15] 8009b2a: 7bfb ldrb r3, [r7, #15] 8009b2c: 4618 mov r0, r3 8009b2e: 3710 adds r7, #16 8009b30: 46bd mov sp, r7 8009b32: bd80 pop {r7, pc} 08009b34 : 8009b34: b480 push {r7} 8009b36: b083 sub sp, #12 8009b38: af00 add r7, sp, #0 8009b3a: 6078 str r0, [r7, #4] 8009b3c: 460b mov r3, r1 8009b3e: 70fb strb r3, [r7, #3] 8009b40: 2300 movs r3, #0 8009b42: 4618 mov r0, r3 8009b44: 370c adds r7, #12 8009b46: 46bd mov sp, r7 8009b48: f85d 7b04 ldr.w r7, [sp], #4 8009b4c: 4770 bx lr 08009b4e : 8009b4e: b480 push {r7} 8009b50: b083 sub sp, #12 8009b52: af00 add r7, sp, #0 8009b54: 6078 str r0, [r7, #4] 8009b56: 460b mov r3, r1 8009b58: 70fb strb r3, [r7, #3] 8009b5a: 2300 movs r3, #0 8009b5c: 4618 mov r0, r3 8009b5e: 370c adds r7, #12 8009b60: 46bd mov sp, r7 8009b62: f85d 7b04 ldr.w r7, [sp], #4 8009b66: 4770 bx lr 08009b68 : 8009b68: b580 push {r7, lr} 8009b6a: b086 sub sp, #24 8009b6c: af00 add r7, sp, #0 8009b6e: 6078 str r0, [r7, #4] 8009b70: 460b mov r3, r1 8009b72: 70fb strb r3, [r7, #3] 8009b74: 687b ldr r3, [r7, #4] 8009b76: 617b str r3, [r7, #20] 8009b78: 687b ldr r3, [r7, #4] 8009b7a: 60fb str r3, [r7, #12] 8009b7c: 2300 movs r3, #0 8009b7e: 613b str r3, [r7, #16] 8009b80: 68fb ldr r3, [r7, #12] 8009b82: 885b ldrh r3, [r3, #2] 8009b84: b29b uxth r3, r3 8009b86: 68fa ldr r2, [r7, #12] 8009b88: 7812 ldrb r2, [r2, #0] 8009b8a: 4293 cmp r3, r2 8009b8c: d91f bls.n 8009bce 8009b8e: 68fb ldr r3, [r7, #12] 8009b90: 781b ldrb r3, [r3, #0] 8009b92: 817b strh r3, [r7, #10] 8009b94: e013 b.n 8009bbe 8009b96: f107 030a add.w r3, r7, #10 8009b9a: 4619 mov r1, r3 8009b9c: 6978 ldr r0, [r7, #20] 8009b9e: f000 f81b bl 8009bd8 8009ba2: 6178 str r0, [r7, #20] 8009ba4: 697b ldr r3, [r7, #20] 8009ba6: 785b ldrb r3, [r3, #1] 8009ba8: 2b05 cmp r3, #5 8009baa: d108 bne.n 8009bbe 8009bac: 697b ldr r3, [r7, #20] 8009bae: 613b str r3, [r7, #16] 8009bb0: 693b ldr r3, [r7, #16] 8009bb2: 789b ldrb r3, [r3, #2] 8009bb4: 78fa ldrb r2, [r7, #3] 8009bb6: 429a cmp r2, r3 8009bb8: d008 beq.n 8009bcc 8009bba: 2300 movs r3, #0 8009bbc: 613b str r3, [r7, #16] 8009bbe: 68fb ldr r3, [r7, #12] 8009bc0: 885b ldrh r3, [r3, #2] 8009bc2: b29a uxth r2, r3 8009bc4: 897b ldrh r3, [r7, #10] 8009bc6: 429a cmp r2, r3 8009bc8: d8e5 bhi.n 8009b96 8009bca: e000 b.n 8009bce 8009bcc: bf00 nop 8009bce: 693b ldr r3, [r7, #16] 8009bd0: 4618 mov r0, r3 8009bd2: 3718 adds r7, #24 8009bd4: 46bd mov sp, r7 8009bd6: bd80 pop {r7, pc} 08009bd8 : 8009bd8: b480 push {r7} 8009bda: b085 sub sp, #20 8009bdc: af00 add r7, sp, #0 8009bde: 6078 str r0, [r7, #4] 8009be0: 6039 str r1, [r7, #0] 8009be2: 687b ldr r3, [r7, #4] 8009be4: 60fb str r3, [r7, #12] 8009be6: 683b ldr r3, [r7, #0] 8009be8: 881b ldrh r3, [r3, #0] 8009bea: 68fa ldr r2, [r7, #12] 8009bec: 7812 ldrb r2, [r2, #0] 8009bee: 4413 add r3, r2 8009bf0: b29a uxth r2, r3 8009bf2: 683b ldr r3, [r7, #0] 8009bf4: 801a strh r2, [r3, #0] 8009bf6: 68fb ldr r3, [r7, #12] 8009bf8: 781b ldrb r3, [r3, #0] 8009bfa: 461a mov r2, r3 8009bfc: 687b ldr r3, [r7, #4] 8009bfe: 4413 add r3, r2 8009c00: 60fb str r3, [r7, #12] 8009c02: 68fb ldr r3, [r7, #12] 8009c04: 4618 mov r0, r3 8009c06: 3714 adds r7, #20 8009c08: 46bd mov sp, r7 8009c0a: f85d 7b04 ldr.w r7, [sp], #4 8009c0e: 4770 bx lr 08009c10 : 8009c10: b480 push {r7} 8009c12: b087 sub sp, #28 8009c14: af00 add r7, sp, #0 8009c16: 6078 str r0, [r7, #4] 8009c18: 687b ldr r3, [r7, #4] 8009c1a: 617b str r3, [r7, #20] 8009c1c: 697b ldr r3, [r7, #20] 8009c1e: 781b ldrb r3, [r3, #0] 8009c20: 827b strh r3, [r7, #18] 8009c22: 697b ldr r3, [r7, #20] 8009c24: 3301 adds r3, #1 8009c26: 617b str r3, [r7, #20] 8009c28: 697b ldr r3, [r7, #20] 8009c2a: 781b ldrb r3, [r3, #0] 8009c2c: 823b strh r3, [r7, #16] 8009c2e: f9b7 3010 ldrsh.w r3, [r7, #16] 8009c32: 021b lsls r3, r3, #8 8009c34: b21a sxth r2, r3 8009c36: f9b7 3012 ldrsh.w r3, [r7, #18] 8009c3a: 4313 orrs r3, r2 8009c3c: b21b sxth r3, r3 8009c3e: 81fb strh r3, [r7, #14] 8009c40: 89fb ldrh r3, [r7, #14] 8009c42: 4618 mov r0, r3 8009c44: 371c adds r7, #28 8009c46: 46bd mov sp, r7 8009c48: f85d 7b04 ldr.w r7, [sp], #4 8009c4c: 4770 bx lr ... 08009c50 : 8009c50: b580 push {r7, lr} 8009c52: b084 sub sp, #16 8009c54: af00 add r7, sp, #0 8009c56: 6078 str r0, [r7, #4] 8009c58: 6039 str r1, [r7, #0] 8009c5a: 2300 movs r3, #0 8009c5c: 73fb strb r3, [r7, #15] 8009c5e: 683b ldr r3, [r7, #0] 8009c60: 781b ldrb r3, [r3, #0] 8009c62: f003 0360 and.w r3, r3, #96 @ 0x60 8009c66: 2b40 cmp r3, #64 @ 0x40 8009c68: d005 beq.n 8009c76 8009c6a: 2b40 cmp r3, #64 @ 0x40 8009c6c: d857 bhi.n 8009d1e 8009c6e: 2b00 cmp r3, #0 8009c70: d00f beq.n 8009c92 8009c72: 2b20 cmp r3, #32 8009c74: d153 bne.n 8009d1e 8009c76: 687b ldr r3, [r7, #4] 8009c78: f8d3 22d4 ldr.w r2, [r3, #724] @ 0x2d4 8009c7c: 687b ldr r3, [r7, #4] 8009c7e: 32ae adds r2, #174 @ 0xae 8009c80: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009c84: 689b ldr r3, [r3, #8] 8009c86: 6839 ldr r1, [r7, #0] 8009c88: 6878 ldr r0, [r7, #4] 8009c8a: 4798 blx r3 8009c8c: 4603 mov r3, r0 8009c8e: 73fb strb r3, [r7, #15] 8009c90: e04a b.n 8009d28 8009c92: 683b ldr r3, [r7, #0] 8009c94: 785b ldrb r3, [r3, #1] 8009c96: 2b09 cmp r3, #9 8009c98: d83b bhi.n 8009d12 8009c9a: a201 add r2, pc, #4 @ (adr r2, 8009ca0 ) 8009c9c: f852 f023 ldr.w pc, [r2, r3, lsl #2] 8009ca0: 08009cf5 .word 0x08009cf5 8009ca4: 08009d09 .word 0x08009d09 8009ca8: 08009d13 .word 0x08009d13 8009cac: 08009cff .word 0x08009cff 8009cb0: 08009d13 .word 0x08009d13 8009cb4: 08009cd3 .word 0x08009cd3 8009cb8: 08009cc9 .word 0x08009cc9 8009cbc: 08009d13 .word 0x08009d13 8009cc0: 08009ceb .word 0x08009ceb 8009cc4: 08009cdd .word 0x08009cdd 8009cc8: 6839 ldr r1, [r7, #0] 8009cca: 6878 ldr r0, [r7, #4] 8009ccc: f000 fa3e bl 800a14c 8009cd0: e024 b.n 8009d1c 8009cd2: 6839 ldr r1, [r7, #0] 8009cd4: 6878 ldr r0, [r7, #4] 8009cd6: f000 fbcd bl 800a474 8009cda: e01f b.n 8009d1c 8009cdc: 6839 ldr r1, [r7, #0] 8009cde: 6878 ldr r0, [r7, #4] 8009ce0: f000 fc0c bl 800a4fc 8009ce4: 4603 mov r3, r0 8009ce6: 73fb strb r3, [r7, #15] 8009ce8: e018 b.n 8009d1c 8009cea: 6839 ldr r1, [r7, #0] 8009cec: 6878 ldr r0, [r7, #4] 8009cee: f000 fcaf bl 800a650 8009cf2: e013 b.n 8009d1c 8009cf4: 6839 ldr r1, [r7, #0] 8009cf6: 6878 ldr r0, [r7, #4] 8009cf8: f000 fce0 bl 800a6bc 8009cfc: e00e b.n 8009d1c 8009cfe: 6839 ldr r1, [r7, #0] 8009d00: 6878 ldr r0, [r7, #4] 8009d02: f000 fd0f bl 800a724 8009d06: e009 b.n 8009d1c 8009d08: 6839 ldr r1, [r7, #0] 8009d0a: 6878 ldr r0, [r7, #4] 8009d0c: f000 fd33 bl 800a776 8009d10: e004 b.n 8009d1c 8009d12: 6839 ldr r1, [r7, #0] 8009d14: 6878 ldr r0, [r7, #4] 8009d16: f000 fd8a bl 800a82e 8009d1a: bf00 nop 8009d1c: e004 b.n 8009d28 8009d1e: 6839 ldr r1, [r7, #0] 8009d20: 6878 ldr r0, [r7, #4] 8009d22: f000 fd84 bl 800a82e 8009d26: bf00 nop 8009d28: 7bfb ldrb r3, [r7, #15] 8009d2a: 4618 mov r0, r3 8009d2c: 3710 adds r7, #16 8009d2e: 46bd mov sp, r7 8009d30: bd80 pop {r7, pc} 8009d32: bf00 nop 08009d34 : 8009d34: b580 push {r7, lr} 8009d36: b084 sub sp, #16 8009d38: af00 add r7, sp, #0 8009d3a: 6078 str r0, [r7, #4] 8009d3c: 6039 str r1, [r7, #0] 8009d3e: 2300 movs r3, #0 8009d40: 73fb strb r3, [r7, #15] 8009d42: 683b ldr r3, [r7, #0] 8009d44: 781b ldrb r3, [r3, #0] 8009d46: f003 0360 and.w r3, r3, #96 @ 0x60 8009d4a: 2b40 cmp r3, #64 @ 0x40 8009d4c: d005 beq.n 8009d5a 8009d4e: 2b40 cmp r3, #64 @ 0x40 8009d50: d852 bhi.n 8009df8 8009d52: 2b00 cmp r3, #0 8009d54: d001 beq.n 8009d5a 8009d56: 2b20 cmp r3, #32 8009d58: d14e bne.n 8009df8 8009d5a: 687b ldr r3, [r7, #4] 8009d5c: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009d60: b2db uxtb r3, r3 8009d62: 3b01 subs r3, #1 8009d64: 2b02 cmp r3, #2 8009d66: d840 bhi.n 8009dea 8009d68: 683b ldr r3, [r7, #0] 8009d6a: 889b ldrh r3, [r3, #4] 8009d6c: b2db uxtb r3, r3 8009d6e: 2b01 cmp r3, #1 8009d70: d836 bhi.n 8009de0 8009d72: 683b ldr r3, [r7, #0] 8009d74: 889b ldrh r3, [r3, #4] 8009d76: b2db uxtb r3, r3 8009d78: 4619 mov r1, r3 8009d7a: 6878 ldr r0, [r7, #4] 8009d7c: f7ff feda bl 8009b34 8009d80: 4603 mov r3, r0 8009d82: 73bb strb r3, [r7, #14] 8009d84: 7bbb ldrb r3, [r7, #14] 8009d86: 2bff cmp r3, #255 @ 0xff 8009d88: d01d beq.n 8009dc6 8009d8a: 7bbb ldrb r3, [r7, #14] 8009d8c: 2b00 cmp r3, #0 8009d8e: d11a bne.n 8009dc6 8009d90: 7bba ldrb r2, [r7, #14] 8009d92: 687b ldr r3, [r7, #4] 8009d94: 32ae adds r2, #174 @ 0xae 8009d96: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009d9a: 689b ldr r3, [r3, #8] 8009d9c: 2b00 cmp r3, #0 8009d9e: d00f beq.n 8009dc0 8009da0: 7bba ldrb r2, [r7, #14] 8009da2: 687b ldr r3, [r7, #4] 8009da4: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 8009da8: 7bba ldrb r2, [r7, #14] 8009daa: 687b ldr r3, [r7, #4] 8009dac: 32ae adds r2, #174 @ 0xae 8009dae: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009db2: 689b ldr r3, [r3, #8] 8009db4: 6839 ldr r1, [r7, #0] 8009db6: 6878 ldr r0, [r7, #4] 8009db8: 4798 blx r3 8009dba: 4603 mov r3, r0 8009dbc: 73fb strb r3, [r7, #15] 8009dbe: e004 b.n 8009dca 8009dc0: 2303 movs r3, #3 8009dc2: 73fb strb r3, [r7, #15] 8009dc4: e001 b.n 8009dca 8009dc6: 2303 movs r3, #3 8009dc8: 73fb strb r3, [r7, #15] 8009dca: 683b ldr r3, [r7, #0] 8009dcc: 88db ldrh r3, [r3, #6] 8009dce: 2b00 cmp r3, #0 8009dd0: d110 bne.n 8009df4 8009dd2: 7bfb ldrb r3, [r7, #15] 8009dd4: 2b00 cmp r3, #0 8009dd6: d10d bne.n 8009df4 8009dd8: 6878 ldr r0, [r7, #4] 8009dda: f000 fde5 bl 800a9a8 8009dde: e009 b.n 8009df4 8009de0: 6839 ldr r1, [r7, #0] 8009de2: 6878 ldr r0, [r7, #4] 8009de4: f000 fd23 bl 800a82e 8009de8: e004 b.n 8009df4 8009dea: 6839 ldr r1, [r7, #0] 8009dec: 6878 ldr r0, [r7, #4] 8009dee: f000 fd1e bl 800a82e 8009df2: e000 b.n 8009df6 8009df4: bf00 nop 8009df6: e004 b.n 8009e02 8009df8: 6839 ldr r1, [r7, #0] 8009dfa: 6878 ldr r0, [r7, #4] 8009dfc: f000 fd17 bl 800a82e 8009e00: bf00 nop 8009e02: 7bfb ldrb r3, [r7, #15] 8009e04: 4618 mov r0, r3 8009e06: 3710 adds r7, #16 8009e08: 46bd mov sp, r7 8009e0a: bd80 pop {r7, pc} 08009e0c : 8009e0c: b580 push {r7, lr} 8009e0e: b084 sub sp, #16 8009e10: af00 add r7, sp, #0 8009e12: 6078 str r0, [r7, #4] 8009e14: 6039 str r1, [r7, #0] 8009e16: 2300 movs r3, #0 8009e18: 73fb strb r3, [r7, #15] 8009e1a: 683b ldr r3, [r7, #0] 8009e1c: 889b ldrh r3, [r3, #4] 8009e1e: 73bb strb r3, [r7, #14] 8009e20: 683b ldr r3, [r7, #0] 8009e22: 781b ldrb r3, [r3, #0] 8009e24: f003 0360 and.w r3, r3, #96 @ 0x60 8009e28: 2b40 cmp r3, #64 @ 0x40 8009e2a: d007 beq.n 8009e3c 8009e2c: 2b40 cmp r3, #64 @ 0x40 8009e2e: f200 8181 bhi.w 800a134 8009e32: 2b00 cmp r3, #0 8009e34: d02a beq.n 8009e8c 8009e36: 2b20 cmp r3, #32 8009e38: f040 817c bne.w 800a134 8009e3c: 7bbb ldrb r3, [r7, #14] 8009e3e: 4619 mov r1, r3 8009e40: 6878 ldr r0, [r7, #4] 8009e42: f7ff fe84 bl 8009b4e 8009e46: 4603 mov r3, r0 8009e48: 737b strb r3, [r7, #13] 8009e4a: 7b7b ldrb r3, [r7, #13] 8009e4c: 2bff cmp r3, #255 @ 0xff 8009e4e: f000 8176 beq.w 800a13e 8009e52: 7b7b ldrb r3, [r7, #13] 8009e54: 2b00 cmp r3, #0 8009e56: f040 8172 bne.w 800a13e 8009e5a: 7b7a ldrb r2, [r7, #13] 8009e5c: 687b ldr r3, [r7, #4] 8009e5e: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 8009e62: 7b7a ldrb r2, [r7, #13] 8009e64: 687b ldr r3, [r7, #4] 8009e66: 32ae adds r2, #174 @ 0xae 8009e68: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009e6c: 689b ldr r3, [r3, #8] 8009e6e: 2b00 cmp r3, #0 8009e70: f000 8165 beq.w 800a13e 8009e74: 7b7a ldrb r2, [r7, #13] 8009e76: 687b ldr r3, [r7, #4] 8009e78: 32ae adds r2, #174 @ 0xae 8009e7a: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009e7e: 689b ldr r3, [r3, #8] 8009e80: 6839 ldr r1, [r7, #0] 8009e82: 6878 ldr r0, [r7, #4] 8009e84: 4798 blx r3 8009e86: 4603 mov r3, r0 8009e88: 73fb strb r3, [r7, #15] 8009e8a: e158 b.n 800a13e 8009e8c: 683b ldr r3, [r7, #0] 8009e8e: 785b ldrb r3, [r3, #1] 8009e90: 2b03 cmp r3, #3 8009e92: d008 beq.n 8009ea6 8009e94: 2b03 cmp r3, #3 8009e96: f300 8147 bgt.w 800a128 8009e9a: 2b00 cmp r3, #0 8009e9c: f000 809b beq.w 8009fd6 8009ea0: 2b01 cmp r3, #1 8009ea2: d03c beq.n 8009f1e 8009ea4: e140 b.n 800a128 8009ea6: 687b ldr r3, [r7, #4] 8009ea8: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009eac: b2db uxtb r3, r3 8009eae: 2b02 cmp r3, #2 8009eb0: d002 beq.n 8009eb8 8009eb2: 2b03 cmp r3, #3 8009eb4: d016 beq.n 8009ee4 8009eb6: e02c b.n 8009f12 8009eb8: 7bbb ldrb r3, [r7, #14] 8009eba: 2b00 cmp r3, #0 8009ebc: d00d beq.n 8009eda 8009ebe: 7bbb ldrb r3, [r7, #14] 8009ec0: 2b80 cmp r3, #128 @ 0x80 8009ec2: d00a beq.n 8009eda 8009ec4: 7bbb ldrb r3, [r7, #14] 8009ec6: 4619 mov r1, r3 8009ec8: 6878 ldr r0, [r7, #4] 8009eca: f001 f8e3 bl 800b094 8009ece: 2180 movs r1, #128 @ 0x80 8009ed0: 6878 ldr r0, [r7, #4] 8009ed2: f001 f8df bl 800b094 8009ed6: bf00 nop 8009ed8: e020 b.n 8009f1c 8009eda: 6839 ldr r1, [r7, #0] 8009edc: 6878 ldr r0, [r7, #4] 8009ede: f000 fca6 bl 800a82e 8009ee2: e01b b.n 8009f1c 8009ee4: 683b ldr r3, [r7, #0] 8009ee6: 885b ldrh r3, [r3, #2] 8009ee8: 2b00 cmp r3, #0 8009eea: d10e bne.n 8009f0a 8009eec: 7bbb ldrb r3, [r7, #14] 8009eee: 2b00 cmp r3, #0 8009ef0: d00b beq.n 8009f0a 8009ef2: 7bbb ldrb r3, [r7, #14] 8009ef4: 2b80 cmp r3, #128 @ 0x80 8009ef6: d008 beq.n 8009f0a 8009ef8: 683b ldr r3, [r7, #0] 8009efa: 88db ldrh r3, [r3, #6] 8009efc: 2b00 cmp r3, #0 8009efe: d104 bne.n 8009f0a 8009f00: 7bbb ldrb r3, [r7, #14] 8009f02: 4619 mov r1, r3 8009f04: 6878 ldr r0, [r7, #4] 8009f06: f001 f8c5 bl 800b094 8009f0a: 6878 ldr r0, [r7, #4] 8009f0c: f000 fd4c bl 800a9a8 8009f10: e004 b.n 8009f1c 8009f12: 6839 ldr r1, [r7, #0] 8009f14: 6878 ldr r0, [r7, #4] 8009f16: f000 fc8a bl 800a82e 8009f1a: bf00 nop 8009f1c: e109 b.n 800a132 8009f1e: 687b ldr r3, [r7, #4] 8009f20: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009f24: b2db uxtb r3, r3 8009f26: 2b02 cmp r3, #2 8009f28: d002 beq.n 8009f30 8009f2a: 2b03 cmp r3, #3 8009f2c: d016 beq.n 8009f5c 8009f2e: e04b b.n 8009fc8 8009f30: 7bbb ldrb r3, [r7, #14] 8009f32: 2b00 cmp r3, #0 8009f34: d00d beq.n 8009f52 8009f36: 7bbb ldrb r3, [r7, #14] 8009f38: 2b80 cmp r3, #128 @ 0x80 8009f3a: d00a beq.n 8009f52 8009f3c: 7bbb ldrb r3, [r7, #14] 8009f3e: 4619 mov r1, r3 8009f40: 6878 ldr r0, [r7, #4] 8009f42: f001 f8a7 bl 800b094 8009f46: 2180 movs r1, #128 @ 0x80 8009f48: 6878 ldr r0, [r7, #4] 8009f4a: f001 f8a3 bl 800b094 8009f4e: bf00 nop 8009f50: e040 b.n 8009fd4 8009f52: 6839 ldr r1, [r7, #0] 8009f54: 6878 ldr r0, [r7, #4] 8009f56: f000 fc6a bl 800a82e 8009f5a: e03b b.n 8009fd4 8009f5c: 683b ldr r3, [r7, #0] 8009f5e: 885b ldrh r3, [r3, #2] 8009f60: 2b00 cmp r3, #0 8009f62: d136 bne.n 8009fd2 8009f64: 7bbb ldrb r3, [r7, #14] 8009f66: f003 037f and.w r3, r3, #127 @ 0x7f 8009f6a: 2b00 cmp r3, #0 8009f6c: d004 beq.n 8009f78 8009f6e: 7bbb ldrb r3, [r7, #14] 8009f70: 4619 mov r1, r3 8009f72: 6878 ldr r0, [r7, #4] 8009f74: f001 f8ad bl 800b0d2 8009f78: 6878 ldr r0, [r7, #4] 8009f7a: f000 fd15 bl 800a9a8 8009f7e: 7bbb ldrb r3, [r7, #14] 8009f80: 4619 mov r1, r3 8009f82: 6878 ldr r0, [r7, #4] 8009f84: f7ff fde3 bl 8009b4e 8009f88: 4603 mov r3, r0 8009f8a: 737b strb r3, [r7, #13] 8009f8c: 7b7b ldrb r3, [r7, #13] 8009f8e: 2bff cmp r3, #255 @ 0xff 8009f90: d01f beq.n 8009fd2 8009f92: 7b7b ldrb r3, [r7, #13] 8009f94: 2b00 cmp r3, #0 8009f96: d11c bne.n 8009fd2 8009f98: 7b7a ldrb r2, [r7, #13] 8009f9a: 687b ldr r3, [r7, #4] 8009f9c: f8c3 22d4 str.w r2, [r3, #724] @ 0x2d4 8009fa0: 7b7a ldrb r2, [r7, #13] 8009fa2: 687b ldr r3, [r7, #4] 8009fa4: 32ae adds r2, #174 @ 0xae 8009fa6: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009faa: 689b ldr r3, [r3, #8] 8009fac: 2b00 cmp r3, #0 8009fae: d010 beq.n 8009fd2 8009fb0: 7b7a ldrb r2, [r7, #13] 8009fb2: 687b ldr r3, [r7, #4] 8009fb4: 32ae adds r2, #174 @ 0xae 8009fb6: f853 3022 ldr.w r3, [r3, r2, lsl #2] 8009fba: 689b ldr r3, [r3, #8] 8009fbc: 6839 ldr r1, [r7, #0] 8009fbe: 6878 ldr r0, [r7, #4] 8009fc0: 4798 blx r3 8009fc2: 4603 mov r3, r0 8009fc4: 73fb strb r3, [r7, #15] 8009fc6: e004 b.n 8009fd2 8009fc8: 6839 ldr r1, [r7, #0] 8009fca: 6878 ldr r0, [r7, #4] 8009fcc: f000 fc2f bl 800a82e 8009fd0: e000 b.n 8009fd4 8009fd2: bf00 nop 8009fd4: e0ad b.n 800a132 8009fd6: 687b ldr r3, [r7, #4] 8009fd8: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 8009fdc: b2db uxtb r3, r3 8009fde: 2b02 cmp r3, #2 8009fe0: d002 beq.n 8009fe8 8009fe2: 2b03 cmp r3, #3 8009fe4: d033 beq.n 800a04e 8009fe6: e099 b.n 800a11c 8009fe8: 7bbb ldrb r3, [r7, #14] 8009fea: 2b00 cmp r3, #0 8009fec: d007 beq.n 8009ffe 8009fee: 7bbb ldrb r3, [r7, #14] 8009ff0: 2b80 cmp r3, #128 @ 0x80 8009ff2: d004 beq.n 8009ffe 8009ff4: 6839 ldr r1, [r7, #0] 8009ff6: 6878 ldr r0, [r7, #4] 8009ff8: f000 fc19 bl 800a82e 8009ffc: e093 b.n 800a126 8009ffe: f997 300e ldrsb.w r3, [r7, #14] 800a002: 2b00 cmp r3, #0 800a004: da0b bge.n 800a01e 800a006: 7bbb ldrb r3, [r7, #14] 800a008: f003 027f and.w r2, r3, #127 @ 0x7f 800a00c: 4613 mov r3, r2 800a00e: 009b lsls r3, r3, #2 800a010: 4413 add r3, r2 800a012: 009b lsls r3, r3, #2 800a014: 3310 adds r3, #16 800a016: 687a ldr r2, [r7, #4] 800a018: 4413 add r3, r2 800a01a: 3304 adds r3, #4 800a01c: e00b b.n 800a036 800a01e: 7bbb ldrb r3, [r7, #14] 800a020: f003 027f and.w r2, r3, #127 @ 0x7f 800a024: 4613 mov r3, r2 800a026: 009b lsls r3, r3, #2 800a028: 4413 add r3, r2 800a02a: 009b lsls r3, r3, #2 800a02c: f503 73a8 add.w r3, r3, #336 @ 0x150 800a030: 687a ldr r2, [r7, #4] 800a032: 4413 add r3, r2 800a034: 3304 adds r3, #4 800a036: 60bb str r3, [r7, #8] 800a038: 68bb ldr r3, [r7, #8] 800a03a: 2200 movs r2, #0 800a03c: 739a strb r2, [r3, #14] 800a03e: 68bb ldr r3, [r7, #8] 800a040: 330e adds r3, #14 800a042: 2202 movs r2, #2 800a044: 4619 mov r1, r3 800a046: 6878 ldr r0, [r7, #4] 800a048: f000 fc6e bl 800a928 800a04c: e06b b.n 800a126 800a04e: f997 300e ldrsb.w r3, [r7, #14] 800a052: 2b00 cmp r3, #0 800a054: da11 bge.n 800a07a 800a056: 7bbb ldrb r3, [r7, #14] 800a058: f003 020f and.w r2, r3, #15 800a05c: 6879 ldr r1, [r7, #4] 800a05e: 4613 mov r3, r2 800a060: 009b lsls r3, r3, #2 800a062: 4413 add r3, r2 800a064: 009b lsls r3, r3, #2 800a066: 440b add r3, r1 800a068: 3323 adds r3, #35 @ 0x23 800a06a: 781b ldrb r3, [r3, #0] 800a06c: 2b00 cmp r3, #0 800a06e: d117 bne.n 800a0a0 800a070: 6839 ldr r1, [r7, #0] 800a072: 6878 ldr r0, [r7, #4] 800a074: f000 fbdb bl 800a82e 800a078: e055 b.n 800a126 800a07a: 7bbb ldrb r3, [r7, #14] 800a07c: f003 020f and.w r2, r3, #15 800a080: 6879 ldr r1, [r7, #4] 800a082: 4613 mov r3, r2 800a084: 009b lsls r3, r3, #2 800a086: 4413 add r3, r2 800a088: 009b lsls r3, r3, #2 800a08a: 440b add r3, r1 800a08c: f203 1363 addw r3, r3, #355 @ 0x163 800a090: 781b ldrb r3, [r3, #0] 800a092: 2b00 cmp r3, #0 800a094: d104 bne.n 800a0a0 800a096: 6839 ldr r1, [r7, #0] 800a098: 6878 ldr r0, [r7, #4] 800a09a: f000 fbc8 bl 800a82e 800a09e: e042 b.n 800a126 800a0a0: f997 300e ldrsb.w r3, [r7, #14] 800a0a4: 2b00 cmp r3, #0 800a0a6: da0b bge.n 800a0c0 800a0a8: 7bbb ldrb r3, [r7, #14] 800a0aa: f003 027f and.w r2, r3, #127 @ 0x7f 800a0ae: 4613 mov r3, r2 800a0b0: 009b lsls r3, r3, #2 800a0b2: 4413 add r3, r2 800a0b4: 009b lsls r3, r3, #2 800a0b6: 3310 adds r3, #16 800a0b8: 687a ldr r2, [r7, #4] 800a0ba: 4413 add r3, r2 800a0bc: 3304 adds r3, #4 800a0be: e00b b.n 800a0d8 800a0c0: 7bbb ldrb r3, [r7, #14] 800a0c2: f003 027f and.w r2, r3, #127 @ 0x7f 800a0c6: 4613 mov r3, r2 800a0c8: 009b lsls r3, r3, #2 800a0ca: 4413 add r3, r2 800a0cc: 009b lsls r3, r3, #2 800a0ce: f503 73a8 add.w r3, r3, #336 @ 0x150 800a0d2: 687a ldr r2, [r7, #4] 800a0d4: 4413 add r3, r2 800a0d6: 3304 adds r3, #4 800a0d8: 60bb str r3, [r7, #8] 800a0da: 7bbb ldrb r3, [r7, #14] 800a0dc: 2b00 cmp r3, #0 800a0de: d002 beq.n 800a0e6 800a0e0: 7bbb ldrb r3, [r7, #14] 800a0e2: 2b80 cmp r3, #128 @ 0x80 800a0e4: d103 bne.n 800a0ee 800a0e6: 68bb ldr r3, [r7, #8] 800a0e8: 2200 movs r2, #0 800a0ea: 739a strb r2, [r3, #14] 800a0ec: e00e b.n 800a10c 800a0ee: 7bbb ldrb r3, [r7, #14] 800a0f0: 4619 mov r1, r3 800a0f2: 6878 ldr r0, [r7, #4] 800a0f4: f001 f80c bl 800b110 800a0f8: 4603 mov r3, r0 800a0fa: 2b00 cmp r3, #0 800a0fc: d003 beq.n 800a106 800a0fe: 68bb ldr r3, [r7, #8] 800a100: 2201 movs r2, #1 800a102: 739a strb r2, [r3, #14] 800a104: e002 b.n 800a10c 800a106: 68bb ldr r3, [r7, #8] 800a108: 2200 movs r2, #0 800a10a: 739a strb r2, [r3, #14] 800a10c: 68bb ldr r3, [r7, #8] 800a10e: 330e adds r3, #14 800a110: 2202 movs r2, #2 800a112: 4619 mov r1, r3 800a114: 6878 ldr r0, [r7, #4] 800a116: f000 fc07 bl 800a928 800a11a: e004 b.n 800a126 800a11c: 6839 ldr r1, [r7, #0] 800a11e: 6878 ldr r0, [r7, #4] 800a120: f000 fb85 bl 800a82e 800a124: bf00 nop 800a126: e004 b.n 800a132 800a128: 6839 ldr r1, [r7, #0] 800a12a: 6878 ldr r0, [r7, #4] 800a12c: f000 fb7f bl 800a82e 800a130: bf00 nop 800a132: e005 b.n 800a140 800a134: 6839 ldr r1, [r7, #0] 800a136: 6878 ldr r0, [r7, #4] 800a138: f000 fb79 bl 800a82e 800a13c: e000 b.n 800a140 800a13e: bf00 nop 800a140: 7bfb ldrb r3, [r7, #15] 800a142: 4618 mov r0, r3 800a144: 3710 adds r7, #16 800a146: 46bd mov sp, r7 800a148: bd80 pop {r7, pc} ... 0800a14c : 800a14c: b580 push {r7, lr} 800a14e: b084 sub sp, #16 800a150: af00 add r7, sp, #0 800a152: 6078 str r0, [r7, #4] 800a154: 6039 str r1, [r7, #0] 800a156: 2300 movs r3, #0 800a158: 813b strh r3, [r7, #8] 800a15a: 2300 movs r3, #0 800a15c: 60fb str r3, [r7, #12] 800a15e: 2300 movs r3, #0 800a160: 72fb strb r3, [r7, #11] 800a162: 683b ldr r3, [r7, #0] 800a164: 885b ldrh r3, [r3, #2] 800a166: 0a1b lsrs r3, r3, #8 800a168: b29b uxth r3, r3 800a16a: 3b01 subs r3, #1 800a16c: 2b0e cmp r3, #14 800a16e: f200 8152 bhi.w 800a416 800a172: a201 add r2, pc, #4 @ (adr r2, 800a178 ) 800a174: f852 f023 ldr.w pc, [r2, r3, lsl #2] 800a178: 0800a1e9 .word 0x0800a1e9 800a17c: 0800a201 .word 0x0800a201 800a180: 0800a241 .word 0x0800a241 800a184: 0800a417 .word 0x0800a417 800a188: 0800a417 .word 0x0800a417 800a18c: 0800a3b7 .word 0x0800a3b7 800a190: 0800a3e3 .word 0x0800a3e3 800a194: 0800a417 .word 0x0800a417 800a198: 0800a417 .word 0x0800a417 800a19c: 0800a417 .word 0x0800a417 800a1a0: 0800a417 .word 0x0800a417 800a1a4: 0800a417 .word 0x0800a417 800a1a8: 0800a417 .word 0x0800a417 800a1ac: 0800a417 .word 0x0800a417 800a1b0: 0800a1b5 .word 0x0800a1b5 800a1b4: 687b ldr r3, [r7, #4] 800a1b6: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a1ba: 69db ldr r3, [r3, #28] 800a1bc: 2b00 cmp r3, #0 800a1be: d00b beq.n 800a1d8 800a1c0: 687b ldr r3, [r7, #4] 800a1c2: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a1c6: 69db ldr r3, [r3, #28] 800a1c8: 687a ldr r2, [r7, #4] 800a1ca: 7c12 ldrb r2, [r2, #16] 800a1cc: f107 0108 add.w r1, r7, #8 800a1d0: 4610 mov r0, r2 800a1d2: 4798 blx r3 800a1d4: 60f8 str r0, [r7, #12] 800a1d6: e126 b.n 800a426 800a1d8: 6839 ldr r1, [r7, #0] 800a1da: 6878 ldr r0, [r7, #4] 800a1dc: f000 fb27 bl 800a82e 800a1e0: 7afb ldrb r3, [r7, #11] 800a1e2: 3301 adds r3, #1 800a1e4: 72fb strb r3, [r7, #11] 800a1e6: e11e b.n 800a426 800a1e8: 687b ldr r3, [r7, #4] 800a1ea: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a1ee: 681b ldr r3, [r3, #0] 800a1f0: 687a ldr r2, [r7, #4] 800a1f2: 7c12 ldrb r2, [r2, #16] 800a1f4: f107 0108 add.w r1, r7, #8 800a1f8: 4610 mov r0, r2 800a1fa: 4798 blx r3 800a1fc: 60f8 str r0, [r7, #12] 800a1fe: e112 b.n 800a426 800a200: 687b ldr r3, [r7, #4] 800a202: 7c1b ldrb r3, [r3, #16] 800a204: 2b00 cmp r3, #0 800a206: d10d bne.n 800a224 800a208: 687b ldr r3, [r7, #4] 800a20a: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 800a20e: 6a9b ldr r3, [r3, #40] @ 0x28 800a210: f107 0208 add.w r2, r7, #8 800a214: 4610 mov r0, r2 800a216: 4798 blx r3 800a218: 60f8 str r0, [r7, #12] 800a21a: 68fb ldr r3, [r7, #12] 800a21c: 3301 adds r3, #1 800a21e: 2202 movs r2, #2 800a220: 701a strb r2, [r3, #0] 800a222: e100 b.n 800a426 800a224: 687b ldr r3, [r7, #4] 800a226: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 800a22a: 6adb ldr r3, [r3, #44] @ 0x2c 800a22c: f107 0208 add.w r2, r7, #8 800a230: 4610 mov r0, r2 800a232: 4798 blx r3 800a234: 60f8 str r0, [r7, #12] 800a236: 68fb ldr r3, [r7, #12] 800a238: 3301 adds r3, #1 800a23a: 2202 movs r2, #2 800a23c: 701a strb r2, [r3, #0] 800a23e: e0f2 b.n 800a426 800a240: 683b ldr r3, [r7, #0] 800a242: 885b ldrh r3, [r3, #2] 800a244: b2db uxtb r3, r3 800a246: 2b05 cmp r3, #5 800a248: f200 80ac bhi.w 800a3a4 800a24c: a201 add r2, pc, #4 @ (adr r2, 800a254 ) 800a24e: f852 f023 ldr.w pc, [r2, r3, lsl #2] 800a252: bf00 nop 800a254: 0800a26d .word 0x0800a26d 800a258: 0800a2a1 .word 0x0800a2a1 800a25c: 0800a2d5 .word 0x0800a2d5 800a260: 0800a309 .word 0x0800a309 800a264: 0800a33d .word 0x0800a33d 800a268: 0800a371 .word 0x0800a371 800a26c: 687b ldr r3, [r7, #4] 800a26e: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a272: 685b ldr r3, [r3, #4] 800a274: 2b00 cmp r3, #0 800a276: d00b beq.n 800a290 800a278: 687b ldr r3, [r7, #4] 800a27a: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a27e: 685b ldr r3, [r3, #4] 800a280: 687a ldr r2, [r7, #4] 800a282: 7c12 ldrb r2, [r2, #16] 800a284: f107 0108 add.w r1, r7, #8 800a288: 4610 mov r0, r2 800a28a: 4798 blx r3 800a28c: 60f8 str r0, [r7, #12] 800a28e: e091 b.n 800a3b4 800a290: 6839 ldr r1, [r7, #0] 800a292: 6878 ldr r0, [r7, #4] 800a294: f000 facb bl 800a82e 800a298: 7afb ldrb r3, [r7, #11] 800a29a: 3301 adds r3, #1 800a29c: 72fb strb r3, [r7, #11] 800a29e: e089 b.n 800a3b4 800a2a0: 687b ldr r3, [r7, #4] 800a2a2: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a2a6: 689b ldr r3, [r3, #8] 800a2a8: 2b00 cmp r3, #0 800a2aa: d00b beq.n 800a2c4 800a2ac: 687b ldr r3, [r7, #4] 800a2ae: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a2b2: 689b ldr r3, [r3, #8] 800a2b4: 687a ldr r2, [r7, #4] 800a2b6: 7c12 ldrb r2, [r2, #16] 800a2b8: f107 0108 add.w r1, r7, #8 800a2bc: 4610 mov r0, r2 800a2be: 4798 blx r3 800a2c0: 60f8 str r0, [r7, #12] 800a2c2: e077 b.n 800a3b4 800a2c4: 6839 ldr r1, [r7, #0] 800a2c6: 6878 ldr r0, [r7, #4] 800a2c8: f000 fab1 bl 800a82e 800a2cc: 7afb ldrb r3, [r7, #11] 800a2ce: 3301 adds r3, #1 800a2d0: 72fb strb r3, [r7, #11] 800a2d2: e06f b.n 800a3b4 800a2d4: 687b ldr r3, [r7, #4] 800a2d6: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a2da: 68db ldr r3, [r3, #12] 800a2dc: 2b00 cmp r3, #0 800a2de: d00b beq.n 800a2f8 800a2e0: 687b ldr r3, [r7, #4] 800a2e2: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a2e6: 68db ldr r3, [r3, #12] 800a2e8: 687a ldr r2, [r7, #4] 800a2ea: 7c12 ldrb r2, [r2, #16] 800a2ec: f107 0108 add.w r1, r7, #8 800a2f0: 4610 mov r0, r2 800a2f2: 4798 blx r3 800a2f4: 60f8 str r0, [r7, #12] 800a2f6: e05d b.n 800a3b4 800a2f8: 6839 ldr r1, [r7, #0] 800a2fa: 6878 ldr r0, [r7, #4] 800a2fc: f000 fa97 bl 800a82e 800a300: 7afb ldrb r3, [r7, #11] 800a302: 3301 adds r3, #1 800a304: 72fb strb r3, [r7, #11] 800a306: e055 b.n 800a3b4 800a308: 687b ldr r3, [r7, #4] 800a30a: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a30e: 691b ldr r3, [r3, #16] 800a310: 2b00 cmp r3, #0 800a312: d00b beq.n 800a32c 800a314: 687b ldr r3, [r7, #4] 800a316: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a31a: 691b ldr r3, [r3, #16] 800a31c: 687a ldr r2, [r7, #4] 800a31e: 7c12 ldrb r2, [r2, #16] 800a320: f107 0108 add.w r1, r7, #8 800a324: 4610 mov r0, r2 800a326: 4798 blx r3 800a328: 60f8 str r0, [r7, #12] 800a32a: e043 b.n 800a3b4 800a32c: 6839 ldr r1, [r7, #0] 800a32e: 6878 ldr r0, [r7, #4] 800a330: f000 fa7d bl 800a82e 800a334: 7afb ldrb r3, [r7, #11] 800a336: 3301 adds r3, #1 800a338: 72fb strb r3, [r7, #11] 800a33a: e03b b.n 800a3b4 800a33c: 687b ldr r3, [r7, #4] 800a33e: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a342: 695b ldr r3, [r3, #20] 800a344: 2b00 cmp r3, #0 800a346: d00b beq.n 800a360 800a348: 687b ldr r3, [r7, #4] 800a34a: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a34e: 695b ldr r3, [r3, #20] 800a350: 687a ldr r2, [r7, #4] 800a352: 7c12 ldrb r2, [r2, #16] 800a354: f107 0108 add.w r1, r7, #8 800a358: 4610 mov r0, r2 800a35a: 4798 blx r3 800a35c: 60f8 str r0, [r7, #12] 800a35e: e029 b.n 800a3b4 800a360: 6839 ldr r1, [r7, #0] 800a362: 6878 ldr r0, [r7, #4] 800a364: f000 fa63 bl 800a82e 800a368: 7afb ldrb r3, [r7, #11] 800a36a: 3301 adds r3, #1 800a36c: 72fb strb r3, [r7, #11] 800a36e: e021 b.n 800a3b4 800a370: 687b ldr r3, [r7, #4] 800a372: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a376: 699b ldr r3, [r3, #24] 800a378: 2b00 cmp r3, #0 800a37a: d00b beq.n 800a394 800a37c: 687b ldr r3, [r7, #4] 800a37e: f8d3 32b4 ldr.w r3, [r3, #692] @ 0x2b4 800a382: 699b ldr r3, [r3, #24] 800a384: 687a ldr r2, [r7, #4] 800a386: 7c12 ldrb r2, [r2, #16] 800a388: f107 0108 add.w r1, r7, #8 800a38c: 4610 mov r0, r2 800a38e: 4798 blx r3 800a390: 60f8 str r0, [r7, #12] 800a392: e00f b.n 800a3b4 800a394: 6839 ldr r1, [r7, #0] 800a396: 6878 ldr r0, [r7, #4] 800a398: f000 fa49 bl 800a82e 800a39c: 7afb ldrb r3, [r7, #11] 800a39e: 3301 adds r3, #1 800a3a0: 72fb strb r3, [r7, #11] 800a3a2: e007 b.n 800a3b4 800a3a4: 6839 ldr r1, [r7, #0] 800a3a6: 6878 ldr r0, [r7, #4] 800a3a8: f000 fa41 bl 800a82e 800a3ac: 7afb ldrb r3, [r7, #11] 800a3ae: 3301 adds r3, #1 800a3b0: 72fb strb r3, [r7, #11] 800a3b2: bf00 nop 800a3b4: e037 b.n 800a426 800a3b6: 687b ldr r3, [r7, #4] 800a3b8: 7c1b ldrb r3, [r3, #16] 800a3ba: 2b00 cmp r3, #0 800a3bc: d109 bne.n 800a3d2 800a3be: 687b ldr r3, [r7, #4] 800a3c0: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 800a3c4: 6b5b ldr r3, [r3, #52] @ 0x34 800a3c6: f107 0208 add.w r2, r7, #8 800a3ca: 4610 mov r0, r2 800a3cc: 4798 blx r3 800a3ce: 60f8 str r0, [r7, #12] 800a3d0: e029 b.n 800a426 800a3d2: 6839 ldr r1, [r7, #0] 800a3d4: 6878 ldr r0, [r7, #4] 800a3d6: f000 fa2a bl 800a82e 800a3da: 7afb ldrb r3, [r7, #11] 800a3dc: 3301 adds r3, #1 800a3de: 72fb strb r3, [r7, #11] 800a3e0: e021 b.n 800a426 800a3e2: 687b ldr r3, [r7, #4] 800a3e4: 7c1b ldrb r3, [r3, #16] 800a3e6: 2b00 cmp r3, #0 800a3e8: d10d bne.n 800a406 800a3ea: 687b ldr r3, [r7, #4] 800a3ec: f8d3 32b8 ldr.w r3, [r3, #696] @ 0x2b8 800a3f0: 6b1b ldr r3, [r3, #48] @ 0x30 800a3f2: f107 0208 add.w r2, r7, #8 800a3f6: 4610 mov r0, r2 800a3f8: 4798 blx r3 800a3fa: 60f8 str r0, [r7, #12] 800a3fc: 68fb ldr r3, [r7, #12] 800a3fe: 3301 adds r3, #1 800a400: 2207 movs r2, #7 800a402: 701a strb r2, [r3, #0] 800a404: e00f b.n 800a426 800a406: 6839 ldr r1, [r7, #0] 800a408: 6878 ldr r0, [r7, #4] 800a40a: f000 fa10 bl 800a82e 800a40e: 7afb ldrb r3, [r7, #11] 800a410: 3301 adds r3, #1 800a412: 72fb strb r3, [r7, #11] 800a414: e007 b.n 800a426 800a416: 6839 ldr r1, [r7, #0] 800a418: 6878 ldr r0, [r7, #4] 800a41a: f000 fa08 bl 800a82e 800a41e: 7afb ldrb r3, [r7, #11] 800a420: 3301 adds r3, #1 800a422: 72fb strb r3, [r7, #11] 800a424: bf00 nop 800a426: 7afb ldrb r3, [r7, #11] 800a428: 2b00 cmp r3, #0 800a42a: d11e bne.n 800a46a 800a42c: 683b ldr r3, [r7, #0] 800a42e: 88db ldrh r3, [r3, #6] 800a430: 2b00 cmp r3, #0 800a432: d016 beq.n 800a462 800a434: 893b ldrh r3, [r7, #8] 800a436: 2b00 cmp r3, #0 800a438: d00e beq.n 800a458 800a43a: 683b ldr r3, [r7, #0] 800a43c: 88da ldrh r2, [r3, #6] 800a43e: 893b ldrh r3, [r7, #8] 800a440: 4293 cmp r3, r2 800a442: bf28 it cs 800a444: 4613 movcs r3, r2 800a446: b29b uxth r3, r3 800a448: 813b strh r3, [r7, #8] 800a44a: 893b ldrh r3, [r7, #8] 800a44c: 461a mov r2, r3 800a44e: 68f9 ldr r1, [r7, #12] 800a450: 6878 ldr r0, [r7, #4] 800a452: f000 fa69 bl 800a928 800a456: e009 b.n 800a46c 800a458: 6839 ldr r1, [r7, #0] 800a45a: 6878 ldr r0, [r7, #4] 800a45c: f000 f9e7 bl 800a82e 800a460: e004 b.n 800a46c 800a462: 6878 ldr r0, [r7, #4] 800a464: f000 faa0 bl 800a9a8 800a468: e000 b.n 800a46c 800a46a: bf00 nop 800a46c: 3710 adds r7, #16 800a46e: 46bd mov sp, r7 800a470: bd80 pop {r7, pc} 800a472: bf00 nop 0800a474 : 800a474: b580 push {r7, lr} 800a476: b084 sub sp, #16 800a478: af00 add r7, sp, #0 800a47a: 6078 str r0, [r7, #4] 800a47c: 6039 str r1, [r7, #0] 800a47e: 683b ldr r3, [r7, #0] 800a480: 889b ldrh r3, [r3, #4] 800a482: 2b00 cmp r3, #0 800a484: d131 bne.n 800a4ea 800a486: 683b ldr r3, [r7, #0] 800a488: 88db ldrh r3, [r3, #6] 800a48a: 2b00 cmp r3, #0 800a48c: d12d bne.n 800a4ea 800a48e: 683b ldr r3, [r7, #0] 800a490: 885b ldrh r3, [r3, #2] 800a492: 2b7f cmp r3, #127 @ 0x7f 800a494: d829 bhi.n 800a4ea 800a496: 683b ldr r3, [r7, #0] 800a498: 885b ldrh r3, [r3, #2] 800a49a: b2db uxtb r3, r3 800a49c: f003 037f and.w r3, r3, #127 @ 0x7f 800a4a0: 73fb strb r3, [r7, #15] 800a4a2: 687b ldr r3, [r7, #4] 800a4a4: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800a4a8: b2db uxtb r3, r3 800a4aa: 2b03 cmp r3, #3 800a4ac: d104 bne.n 800a4b8 800a4ae: 6839 ldr r1, [r7, #0] 800a4b0: 6878 ldr r0, [r7, #4] 800a4b2: f000 f9bc bl 800a82e 800a4b6: e01d b.n 800a4f4 800a4b8: 687b ldr r3, [r7, #4] 800a4ba: 7bfa ldrb r2, [r7, #15] 800a4bc: f883 229e strb.w r2, [r3, #670] @ 0x29e 800a4c0: 7bfb ldrb r3, [r7, #15] 800a4c2: 4619 mov r1, r3 800a4c4: 6878 ldr r0, [r7, #4] 800a4c6: f000 fe4f bl 800b168 800a4ca: 6878 ldr r0, [r7, #4] 800a4cc: f000 fa6c bl 800a9a8 800a4d0: 7bfb ldrb r3, [r7, #15] 800a4d2: 2b00 cmp r3, #0 800a4d4: d004 beq.n 800a4e0 800a4d6: 687b ldr r3, [r7, #4] 800a4d8: 2202 movs r2, #2 800a4da: f883 229c strb.w r2, [r3, #668] @ 0x29c 800a4de: e009 b.n 800a4f4 800a4e0: 687b ldr r3, [r7, #4] 800a4e2: 2201 movs r2, #1 800a4e4: f883 229c strb.w r2, [r3, #668] @ 0x29c 800a4e8: e004 b.n 800a4f4 800a4ea: 6839 ldr r1, [r7, #0] 800a4ec: 6878 ldr r0, [r7, #4] 800a4ee: f000 f99e bl 800a82e 800a4f2: bf00 nop 800a4f4: bf00 nop 800a4f6: 3710 adds r7, #16 800a4f8: 46bd mov sp, r7 800a4fa: bd80 pop {r7, pc} 0800a4fc : 800a4fc: b580 push {r7, lr} 800a4fe: b084 sub sp, #16 800a500: af00 add r7, sp, #0 800a502: 6078 str r0, [r7, #4] 800a504: 6039 str r1, [r7, #0] 800a506: 2300 movs r3, #0 800a508: 73fb strb r3, [r7, #15] 800a50a: 683b ldr r3, [r7, #0] 800a50c: 885b ldrh r3, [r3, #2] 800a50e: b2da uxtb r2, r3 800a510: 4b4e ldr r3, [pc, #312] @ (800a64c ) 800a512: 701a strb r2, [r3, #0] 800a514: 4b4d ldr r3, [pc, #308] @ (800a64c ) 800a516: 781b ldrb r3, [r3, #0] 800a518: 2b01 cmp r3, #1 800a51a: d905 bls.n 800a528 800a51c: 6839 ldr r1, [r7, #0] 800a51e: 6878 ldr r0, [r7, #4] 800a520: f000 f985 bl 800a82e 800a524: 2303 movs r3, #3 800a526: e08c b.n 800a642 800a528: 687b ldr r3, [r7, #4] 800a52a: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800a52e: b2db uxtb r3, r3 800a530: 2b02 cmp r3, #2 800a532: d002 beq.n 800a53a 800a534: 2b03 cmp r3, #3 800a536: d029 beq.n 800a58c 800a538: e075 b.n 800a626 800a53a: 4b44 ldr r3, [pc, #272] @ (800a64c ) 800a53c: 781b ldrb r3, [r3, #0] 800a53e: 2b00 cmp r3, #0 800a540: d020 beq.n 800a584 800a542: 4b42 ldr r3, [pc, #264] @ (800a64c ) 800a544: 781b ldrb r3, [r3, #0] 800a546: 461a mov r2, r3 800a548: 687b ldr r3, [r7, #4] 800a54a: 605a str r2, [r3, #4] 800a54c: 4b3f ldr r3, [pc, #252] @ (800a64c ) 800a54e: 781b ldrb r3, [r3, #0] 800a550: 4619 mov r1, r3 800a552: 6878 ldr r0, [r7, #4] 800a554: f7fe ffa3 bl 800949e 800a558: 4603 mov r3, r0 800a55a: 73fb strb r3, [r7, #15] 800a55c: 7bfb ldrb r3, [r7, #15] 800a55e: 2b00 cmp r3, #0 800a560: d008 beq.n 800a574 800a562: 6839 ldr r1, [r7, #0] 800a564: 6878 ldr r0, [r7, #4] 800a566: f000 f962 bl 800a82e 800a56a: 687b ldr r3, [r7, #4] 800a56c: 2202 movs r2, #2 800a56e: f883 229c strb.w r2, [r3, #668] @ 0x29c 800a572: e065 b.n 800a640 800a574: 6878 ldr r0, [r7, #4] 800a576: f000 fa17 bl 800a9a8 800a57a: 687b ldr r3, [r7, #4] 800a57c: 2203 movs r2, #3 800a57e: f883 229c strb.w r2, [r3, #668] @ 0x29c 800a582: e05d b.n 800a640 800a584: 6878 ldr r0, [r7, #4] 800a586: f000 fa0f bl 800a9a8 800a58a: e059 b.n 800a640 800a58c: 4b2f ldr r3, [pc, #188] @ (800a64c ) 800a58e: 781b ldrb r3, [r3, #0] 800a590: 2b00 cmp r3, #0 800a592: d112 bne.n 800a5ba 800a594: 687b ldr r3, [r7, #4] 800a596: 2202 movs r2, #2 800a598: f883 229c strb.w r2, [r3, #668] @ 0x29c 800a59c: 4b2b ldr r3, [pc, #172] @ (800a64c ) 800a59e: 781b ldrb r3, [r3, #0] 800a5a0: 461a mov r2, r3 800a5a2: 687b ldr r3, [r7, #4] 800a5a4: 605a str r2, [r3, #4] 800a5a6: 4b29 ldr r3, [pc, #164] @ (800a64c ) 800a5a8: 781b ldrb r3, [r3, #0] 800a5aa: 4619 mov r1, r3 800a5ac: 6878 ldr r0, [r7, #4] 800a5ae: f7fe ff92 bl 80094d6 800a5b2: 6878 ldr r0, [r7, #4] 800a5b4: f000 f9f8 bl 800a9a8 800a5b8: e042 b.n 800a640 800a5ba: 4b24 ldr r3, [pc, #144] @ (800a64c ) 800a5bc: 781b ldrb r3, [r3, #0] 800a5be: 461a mov r2, r3 800a5c0: 687b ldr r3, [r7, #4] 800a5c2: 685b ldr r3, [r3, #4] 800a5c4: 429a cmp r2, r3 800a5c6: d02a beq.n 800a61e 800a5c8: 687b ldr r3, [r7, #4] 800a5ca: 685b ldr r3, [r3, #4] 800a5cc: b2db uxtb r3, r3 800a5ce: 4619 mov r1, r3 800a5d0: 6878 ldr r0, [r7, #4] 800a5d2: f7fe ff80 bl 80094d6 800a5d6: 4b1d ldr r3, [pc, #116] @ (800a64c ) 800a5d8: 781b ldrb r3, [r3, #0] 800a5da: 461a mov r2, r3 800a5dc: 687b ldr r3, [r7, #4] 800a5de: 605a str r2, [r3, #4] 800a5e0: 4b1a ldr r3, [pc, #104] @ (800a64c ) 800a5e2: 781b ldrb r3, [r3, #0] 800a5e4: 4619 mov r1, r3 800a5e6: 6878 ldr r0, [r7, #4] 800a5e8: f7fe ff59 bl 800949e 800a5ec: 4603 mov r3, r0 800a5ee: 73fb strb r3, [r7, #15] 800a5f0: 7bfb ldrb r3, [r7, #15] 800a5f2: 2b00 cmp r3, #0 800a5f4: d00f beq.n 800a616 800a5f6: 6839 ldr r1, [r7, #0] 800a5f8: 6878 ldr r0, [r7, #4] 800a5fa: f000 f918 bl 800a82e 800a5fe: 687b ldr r3, [r7, #4] 800a600: 685b ldr r3, [r3, #4] 800a602: b2db uxtb r3, r3 800a604: 4619 mov r1, r3 800a606: 6878 ldr r0, [r7, #4] 800a608: f7fe ff65 bl 80094d6 800a60c: 687b ldr r3, [r7, #4] 800a60e: 2202 movs r2, #2 800a610: f883 229c strb.w r2, [r3, #668] @ 0x29c 800a614: e014 b.n 800a640 800a616: 6878 ldr r0, [r7, #4] 800a618: f000 f9c6 bl 800a9a8 800a61c: e010 b.n 800a640 800a61e: 6878 ldr r0, [r7, #4] 800a620: f000 f9c2 bl 800a9a8 800a624: e00c b.n 800a640 800a626: 6839 ldr r1, [r7, #0] 800a628: 6878 ldr r0, [r7, #4] 800a62a: f000 f900 bl 800a82e 800a62e: 4b07 ldr r3, [pc, #28] @ (800a64c ) 800a630: 781b ldrb r3, [r3, #0] 800a632: 4619 mov r1, r3 800a634: 6878 ldr r0, [r7, #4] 800a636: f7fe ff4e bl 80094d6 800a63a: 2303 movs r3, #3 800a63c: 73fb strb r3, [r7, #15] 800a63e: bf00 nop 800a640: 7bfb ldrb r3, [r7, #15] 800a642: 4618 mov r0, r3 800a644: 3710 adds r7, #16 800a646: 46bd mov sp, r7 800a648: bd80 pop {r7, pc} 800a64a: bf00 nop 800a64c: 20000d84 .word 0x20000d84 0800a650 : 800a650: b580 push {r7, lr} 800a652: b082 sub sp, #8 800a654: af00 add r7, sp, #0 800a656: 6078 str r0, [r7, #4] 800a658: 6039 str r1, [r7, #0] 800a65a: 683b ldr r3, [r7, #0] 800a65c: 88db ldrh r3, [r3, #6] 800a65e: 2b01 cmp r3, #1 800a660: d004 beq.n 800a66c 800a662: 6839 ldr r1, [r7, #0] 800a664: 6878 ldr r0, [r7, #4] 800a666: f000 f8e2 bl 800a82e 800a66a: e023 b.n 800a6b4 800a66c: 687b ldr r3, [r7, #4] 800a66e: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800a672: b2db uxtb r3, r3 800a674: 2b02 cmp r3, #2 800a676: dc02 bgt.n 800a67e 800a678: 2b00 cmp r3, #0 800a67a: dc03 bgt.n 800a684 800a67c: e015 b.n 800a6aa 800a67e: 2b03 cmp r3, #3 800a680: d00b beq.n 800a69a 800a682: e012 b.n 800a6aa 800a684: 687b ldr r3, [r7, #4] 800a686: 2200 movs r2, #0 800a688: 609a str r2, [r3, #8] 800a68a: 687b ldr r3, [r7, #4] 800a68c: 3308 adds r3, #8 800a68e: 2201 movs r2, #1 800a690: 4619 mov r1, r3 800a692: 6878 ldr r0, [r7, #4] 800a694: f000 f948 bl 800a928 800a698: e00c b.n 800a6b4 800a69a: 687b ldr r3, [r7, #4] 800a69c: 3304 adds r3, #4 800a69e: 2201 movs r2, #1 800a6a0: 4619 mov r1, r3 800a6a2: 6878 ldr r0, [r7, #4] 800a6a4: f000 f940 bl 800a928 800a6a8: e004 b.n 800a6b4 800a6aa: 6839 ldr r1, [r7, #0] 800a6ac: 6878 ldr r0, [r7, #4] 800a6ae: f000 f8be bl 800a82e 800a6b2: bf00 nop 800a6b4: bf00 nop 800a6b6: 3708 adds r7, #8 800a6b8: 46bd mov sp, r7 800a6ba: bd80 pop {r7, pc} 0800a6bc : 800a6bc: b580 push {r7, lr} 800a6be: b082 sub sp, #8 800a6c0: af00 add r7, sp, #0 800a6c2: 6078 str r0, [r7, #4] 800a6c4: 6039 str r1, [r7, #0] 800a6c6: 687b ldr r3, [r7, #4] 800a6c8: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800a6cc: b2db uxtb r3, r3 800a6ce: 3b01 subs r3, #1 800a6d0: 2b02 cmp r3, #2 800a6d2: d81e bhi.n 800a712 800a6d4: 683b ldr r3, [r7, #0] 800a6d6: 88db ldrh r3, [r3, #6] 800a6d8: 2b02 cmp r3, #2 800a6da: d004 beq.n 800a6e6 800a6dc: 6839 ldr r1, [r7, #0] 800a6de: 6878 ldr r0, [r7, #4] 800a6e0: f000 f8a5 bl 800a82e 800a6e4: e01a b.n 800a71c 800a6e6: 687b ldr r3, [r7, #4] 800a6e8: 2201 movs r2, #1 800a6ea: 60da str r2, [r3, #12] 800a6ec: 687b ldr r3, [r7, #4] 800a6ee: f8d3 32a4 ldr.w r3, [r3, #676] @ 0x2a4 800a6f2: 2b00 cmp r3, #0 800a6f4: d005 beq.n 800a702 800a6f6: 687b ldr r3, [r7, #4] 800a6f8: 68db ldr r3, [r3, #12] 800a6fa: f043 0202 orr.w r2, r3, #2 800a6fe: 687b ldr r3, [r7, #4] 800a700: 60da str r2, [r3, #12] 800a702: 687b ldr r3, [r7, #4] 800a704: 330c adds r3, #12 800a706: 2202 movs r2, #2 800a708: 4619 mov r1, r3 800a70a: 6878 ldr r0, [r7, #4] 800a70c: f000 f90c bl 800a928 800a710: e004 b.n 800a71c 800a712: 6839 ldr r1, [r7, #0] 800a714: 6878 ldr r0, [r7, #4] 800a716: f000 f88a bl 800a82e 800a71a: bf00 nop 800a71c: bf00 nop 800a71e: 3708 adds r7, #8 800a720: 46bd mov sp, r7 800a722: bd80 pop {r7, pc} 0800a724 : 800a724: b580 push {r7, lr} 800a726: b082 sub sp, #8 800a728: af00 add r7, sp, #0 800a72a: 6078 str r0, [r7, #4] 800a72c: 6039 str r1, [r7, #0] 800a72e: 683b ldr r3, [r7, #0] 800a730: 885b ldrh r3, [r3, #2] 800a732: 2b01 cmp r3, #1 800a734: d107 bne.n 800a746 800a736: 687b ldr r3, [r7, #4] 800a738: 2201 movs r2, #1 800a73a: f8c3 22a4 str.w r2, [r3, #676] @ 0x2a4 800a73e: 6878 ldr r0, [r7, #4] 800a740: f000 f932 bl 800a9a8 800a744: e013 b.n 800a76e 800a746: 683b ldr r3, [r7, #0] 800a748: 885b ldrh r3, [r3, #2] 800a74a: 2b02 cmp r3, #2 800a74c: d10b bne.n 800a766 800a74e: 683b ldr r3, [r7, #0] 800a750: 889b ldrh r3, [r3, #4] 800a752: 0a1b lsrs r3, r3, #8 800a754: b29b uxth r3, r3 800a756: b2da uxtb r2, r3 800a758: 687b ldr r3, [r7, #4] 800a75a: f883 22a0 strb.w r2, [r3, #672] @ 0x2a0 800a75e: 6878 ldr r0, [r7, #4] 800a760: f000 f922 bl 800a9a8 800a764: e003 b.n 800a76e 800a766: 6839 ldr r1, [r7, #0] 800a768: 6878 ldr r0, [r7, #4] 800a76a: f000 f860 bl 800a82e 800a76e: bf00 nop 800a770: 3708 adds r7, #8 800a772: 46bd mov sp, r7 800a774: bd80 pop {r7, pc} 0800a776 : 800a776: b580 push {r7, lr} 800a778: b082 sub sp, #8 800a77a: af00 add r7, sp, #0 800a77c: 6078 str r0, [r7, #4] 800a77e: 6039 str r1, [r7, #0] 800a780: 687b ldr r3, [r7, #4] 800a782: f893 329c ldrb.w r3, [r3, #668] @ 0x29c 800a786: b2db uxtb r3, r3 800a788: 3b01 subs r3, #1 800a78a: 2b02 cmp r3, #2 800a78c: d80b bhi.n 800a7a6 800a78e: 683b ldr r3, [r7, #0] 800a790: 885b ldrh r3, [r3, #2] 800a792: 2b01 cmp r3, #1 800a794: d10c bne.n 800a7b0 800a796: 687b ldr r3, [r7, #4] 800a798: 2200 movs r2, #0 800a79a: f8c3 22a4 str.w r2, [r3, #676] @ 0x2a4 800a79e: 6878 ldr r0, [r7, #4] 800a7a0: f000 f902 bl 800a9a8 800a7a4: e004 b.n 800a7b0 800a7a6: 6839 ldr r1, [r7, #0] 800a7a8: 6878 ldr r0, [r7, #4] 800a7aa: f000 f840 bl 800a82e 800a7ae: e000 b.n 800a7b2 800a7b0: bf00 nop 800a7b2: bf00 nop 800a7b4: 3708 adds r7, #8 800a7b6: 46bd mov sp, r7 800a7b8: bd80 pop {r7, pc} 0800a7ba : 800a7ba: b580 push {r7, lr} 800a7bc: b084 sub sp, #16 800a7be: af00 add r7, sp, #0 800a7c0: 6078 str r0, [r7, #4] 800a7c2: 6039 str r1, [r7, #0] 800a7c4: 683b ldr r3, [r7, #0] 800a7c6: 60fb str r3, [r7, #12] 800a7c8: 68fb ldr r3, [r7, #12] 800a7ca: 781a ldrb r2, [r3, #0] 800a7cc: 687b ldr r3, [r7, #4] 800a7ce: 701a strb r2, [r3, #0] 800a7d0: 68fb ldr r3, [r7, #12] 800a7d2: 3301 adds r3, #1 800a7d4: 60fb str r3, [r7, #12] 800a7d6: 68fb ldr r3, [r7, #12] 800a7d8: 781a ldrb r2, [r3, #0] 800a7da: 687b ldr r3, [r7, #4] 800a7dc: 705a strb r2, [r3, #1] 800a7de: 68fb ldr r3, [r7, #12] 800a7e0: 3301 adds r3, #1 800a7e2: 60fb str r3, [r7, #12] 800a7e4: 68f8 ldr r0, [r7, #12] 800a7e6: f7ff fa13 bl 8009c10 800a7ea: 4603 mov r3, r0 800a7ec: 461a mov r2, r3 800a7ee: 687b ldr r3, [r7, #4] 800a7f0: 805a strh r2, [r3, #2] 800a7f2: 68fb ldr r3, [r7, #12] 800a7f4: 3301 adds r3, #1 800a7f6: 60fb str r3, [r7, #12] 800a7f8: 68fb ldr r3, [r7, #12] 800a7fa: 3301 adds r3, #1 800a7fc: 60fb str r3, [r7, #12] 800a7fe: 68f8 ldr r0, [r7, #12] 800a800: f7ff fa06 bl 8009c10 800a804: 4603 mov r3, r0 800a806: 461a mov r2, r3 800a808: 687b ldr r3, [r7, #4] 800a80a: 809a strh r2, [r3, #4] 800a80c: 68fb ldr r3, [r7, #12] 800a80e: 3301 adds r3, #1 800a810: 60fb str r3, [r7, #12] 800a812: 68fb ldr r3, [r7, #12] 800a814: 3301 adds r3, #1 800a816: 60fb str r3, [r7, #12] 800a818: 68f8 ldr r0, [r7, #12] 800a81a: f7ff f9f9 bl 8009c10 800a81e: 4603 mov r3, r0 800a820: 461a mov r2, r3 800a822: 687b ldr r3, [r7, #4] 800a824: 80da strh r2, [r3, #6] 800a826: bf00 nop 800a828: 3710 adds r7, #16 800a82a: 46bd mov sp, r7 800a82c: bd80 pop {r7, pc} 0800a82e : 800a82e: b580 push {r7, lr} 800a830: b082 sub sp, #8 800a832: af00 add r7, sp, #0 800a834: 6078 str r0, [r7, #4] 800a836: 6039 str r1, [r7, #0] 800a838: 2180 movs r1, #128 @ 0x80 800a83a: 6878 ldr r0, [r7, #4] 800a83c: f000 fc2a bl 800b094 800a840: 2100 movs r1, #0 800a842: 6878 ldr r0, [r7, #4] 800a844: f000 fc26 bl 800b094 800a848: bf00 nop 800a84a: 3708 adds r7, #8 800a84c: 46bd mov sp, r7 800a84e: bd80 pop {r7, pc} 0800a850 : 800a850: b580 push {r7, lr} 800a852: b086 sub sp, #24 800a854: af00 add r7, sp, #0 800a856: 60f8 str r0, [r7, #12] 800a858: 60b9 str r1, [r7, #8] 800a85a: 607a str r2, [r7, #4] 800a85c: 2300 movs r3, #0 800a85e: 75fb strb r3, [r7, #23] 800a860: 68fb ldr r3, [r7, #12] 800a862: 2b00 cmp r3, #0 800a864: d042 beq.n 800a8ec 800a866: 68fb ldr r3, [r7, #12] 800a868: 613b str r3, [r7, #16] 800a86a: 6938 ldr r0, [r7, #16] 800a86c: f000 f842 bl 800a8f4 800a870: 4603 mov r3, r0 800a872: 3301 adds r3, #1 800a874: 005b lsls r3, r3, #1 800a876: f5b3 7f00 cmp.w r3, #512 @ 0x200 800a87a: d808 bhi.n 800a88e 800a87c: 6938 ldr r0, [r7, #16] 800a87e: f000 f839 bl 800a8f4 800a882: 4603 mov r3, r0 800a884: 3301 adds r3, #1 800a886: b29b uxth r3, r3 800a888: 005b lsls r3, r3, #1 800a88a: b29a uxth r2, r3 800a88c: e001 b.n 800a892 800a88e: f44f 7200 mov.w r2, #512 @ 0x200 800a892: 687b ldr r3, [r7, #4] 800a894: 801a strh r2, [r3, #0] 800a896: 7dfb ldrb r3, [r7, #23] 800a898: 68ba ldr r2, [r7, #8] 800a89a: 4413 add r3, r2 800a89c: 687a ldr r2, [r7, #4] 800a89e: 7812 ldrb r2, [r2, #0] 800a8a0: 701a strb r2, [r3, #0] 800a8a2: 7dfb ldrb r3, [r7, #23] 800a8a4: 3301 adds r3, #1 800a8a6: 75fb strb r3, [r7, #23] 800a8a8: 7dfb ldrb r3, [r7, #23] 800a8aa: 68ba ldr r2, [r7, #8] 800a8ac: 4413 add r3, r2 800a8ae: 2203 movs r2, #3 800a8b0: 701a strb r2, [r3, #0] 800a8b2: 7dfb ldrb r3, [r7, #23] 800a8b4: 3301 adds r3, #1 800a8b6: 75fb strb r3, [r7, #23] 800a8b8: e013 b.n 800a8e2 800a8ba: 7dfb ldrb r3, [r7, #23] 800a8bc: 68ba ldr r2, [r7, #8] 800a8be: 4413 add r3, r2 800a8c0: 693a ldr r2, [r7, #16] 800a8c2: 7812 ldrb r2, [r2, #0] 800a8c4: 701a strb r2, [r3, #0] 800a8c6: 693b ldr r3, [r7, #16] 800a8c8: 3301 adds r3, #1 800a8ca: 613b str r3, [r7, #16] 800a8cc: 7dfb ldrb r3, [r7, #23] 800a8ce: 3301 adds r3, #1 800a8d0: 75fb strb r3, [r7, #23] 800a8d2: 7dfb ldrb r3, [r7, #23] 800a8d4: 68ba ldr r2, [r7, #8] 800a8d6: 4413 add r3, r2 800a8d8: 2200 movs r2, #0 800a8da: 701a strb r2, [r3, #0] 800a8dc: 7dfb ldrb r3, [r7, #23] 800a8de: 3301 adds r3, #1 800a8e0: 75fb strb r3, [r7, #23] 800a8e2: 693b ldr r3, [r7, #16] 800a8e4: 781b ldrb r3, [r3, #0] 800a8e6: 2b00 cmp r3, #0 800a8e8: d1e7 bne.n 800a8ba 800a8ea: e000 b.n 800a8ee 800a8ec: bf00 nop 800a8ee: 3718 adds r7, #24 800a8f0: 46bd mov sp, r7 800a8f2: bd80 pop {r7, pc} 0800a8f4 : 800a8f4: b480 push {r7} 800a8f6: b085 sub sp, #20 800a8f8: af00 add r7, sp, #0 800a8fa: 6078 str r0, [r7, #4] 800a8fc: 2300 movs r3, #0 800a8fe: 73fb strb r3, [r7, #15] 800a900: 687b ldr r3, [r7, #4] 800a902: 60bb str r3, [r7, #8] 800a904: e005 b.n 800a912 800a906: 7bfb ldrb r3, [r7, #15] 800a908: 3301 adds r3, #1 800a90a: 73fb strb r3, [r7, #15] 800a90c: 68bb ldr r3, [r7, #8] 800a90e: 3301 adds r3, #1 800a910: 60bb str r3, [r7, #8] 800a912: 68bb ldr r3, [r7, #8] 800a914: 781b ldrb r3, [r3, #0] 800a916: 2b00 cmp r3, #0 800a918: d1f5 bne.n 800a906 800a91a: 7bfb ldrb r3, [r7, #15] 800a91c: 4618 mov r0, r3 800a91e: 3714 adds r7, #20 800a920: 46bd mov sp, r7 800a922: f85d 7b04 ldr.w r7, [sp], #4 800a926: 4770 bx lr 0800a928 : 800a928: b580 push {r7, lr} 800a92a: b084 sub sp, #16 800a92c: af00 add r7, sp, #0 800a92e: 60f8 str r0, [r7, #12] 800a930: 60b9 str r1, [r7, #8] 800a932: 607a str r2, [r7, #4] 800a934: 68fb ldr r3, [r7, #12] 800a936: 2202 movs r2, #2 800a938: f8c3 2294 str.w r2, [r3, #660] @ 0x294 800a93c: 68fb ldr r3, [r7, #12] 800a93e: 687a ldr r2, [r7, #4] 800a940: 615a str r2, [r3, #20] 800a942: 68fb ldr r3, [r7, #12] 800a944: 68ba ldr r2, [r7, #8] 800a946: 625a str r2, [r3, #36] @ 0x24 800a948: 68fb ldr r3, [r7, #12] 800a94a: 687a ldr r2, [r7, #4] 800a94c: 619a str r2, [r3, #24] 800a94e: 687b ldr r3, [r7, #4] 800a950: 68ba ldr r2, [r7, #8] 800a952: 2100 movs r1, #0 800a954: 68f8 ldr r0, [r7, #12] 800a956: f000 fc26 bl 800b1a6 800a95a: 2300 movs r3, #0 800a95c: 4618 mov r0, r3 800a95e: 3710 adds r7, #16 800a960: 46bd mov sp, r7 800a962: bd80 pop {r7, pc} 0800a964 : 800a964: b580 push {r7, lr} 800a966: b084 sub sp, #16 800a968: af00 add r7, sp, #0 800a96a: 60f8 str r0, [r7, #12] 800a96c: 60b9 str r1, [r7, #8] 800a96e: 607a str r2, [r7, #4] 800a970: 687b ldr r3, [r7, #4] 800a972: 68ba ldr r2, [r7, #8] 800a974: 2100 movs r1, #0 800a976: 68f8 ldr r0, [r7, #12] 800a978: f000 fc15 bl 800b1a6 800a97c: 2300 movs r3, #0 800a97e: 4618 mov r0, r3 800a980: 3710 adds r7, #16 800a982: 46bd mov sp, r7 800a984: bd80 pop {r7, pc} 0800a986 : 800a986: b580 push {r7, lr} 800a988: b084 sub sp, #16 800a98a: af00 add r7, sp, #0 800a98c: 60f8 str r0, [r7, #12] 800a98e: 60b9 str r1, [r7, #8] 800a990: 607a str r2, [r7, #4] 800a992: 687b ldr r3, [r7, #4] 800a994: 68ba ldr r2, [r7, #8] 800a996: 2100 movs r1, #0 800a998: 68f8 ldr r0, [r7, #12] 800a99a: f000 fc25 bl 800b1e8 800a99e: 2300 movs r3, #0 800a9a0: 4618 mov r0, r3 800a9a2: 3710 adds r7, #16 800a9a4: 46bd mov sp, r7 800a9a6: bd80 pop {r7, pc} 0800a9a8 : 800a9a8: b580 push {r7, lr} 800a9aa: b082 sub sp, #8 800a9ac: af00 add r7, sp, #0 800a9ae: 6078 str r0, [r7, #4] 800a9b0: 687b ldr r3, [r7, #4] 800a9b2: 2204 movs r2, #4 800a9b4: f8c3 2294 str.w r2, [r3, #660] @ 0x294 800a9b8: 2300 movs r3, #0 800a9ba: 2200 movs r2, #0 800a9bc: 2100 movs r1, #0 800a9be: 6878 ldr r0, [r7, #4] 800a9c0: f000 fbf1 bl 800b1a6 800a9c4: 2300 movs r3, #0 800a9c6: 4618 mov r0, r3 800a9c8: 3708 adds r7, #8 800a9ca: 46bd mov sp, r7 800a9cc: bd80 pop {r7, pc} 0800a9ce : 800a9ce: b580 push {r7, lr} 800a9d0: b082 sub sp, #8 800a9d2: af00 add r7, sp, #0 800a9d4: 6078 str r0, [r7, #4] 800a9d6: 687b ldr r3, [r7, #4] 800a9d8: 2205 movs r2, #5 800a9da: f8c3 2294 str.w r2, [r3, #660] @ 0x294 800a9de: 2300 movs r3, #0 800a9e0: 2200 movs r2, #0 800a9e2: 2100 movs r1, #0 800a9e4: 6878 ldr r0, [r7, #4] 800a9e6: f000 fbff bl 800b1e8 800a9ea: 2300 movs r3, #0 800a9ec: 4618 mov r0, r3 800a9ee: 3708 adds r7, #8 800a9f0: 46bd mov sp, r7 800a9f2: bd80 pop {r7, pc} 0800a9f4 : 800a9f4: b580 push {r7, lr} 800a9f6: af00 add r7, sp, #0 800a9f8: 2200 movs r2, #0 800a9fa: 490e ldr r1, [pc, #56] @ (800aa34 ) 800a9fc: 480e ldr r0, [pc, #56] @ (800aa38 ) 800a9fe: f7fe fcd1 bl 80093a4 800aa02: 4603 mov r3, r0 800aa04: 2b00 cmp r3, #0 800aa06: d001 beq.n 800aa0c 800aa08: f7f6 fc1e bl 8001248 800aa0c: 490b ldr r1, [pc, #44] @ (800aa3c ) 800aa0e: 480a ldr r0, [pc, #40] @ (800aa38 ) 800aa10: f7fe fcf8 bl 8009404 800aa14: 4603 mov r3, r0 800aa16: 2b00 cmp r3, #0 800aa18: d001 beq.n 800aa1e 800aa1a: f7f6 fc15 bl 8001248 800aa1e: 4806 ldr r0, [pc, #24] @ (800aa38 ) 800aa20: f7fe fd26 bl 8009470 800aa24: 4603 mov r3, r0 800aa26: 2b00 cmp r3, #0 800aa28: d001 beq.n 800aa2e 800aa2a: f7f6 fc0d bl 8001248 800aa2e: bf00 nop 800aa30: bd80 pop {r7, pc} 800aa32: bf00 nop 800aa34: 20000140 .word 0x20000140 800aa38: 20000d88 .word 0x20000d88 800aa3c: 2000009c .word 0x2000009c 0800aa40 : 800aa40: b480 push {r7} 800aa42: b083 sub sp, #12 800aa44: af00 add r7, sp, #0 800aa46: 4603 mov r3, r0 800aa48: 6039 str r1, [r7, #0] 800aa4a: 71fb strb r3, [r7, #7] 800aa4c: 683b ldr r3, [r7, #0] 800aa4e: 2212 movs r2, #18 800aa50: 801a strh r2, [r3, #0] 800aa52: 4b03 ldr r3, [pc, #12] @ (800aa60 ) 800aa54: 4618 mov r0, r3 800aa56: 370c adds r7, #12 800aa58: 46bd mov sp, r7 800aa5a: f85d 7b04 ldr.w r7, [sp], #4 800aa5e: 4770 bx lr 800aa60: 20000160 .word 0x20000160 0800aa64 : 800aa64: b480 push {r7} 800aa66: b083 sub sp, #12 800aa68: af00 add r7, sp, #0 800aa6a: 4603 mov r3, r0 800aa6c: 6039 str r1, [r7, #0] 800aa6e: 71fb strb r3, [r7, #7] 800aa70: 683b ldr r3, [r7, #0] 800aa72: 2204 movs r2, #4 800aa74: 801a strh r2, [r3, #0] 800aa76: 4b03 ldr r3, [pc, #12] @ (800aa84 ) 800aa78: 4618 mov r0, r3 800aa7a: 370c adds r7, #12 800aa7c: 46bd mov sp, r7 800aa7e: f85d 7b04 ldr.w r7, [sp], #4 800aa82: 4770 bx lr 800aa84: 20000180 .word 0x20000180 0800aa88 : 800aa88: b580 push {r7, lr} 800aa8a: b082 sub sp, #8 800aa8c: af00 add r7, sp, #0 800aa8e: 4603 mov r3, r0 800aa90: 6039 str r1, [r7, #0] 800aa92: 71fb strb r3, [r7, #7] 800aa94: 79fb ldrb r3, [r7, #7] 800aa96: 2b00 cmp r3, #0 800aa98: d105 bne.n 800aaa6 800aa9a: 683a ldr r2, [r7, #0] 800aa9c: 4907 ldr r1, [pc, #28] @ (800aabc ) 800aa9e: 4808 ldr r0, [pc, #32] @ (800aac0 ) 800aaa0: f7ff fed6 bl 800a850 800aaa4: e004 b.n 800aab0 800aaa6: 683a ldr r2, [r7, #0] 800aaa8: 4904 ldr r1, [pc, #16] @ (800aabc ) 800aaaa: 4805 ldr r0, [pc, #20] @ (800aac0 ) 800aaac: f7ff fed0 bl 800a850 800aab0: 4b02 ldr r3, [pc, #8] @ (800aabc ) 800aab2: 4618 mov r0, r3 800aab4: 3708 adds r7, #8 800aab6: 46bd mov sp, r7 800aab8: bd80 pop {r7, pc} 800aaba: bf00 nop 800aabc: 20001064 .word 0x20001064 800aac0: 0800b3dc .word 0x0800b3dc 0800aac4 : 800aac4: b580 push {r7, lr} 800aac6: b082 sub sp, #8 800aac8: af00 add r7, sp, #0 800aaca: 4603 mov r3, r0 800aacc: 6039 str r1, [r7, #0] 800aace: 71fb strb r3, [r7, #7] 800aad0: 683a ldr r2, [r7, #0] 800aad2: 4904 ldr r1, [pc, #16] @ (800aae4 ) 800aad4: 4804 ldr r0, [pc, #16] @ (800aae8 ) 800aad6: f7ff febb bl 800a850 800aada: 4b02 ldr r3, [pc, #8] @ (800aae4 ) 800aadc: 4618 mov r0, r3 800aade: 3708 adds r7, #8 800aae0: 46bd mov sp, r7 800aae2: bd80 pop {r7, pc} 800aae4: 20001064 .word 0x20001064 800aae8: 0800b3f0 .word 0x0800b3f0 0800aaec : 800aaec: b580 push {r7, lr} 800aaee: b082 sub sp, #8 800aaf0: af00 add r7, sp, #0 800aaf2: 4603 mov r3, r0 800aaf4: 6039 str r1, [r7, #0] 800aaf6: 71fb strb r3, [r7, #7] 800aaf8: 683b ldr r3, [r7, #0] 800aafa: 221a movs r2, #26 800aafc: 801a strh r2, [r3, #0] 800aafe: f000 f855 bl 800abac 800ab02: 4b02 ldr r3, [pc, #8] @ (800ab0c ) 800ab04: 4618 mov r0, r3 800ab06: 3708 adds r7, #8 800ab08: 46bd mov sp, r7 800ab0a: bd80 pop {r7, pc} 800ab0c: 20000184 .word 0x20000184 0800ab10 : 800ab10: b580 push {r7, lr} 800ab12: b082 sub sp, #8 800ab14: af00 add r7, sp, #0 800ab16: 4603 mov r3, r0 800ab18: 6039 str r1, [r7, #0] 800ab1a: 71fb strb r3, [r7, #7] 800ab1c: 79fb ldrb r3, [r7, #7] 800ab1e: 2b00 cmp r3, #0 800ab20: d105 bne.n 800ab2e 800ab22: 683a ldr r2, [r7, #0] 800ab24: 4907 ldr r1, [pc, #28] @ (800ab44 ) 800ab26: 4808 ldr r0, [pc, #32] @ (800ab48 ) 800ab28: f7ff fe92 bl 800a850 800ab2c: e004 b.n 800ab38 800ab2e: 683a ldr r2, [r7, #0] 800ab30: 4904 ldr r1, [pc, #16] @ (800ab44 ) 800ab32: 4805 ldr r0, [pc, #20] @ (800ab48 ) 800ab34: f7ff fe8c bl 800a850 800ab38: 4b02 ldr r3, [pc, #8] @ (800ab44 ) 800ab3a: 4618 mov r0, r3 800ab3c: 3708 adds r7, #8 800ab3e: 46bd mov sp, r7 800ab40: bd80 pop {r7, pc} 800ab42: bf00 nop 800ab44: 20001064 .word 0x20001064 800ab48: 0800b3fc .word 0x0800b3fc 0800ab4c : 800ab4c: b580 push {r7, lr} 800ab4e: b082 sub sp, #8 800ab50: af00 add r7, sp, #0 800ab52: 4603 mov r3, r0 800ab54: 6039 str r1, [r7, #0] 800ab56: 71fb strb r3, [r7, #7] 800ab58: 79fb ldrb r3, [r7, #7] 800ab5a: 2b00 cmp r3, #0 800ab5c: d105 bne.n 800ab6a 800ab5e: 683a ldr r2, [r7, #0] 800ab60: 4907 ldr r1, [pc, #28] @ (800ab80 ) 800ab62: 4808 ldr r0, [pc, #32] @ (800ab84 ) 800ab64: f7ff fe74 bl 800a850 800ab68: e004 b.n 800ab74 800ab6a: 683a ldr r2, [r7, #0] 800ab6c: 4904 ldr r1, [pc, #16] @ (800ab80 ) 800ab6e: 4805 ldr r0, [pc, #20] @ (800ab84 ) 800ab70: f7ff fe6e bl 800a850 800ab74: 4b02 ldr r3, [pc, #8] @ (800ab80 ) 800ab76: 4618 mov r0, r3 800ab78: 3708 adds r7, #8 800ab7a: 46bd mov sp, r7 800ab7c: bd80 pop {r7, pc} 800ab7e: bf00 nop 800ab80: 20001064 .word 0x20001064 800ab84: 0800b408 .word 0x0800b408 0800ab88 : 800ab88: b480 push {r7} 800ab8a: b083 sub sp, #12 800ab8c: af00 add r7, sp, #0 800ab8e: 4603 mov r3, r0 800ab90: 6039 str r1, [r7, #0] 800ab92: 71fb strb r3, [r7, #7] 800ab94: 683b ldr r3, [r7, #0] 800ab96: 220c movs r2, #12 800ab98: 801a strh r2, [r3, #0] 800ab9a: 4b03 ldr r3, [pc, #12] @ (800aba8 ) 800ab9c: 4618 mov r0, r3 800ab9e: 370c adds r7, #12 800aba0: 46bd mov sp, r7 800aba2: f85d 7b04 ldr.w r7, [sp], #4 800aba6: 4770 bx lr 800aba8: 20000174 .word 0x20000174 0800abac : 800abac: b580 push {r7, lr} 800abae: b084 sub sp, #16 800abb0: af00 add r7, sp, #0 800abb2: 4b0f ldr r3, [pc, #60] @ (800abf0 ) 800abb4: 681b ldr r3, [r3, #0] 800abb6: 60fb str r3, [r7, #12] 800abb8: 4b0e ldr r3, [pc, #56] @ (800abf4 ) 800abba: 681b ldr r3, [r3, #0] 800abbc: 60bb str r3, [r7, #8] 800abbe: 4b0e ldr r3, [pc, #56] @ (800abf8 ) 800abc0: 681b ldr r3, [r3, #0] 800abc2: 607b str r3, [r7, #4] 800abc4: 68fa ldr r2, [r7, #12] 800abc6: 687b ldr r3, [r7, #4] 800abc8: 4413 add r3, r2 800abca: 60fb str r3, [r7, #12] 800abcc: 68fb ldr r3, [r7, #12] 800abce: 2b00 cmp r3, #0 800abd0: d009 beq.n 800abe6 800abd2: 2208 movs r2, #8 800abd4: 4909 ldr r1, [pc, #36] @ (800abfc ) 800abd6: 68f8 ldr r0, [r7, #12] 800abd8: f000 f814 bl 800ac04 800abdc: 2204 movs r2, #4 800abde: 4908 ldr r1, [pc, #32] @ (800ac00 ) 800abe0: 68b8 ldr r0, [r7, #8] 800abe2: f000 f80f bl 800ac04 800abe6: bf00 nop 800abe8: 3710 adds r7, #16 800abea: 46bd mov sp, r7 800abec: bd80 pop {r7, pc} 800abee: bf00 nop 800abf0: 1fff7a10 .word 0x1fff7a10 800abf4: 1fff7a14 .word 0x1fff7a14 800abf8: 1fff7a18 .word 0x1fff7a18 800abfc: 20000186 .word 0x20000186 800ac00: 20000196 .word 0x20000196 0800ac04 : 800ac04: b480 push {r7} 800ac06: b087 sub sp, #28 800ac08: af00 add r7, sp, #0 800ac0a: 60f8 str r0, [r7, #12] 800ac0c: 60b9 str r1, [r7, #8] 800ac0e: 4613 mov r3, r2 800ac10: 71fb strb r3, [r7, #7] 800ac12: 2300 movs r3, #0 800ac14: 75fb strb r3, [r7, #23] 800ac16: 2300 movs r3, #0 800ac18: 75fb strb r3, [r7, #23] 800ac1a: e027 b.n 800ac6c 800ac1c: 68fb ldr r3, [r7, #12] 800ac1e: 0f1b lsrs r3, r3, #28 800ac20: 2b09 cmp r3, #9 800ac22: d80b bhi.n 800ac3c 800ac24: 68fb ldr r3, [r7, #12] 800ac26: 0f1b lsrs r3, r3, #28 800ac28: b2da uxtb r2, r3 800ac2a: 7dfb ldrb r3, [r7, #23] 800ac2c: 005b lsls r3, r3, #1 800ac2e: 4619 mov r1, r3 800ac30: 68bb ldr r3, [r7, #8] 800ac32: 440b add r3, r1 800ac34: 3230 adds r2, #48 @ 0x30 800ac36: b2d2 uxtb r2, r2 800ac38: 701a strb r2, [r3, #0] 800ac3a: e00a b.n 800ac52 800ac3c: 68fb ldr r3, [r7, #12] 800ac3e: 0f1b lsrs r3, r3, #28 800ac40: b2da uxtb r2, r3 800ac42: 7dfb ldrb r3, [r7, #23] 800ac44: 005b lsls r3, r3, #1 800ac46: 4619 mov r1, r3 800ac48: 68bb ldr r3, [r7, #8] 800ac4a: 440b add r3, r1 800ac4c: 3237 adds r2, #55 @ 0x37 800ac4e: b2d2 uxtb r2, r2 800ac50: 701a strb r2, [r3, #0] 800ac52: 68fb ldr r3, [r7, #12] 800ac54: 011b lsls r3, r3, #4 800ac56: 60fb str r3, [r7, #12] 800ac58: 7dfb ldrb r3, [r7, #23] 800ac5a: 005b lsls r3, r3, #1 800ac5c: 3301 adds r3, #1 800ac5e: 68ba ldr r2, [r7, #8] 800ac60: 4413 add r3, r2 800ac62: 2200 movs r2, #0 800ac64: 701a strb r2, [r3, #0] 800ac66: 7dfb ldrb r3, [r7, #23] 800ac68: 3301 adds r3, #1 800ac6a: 75fb strb r3, [r7, #23] 800ac6c: 7dfa ldrb r2, [r7, #23] 800ac6e: 79fb ldrb r3, [r7, #7] 800ac70: 429a cmp r2, r3 800ac72: d3d3 bcc.n 800ac1c 800ac74: bf00 nop 800ac76: bf00 nop 800ac78: 371c adds r7, #28 800ac7a: 46bd mov sp, r7 800ac7c: f85d 7b04 ldr.w r7, [sp], #4 800ac80: 4770 bx lr ... 0800ac84 : 800ac84: b580 push {r7, lr} 800ac86: b0a0 sub sp, #128 @ 0x80 800ac88: af00 add r7, sp, #0 800ac8a: 6078 str r0, [r7, #4] 800ac8c: f107 036c add.w r3, r7, #108 @ 0x6c 800ac90: 2200 movs r2, #0 800ac92: 601a str r2, [r3, #0] 800ac94: 605a str r2, [r3, #4] 800ac96: 609a str r2, [r3, #8] 800ac98: 60da str r2, [r3, #12] 800ac9a: 611a str r2, [r3, #16] 800ac9c: f107 0310 add.w r3, r7, #16 800aca0: 225c movs r2, #92 @ 0x5c 800aca2: 2100 movs r1, #0 800aca4: 4618 mov r0, r3 800aca6: f000 fb53 bl 800b350 800acaa: 687b ldr r3, [r7, #4] 800acac: 681b ldr r3, [r3, #0] 800acae: f1b3 4fa0 cmp.w r3, #1342177280 @ 0x50000000 800acb2: d149 bne.n 800ad48 800acb4: f44f 7380 mov.w r3, #256 @ 0x100 800acb8: 613b str r3, [r7, #16] 800acba: 2300 movs r3, #0 800acbc: 667b str r3, [r7, #100] @ 0x64 800acbe: f107 0310 add.w r3, r7, #16 800acc2: 4618 mov r0, r3 800acc4: f7f9 fd1e bl 8004704 800acc8: 4603 mov r3, r0 800acca: 2b00 cmp r3, #0 800accc: d001 beq.n 800acd2 800acce: f7f6 fabb bl 8001248 800acd2: 2300 movs r3, #0 800acd4: 60fb str r3, [r7, #12] 800acd6: 4b1e ldr r3, [pc, #120] @ (800ad50 ) 800acd8: 6b1b ldr r3, [r3, #48] @ 0x30 800acda: 4a1d ldr r2, [pc, #116] @ (800ad50 ) 800acdc: f043 0301 orr.w r3, r3, #1 800ace0: 6313 str r3, [r2, #48] @ 0x30 800ace2: 4b1b ldr r3, [pc, #108] @ (800ad50 ) 800ace4: 6b1b ldr r3, [r3, #48] @ 0x30 800ace6: f003 0301 and.w r3, r3, #1 800acea: 60fb str r3, [r7, #12] 800acec: 68fb ldr r3, [r7, #12] 800acee: f44f 53c0 mov.w r3, #6144 @ 0x1800 800acf2: 66fb str r3, [r7, #108] @ 0x6c 800acf4: 2302 movs r3, #2 800acf6: 673b str r3, [r7, #112] @ 0x70 800acf8: 2300 movs r3, #0 800acfa: 677b str r3, [r7, #116] @ 0x74 800acfc: 2303 movs r3, #3 800acfe: 67bb str r3, [r7, #120] @ 0x78 800ad00: 230a movs r3, #10 800ad02: 67fb str r3, [r7, #124] @ 0x7c 800ad04: f107 036c add.w r3, r7, #108 @ 0x6c 800ad08: 4619 mov r1, r3 800ad0a: 4812 ldr r0, [pc, #72] @ (800ad54 ) 800ad0c: f7f7 fe50 bl 80029b0 800ad10: 4b0f ldr r3, [pc, #60] @ (800ad50 ) 800ad12: 6b5b ldr r3, [r3, #52] @ 0x34 800ad14: 4a0e ldr r2, [pc, #56] @ (800ad50 ) 800ad16: f043 0380 orr.w r3, r3, #128 @ 0x80 800ad1a: 6353 str r3, [r2, #52] @ 0x34 800ad1c: 2300 movs r3, #0 800ad1e: 60bb str r3, [r7, #8] 800ad20: 4b0b ldr r3, [pc, #44] @ (800ad50 ) 800ad22: 6c5b ldr r3, [r3, #68] @ 0x44 800ad24: 4a0a ldr r2, [pc, #40] @ (800ad50 ) 800ad26: f443 4380 orr.w r3, r3, #16384 @ 0x4000 800ad2a: 6453 str r3, [r2, #68] @ 0x44 800ad2c: 4b08 ldr r3, [pc, #32] @ (800ad50 ) 800ad2e: 6c5b ldr r3, [r3, #68] @ 0x44 800ad30: f403 4380 and.w r3, r3, #16384 @ 0x4000 800ad34: 60bb str r3, [r7, #8] 800ad36: 68bb ldr r3, [r7, #8] 800ad38: 2200 movs r2, #0 800ad3a: 2100 movs r1, #0 800ad3c: 2043 movs r0, #67 @ 0x43 800ad3e: f7f7 f9fe bl 800213e 800ad42: 2043 movs r0, #67 @ 0x43 800ad44: f7f7 fa17 bl 8002176 800ad48: bf00 nop 800ad4a: 3780 adds r7, #128 @ 0x80 800ad4c: 46bd mov sp, r7 800ad4e: bd80 pop {r7, pc} 800ad50: 40023800 .word 0x40023800 800ad54: 40020000 .word 0x40020000 0800ad58 : 800ad58: b580 push {r7, lr} 800ad5a: b082 sub sp, #8 800ad5c: af00 add r7, sp, #0 800ad5e: 6078 str r0, [r7, #4] 800ad60: 687b ldr r3, [r7, #4] 800ad62: f8d3 24e0 ldr.w r2, [r3, #1248] @ 0x4e0 800ad66: 687b ldr r3, [r7, #4] 800ad68: f203 439c addw r3, r3, #1180 @ 0x49c 800ad6c: 4619 mov r1, r3 800ad6e: 4610 mov r0, r2 800ad70: f7fe fbcb bl 800950a 800ad74: bf00 nop 800ad76: 3708 adds r7, #8 800ad78: 46bd mov sp, r7 800ad7a: bd80 pop {r7, pc} 0800ad7c : 800ad7c: b580 push {r7, lr} 800ad7e: b082 sub sp, #8 800ad80: af00 add r7, sp, #0 800ad82: 6078 str r0, [r7, #4] 800ad84: 460b mov r3, r1 800ad86: 70fb strb r3, [r7, #3] 800ad88: 687b ldr r3, [r7, #4] 800ad8a: f8d3 04e0 ldr.w r0, [r3, #1248] @ 0x4e0 800ad8e: 78fa ldrb r2, [r7, #3] 800ad90: 6879 ldr r1, [r7, #4] 800ad92: 4613 mov r3, r2 800ad94: 00db lsls r3, r3, #3 800ad96: 4413 add r3, r2 800ad98: 009b lsls r3, r3, #2 800ad9a: 440b add r3, r1 800ad9c: f503 7318 add.w r3, r3, #608 @ 0x260 800ada0: 681a ldr r2, [r3, #0] 800ada2: 78fb ldrb r3, [r7, #3] 800ada4: 4619 mov r1, r3 800ada6: f7fe fc05 bl 80095b4 800adaa: bf00 nop 800adac: 3708 adds r7, #8 800adae: 46bd mov sp, r7 800adb0: bd80 pop {r7, pc} 0800adb2 : 800adb2: b580 push {r7, lr} 800adb4: b082 sub sp, #8 800adb6: af00 add r7, sp, #0 800adb8: 6078 str r0, [r7, #4] 800adba: 460b mov r3, r1 800adbc: 70fb strb r3, [r7, #3] 800adbe: 687b ldr r3, [r7, #4] 800adc0: f8d3 04e0 ldr.w r0, [r3, #1248] @ 0x4e0 800adc4: 78fa ldrb r2, [r7, #3] 800adc6: 6879 ldr r1, [r7, #4] 800adc8: 4613 mov r3, r2 800adca: 00db lsls r3, r3, #3 800adcc: 4413 add r3, r2 800adce: 009b lsls r3, r3, #2 800add0: 440b add r3, r1 800add2: 3320 adds r3, #32 800add4: 681a ldr r2, [r3, #0] 800add6: 78fb ldrb r3, [r7, #3] 800add8: 4619 mov r1, r3 800adda: f7fe fca7 bl 800972c 800adde: bf00 nop 800ade0: 3708 adds r7, #8 800ade2: 46bd mov sp, r7 800ade4: bd80 pop {r7, pc} 0800ade6 : 800ade6: b580 push {r7, lr} 800ade8: b082 sub sp, #8 800adea: af00 add r7, sp, #0 800adec: 6078 str r0, [r7, #4] 800adee: 687b ldr r3, [r7, #4] 800adf0: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800adf4: 4618 mov r0, r3 800adf6: f7fe fdeb bl 80099d0 800adfa: bf00 nop 800adfc: 3708 adds r7, #8 800adfe: 46bd mov sp, r7 800ae00: bd80 pop {r7, pc} 0800ae02 : 800ae02: b580 push {r7, lr} 800ae04: b084 sub sp, #16 800ae06: af00 add r7, sp, #0 800ae08: 6078 str r0, [r7, #4] 800ae0a: 2301 movs r3, #1 800ae0c: 73fb strb r3, [r7, #15] 800ae0e: 687b ldr r3, [r7, #4] 800ae10: 79db ldrb r3, [r3, #7] 800ae12: 2b00 cmp r3, #0 800ae14: d102 bne.n 800ae1c 800ae16: 2300 movs r3, #0 800ae18: 73fb strb r3, [r7, #15] 800ae1a: e008 b.n 800ae2e 800ae1c: 687b ldr r3, [r7, #4] 800ae1e: 79db ldrb r3, [r3, #7] 800ae20: 2b02 cmp r3, #2 800ae22: d102 bne.n 800ae2a 800ae24: 2301 movs r3, #1 800ae26: 73fb strb r3, [r7, #15] 800ae28: e001 b.n 800ae2e 800ae2a: f7f6 fa0d bl 8001248 800ae2e: 687b ldr r3, [r7, #4] 800ae30: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800ae34: 7bfa ldrb r2, [r7, #15] 800ae36: 4611 mov r1, r2 800ae38: 4618 mov r0, r3 800ae3a: f7fe fd85 bl 8009948 800ae3e: 687b ldr r3, [r7, #4] 800ae40: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800ae44: 4618 mov r0, r3 800ae46: f7fe fd2c bl 80098a2 800ae4a: bf00 nop 800ae4c: 3710 adds r7, #16 800ae4e: 46bd mov sp, r7 800ae50: bd80 pop {r7, pc} ... 0800ae54 : 800ae54: b580 push {r7, lr} 800ae56: b082 sub sp, #8 800ae58: af00 add r7, sp, #0 800ae5a: 6078 str r0, [r7, #4] 800ae5c: 687b ldr r3, [r7, #4] 800ae5e: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800ae62: 4618 mov r0, r3 800ae64: f7fe fd80 bl 8009968 800ae68: 687b ldr r3, [r7, #4] 800ae6a: 681b ldr r3, [r3, #0] 800ae6c: f503 6360 add.w r3, r3, #3584 @ 0xe00 800ae70: 681b ldr r3, [r3, #0] 800ae72: 687a ldr r2, [r7, #4] 800ae74: 6812 ldr r2, [r2, #0] 800ae76: f502 6260 add.w r2, r2, #3584 @ 0xe00 800ae7a: f043 0301 orr.w r3, r3, #1 800ae7e: 6013 str r3, [r2, #0] 800ae80: 687b ldr r3, [r7, #4] 800ae82: 7adb ldrb r3, [r3, #11] 800ae84: 2b00 cmp r3, #0 800ae86: d005 beq.n 800ae94 800ae88: 4b04 ldr r3, [pc, #16] @ (800ae9c ) 800ae8a: 691b ldr r3, [r3, #16] 800ae8c: 4a03 ldr r2, [pc, #12] @ (800ae9c ) 800ae8e: f043 0306 orr.w r3, r3, #6 800ae92: 6113 str r3, [r2, #16] 800ae94: bf00 nop 800ae96: 3708 adds r7, #8 800ae98: 46bd mov sp, r7 800ae9a: bd80 pop {r7, pc} 800ae9c: e000ed00 .word 0xe000ed00 0800aea0 : 800aea0: b580 push {r7, lr} 800aea2: b082 sub sp, #8 800aea4: af00 add r7, sp, #0 800aea6: 6078 str r0, [r7, #4] 800aea8: 687b ldr r3, [r7, #4] 800aeaa: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800aeae: 4618 mov r0, r3 800aeb0: f7fe fd76 bl 80099a0 800aeb4: bf00 nop 800aeb6: 3708 adds r7, #8 800aeb8: 46bd mov sp, r7 800aeba: bd80 pop {r7, pc} 0800aebc : 800aebc: b580 push {r7, lr} 800aebe: b082 sub sp, #8 800aec0: af00 add r7, sp, #0 800aec2: 6078 str r0, [r7, #4] 800aec4: 460b mov r3, r1 800aec6: 70fb strb r3, [r7, #3] 800aec8: 687b ldr r3, [r7, #4] 800aeca: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800aece: 78fa ldrb r2, [r7, #3] 800aed0: 4611 mov r1, r2 800aed2: 4618 mov r0, r3 800aed4: f7fe fdce bl 8009a74 800aed8: bf00 nop 800aeda: 3708 adds r7, #8 800aedc: 46bd mov sp, r7 800aede: bd80 pop {r7, pc} 0800aee0 : 800aee0: b580 push {r7, lr} 800aee2: b082 sub sp, #8 800aee4: af00 add r7, sp, #0 800aee6: 6078 str r0, [r7, #4] 800aee8: 460b mov r3, r1 800aeea: 70fb strb r3, [r7, #3] 800aeec: 687b ldr r3, [r7, #4] 800aeee: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800aef2: 78fa ldrb r2, [r7, #3] 800aef4: 4611 mov r1, r2 800aef6: 4618 mov r0, r3 800aef8: f7fe fd8a bl 8009a10 800aefc: bf00 nop 800aefe: 3708 adds r7, #8 800af00: 46bd mov sp, r7 800af02: bd80 pop {r7, pc} 0800af04 : 800af04: b580 push {r7, lr} 800af06: b082 sub sp, #8 800af08: af00 add r7, sp, #0 800af0a: 6078 str r0, [r7, #4] 800af0c: 687b ldr r3, [r7, #4] 800af0e: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800af12: 4618 mov r0, r3 800af14: f7fe fde0 bl 8009ad8 800af18: bf00 nop 800af1a: 3708 adds r7, #8 800af1c: 46bd mov sp, r7 800af1e: bd80 pop {r7, pc} 0800af20 : 800af20: b580 push {r7, lr} 800af22: b082 sub sp, #8 800af24: af00 add r7, sp, #0 800af26: 6078 str r0, [r7, #4] 800af28: 687b ldr r3, [r7, #4] 800af2a: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800af2e: 4618 mov r0, r3 800af30: f7fe fddd bl 8009aee 800af34: bf00 nop 800af36: 3708 adds r7, #8 800af38: 46bd mov sp, r7 800af3a: bd80 pop {r7, pc} 0800af3c : 800af3c: b580 push {r7, lr} 800af3e: b082 sub sp, #8 800af40: af00 add r7, sp, #0 800af42: 6078 str r0, [r7, #4] 800af44: 687b ldr r3, [r7, #4] 800af46: 781b ldrb r3, [r3, #0] 800af48: 2b00 cmp r3, #0 800af4a: d13c bne.n 800afc6 800af4c: 4a20 ldr r2, [pc, #128] @ (800afd0 ) 800af4e: 687b ldr r3, [r7, #4] 800af50: f8c2 34e0 str.w r3, [r2, #1248] @ 0x4e0 800af54: 687b ldr r3, [r7, #4] 800af56: 4a1e ldr r2, [pc, #120] @ (800afd0 ) 800af58: f8c3 22c8 str.w r2, [r3, #712] @ 0x2c8 800af5c: 4b1c ldr r3, [pc, #112] @ (800afd0 ) 800af5e: f04f 42a0 mov.w r2, #1342177280 @ 0x50000000 800af62: 601a str r2, [r3, #0] 800af64: 4b1a ldr r3, [pc, #104] @ (800afd0 ) 800af66: 2206 movs r2, #6 800af68: 711a strb r2, [r3, #4] 800af6a: 4b19 ldr r3, [pc, #100] @ (800afd0 ) 800af6c: 2202 movs r2, #2 800af6e: 71da strb r2, [r3, #7] 800af70: 4b17 ldr r3, [pc, #92] @ (800afd0 ) 800af72: 2200 movs r2, #0 800af74: 719a strb r2, [r3, #6] 800af76: 4b16 ldr r3, [pc, #88] @ (800afd0 ) 800af78: 2202 movs r2, #2 800af7a: 725a strb r2, [r3, #9] 800af7c: 4b14 ldr r3, [pc, #80] @ (800afd0 ) 800af7e: 2200 movs r2, #0 800af80: 729a strb r2, [r3, #10] 800af82: 4b13 ldr r3, [pc, #76] @ (800afd0 ) 800af84: 2200 movs r2, #0 800af86: 72da strb r2, [r3, #11] 800af88: 4b11 ldr r3, [pc, #68] @ (800afd0 ) 800af8a: 2200 movs r2, #0 800af8c: 731a strb r2, [r3, #12] 800af8e: 4b10 ldr r3, [pc, #64] @ (800afd0 ) 800af90: 2200 movs r2, #0 800af92: 739a strb r2, [r3, #14] 800af94: 4b0e ldr r3, [pc, #56] @ (800afd0 ) 800af96: 2200 movs r2, #0 800af98: 73da strb r2, [r3, #15] 800af9a: 480d ldr r0, [pc, #52] @ (800afd0 ) 800af9c: f7f8 f812 bl 8002fc4 800afa0: 4603 mov r3, r0 800afa2: 2b00 cmp r3, #0 800afa4: d001 beq.n 800afaa 800afa6: f7f6 f94f bl 8001248 800afaa: 2180 movs r1, #128 @ 0x80 800afac: 4808 ldr r0, [pc, #32] @ (800afd0 ) 800afae: f7f9 fa5a bl 8004466 800afb2: 2240 movs r2, #64 @ 0x40 800afb4: 2100 movs r1, #0 800afb6: 4806 ldr r0, [pc, #24] @ (800afd0 ) 800afb8: f7f9 fa0e bl 80043d8 800afbc: 2280 movs r2, #128 @ 0x80 800afbe: 2101 movs r1, #1 800afc0: 4803 ldr r0, [pc, #12] @ (800afd0 ) 800afc2: f7f9 fa09 bl 80043d8 800afc6: 2300 movs r3, #0 800afc8: 4618 mov r0, r3 800afca: 3708 adds r7, #8 800afcc: 46bd mov sp, r7 800afce: bd80 pop {r7, pc} 800afd0: 20001264 .word 0x20001264 0800afd4 : 800afd4: b580 push {r7, lr} 800afd6: b084 sub sp, #16 800afd8: af00 add r7, sp, #0 800afda: 6078 str r0, [r7, #4] 800afdc: 2300 movs r3, #0 800afde: 73fb strb r3, [r7, #15] 800afe0: 2300 movs r3, #0 800afe2: 73bb strb r3, [r7, #14] 800afe4: 687b ldr r3, [r7, #4] 800afe6: f8d3 32c8 ldr.w r3, [r3, #712] @ 0x2c8 800afea: 4618 mov r0, r3 800afec: f7f8 f900 bl 80031f0 800aff0: 4603 mov r3, r0 800aff2: 73fb strb r3, [r7, #15] 800aff4: 7bfb ldrb r3, [r7, #15] 800aff6: 4618 mov r0, r3 800aff8: f000 f97e bl 800b2f8 800affc: 4603 mov r3, r0 800affe: 73bb strb r3, [r7, #14] 800b000: 7bbb ldrb r3, [r7, #14] 800b002: 4618 mov r0, r3 800b004: 3710 adds r7, #16 800b006: 46bd mov sp, r7 800b008: bd80 pop {r7, pc} 0800b00a : 800b00a: b580 push {r7, lr} 800b00c: b084 sub sp, #16 800b00e: af00 add r7, sp, #0 800b010: 6078 str r0, [r7, #4] 800b012: 4608 mov r0, r1 800b014: 4611 mov r1, r2 800b016: 461a mov r2, r3 800b018: 4603 mov r3, r0 800b01a: 70fb strb r3, [r7, #3] 800b01c: 460b mov r3, r1 800b01e: 70bb strb r3, [r7, #2] 800b020: 4613 mov r3, r2 800b022: 803b strh r3, [r7, #0] 800b024: 2300 movs r3, #0 800b026: 73fb strb r3, [r7, #15] 800b028: 2300 movs r3, #0 800b02a: 73bb strb r3, [r7, #14] 800b02c: 687b ldr r3, [r7, #4] 800b02e: f8d3 02c8 ldr.w r0, [r3, #712] @ 0x2c8 800b032: 78bb ldrb r3, [r7, #2] 800b034: 883a ldrh r2, [r7, #0] 800b036: 78f9 ldrb r1, [r7, #3] 800b038: f7f8 fe01 bl 8003c3e 800b03c: 4603 mov r3, r0 800b03e: 73fb strb r3, [r7, #15] 800b040: 7bfb ldrb r3, [r7, #15] 800b042: 4618 mov r0, r3 800b044: f000 f958 bl 800b2f8 800b048: 4603 mov r3, r0 800b04a: 73bb strb r3, [r7, #14] 800b04c: 7bbb ldrb r3, [r7, #14] 800b04e: 4618 mov r0, r3 800b050: 3710 adds r7, #16 800b052: 46bd mov sp, r7 800b054: bd80 pop {r7, pc} 0800b056 : 800b056: b580 push {r7, lr} 800b058: b084 sub sp, #16 800b05a: af00 add r7, sp, #0 800b05c: 6078 str r0, [r7, #4] 800b05e: 460b mov r3, r1 800b060: 70fb strb r3, [r7, #3] 800b062: 2300 movs r3, #0 800b064: 73fb strb r3, [r7, #15] 800b066: 2300 movs r3, #0 800b068: 73bb strb r3, [r7, #14] 800b06a: 687b ldr r3, [r7, #4] 800b06c: f8d3 32c8 ldr.w r3, [r3, #712] @ 0x2c8 800b070: 78fa ldrb r2, [r7, #3] 800b072: 4611 mov r1, r2 800b074: 4618 mov r0, r3 800b076: f7f8 fe4c bl 8003d12 800b07a: 4603 mov r3, r0 800b07c: 73fb strb r3, [r7, #15] 800b07e: 7bfb ldrb r3, [r7, #15] 800b080: 4618 mov r0, r3 800b082: f000 f939 bl 800b2f8 800b086: 4603 mov r3, r0 800b088: 73bb strb r3, [r7, #14] 800b08a: 7bbb ldrb r3, [r7, #14] 800b08c: 4618 mov r0, r3 800b08e: 3710 adds r7, #16 800b090: 46bd mov sp, r7 800b092: bd80 pop {r7, pc} 0800b094 : 800b094: b580 push {r7, lr} 800b096: b084 sub sp, #16 800b098: af00 add r7, sp, #0 800b09a: 6078 str r0, [r7, #4] 800b09c: 460b mov r3, r1 800b09e: 70fb strb r3, [r7, #3] 800b0a0: 2300 movs r3, #0 800b0a2: 73fb strb r3, [r7, #15] 800b0a4: 2300 movs r3, #0 800b0a6: 73bb strb r3, [r7, #14] 800b0a8: 687b ldr r3, [r7, #4] 800b0aa: f8d3 32c8 ldr.w r3, [r3, #712] @ 0x2c8 800b0ae: 78fa ldrb r2, [r7, #3] 800b0b0: 4611 mov r1, r2 800b0b2: 4618 mov r0, r3 800b0b4: f7f8 feec bl 8003e90 800b0b8: 4603 mov r3, r0 800b0ba: 73fb strb r3, [r7, #15] 800b0bc: 7bfb ldrb r3, [r7, #15] 800b0be: 4618 mov r0, r3 800b0c0: f000 f91a bl 800b2f8 800b0c4: 4603 mov r3, r0 800b0c6: 73bb strb r3, [r7, #14] 800b0c8: 7bbb ldrb r3, [r7, #14] 800b0ca: 4618 mov r0, r3 800b0cc: 3710 adds r7, #16 800b0ce: 46bd mov sp, r7 800b0d0: bd80 pop {r7, pc} 0800b0d2 : 800b0d2: b580 push {r7, lr} 800b0d4: b084 sub sp, #16 800b0d6: af00 add r7, sp, #0 800b0d8: 6078 str r0, [r7, #4] 800b0da: 460b mov r3, r1 800b0dc: 70fb strb r3, [r7, #3] 800b0de: 2300 movs r3, #0 800b0e0: 73fb strb r3, [r7, #15] 800b0e2: 2300 movs r3, #0 800b0e4: 73bb strb r3, [r7, #14] 800b0e6: 687b ldr r3, [r7, #4] 800b0e8: f8d3 32c8 ldr.w r3, [r3, #712] @ 0x2c8 800b0ec: 78fa ldrb r2, [r7, #3] 800b0ee: 4611 mov r1, r2 800b0f0: 4618 mov r0, r3 800b0f2: f7f8 ff30 bl 8003f56 800b0f6: 4603 mov r3, r0 800b0f8: 73fb strb r3, [r7, #15] 800b0fa: 7bfb ldrb r3, [r7, #15] 800b0fc: 4618 mov r0, r3 800b0fe: f000 f8fb bl 800b2f8 800b102: 4603 mov r3, r0 800b104: 73bb strb r3, [r7, #14] 800b106: 7bbb ldrb r3, [r7, #14] 800b108: 4618 mov r0, r3 800b10a: 3710 adds r7, #16 800b10c: 46bd mov sp, r7 800b10e: bd80 pop {r7, pc} 0800b110 : 800b110: b480 push {r7} 800b112: b085 sub sp, #20 800b114: af00 add r7, sp, #0 800b116: 6078 str r0, [r7, #4] 800b118: 460b mov r3, r1 800b11a: 70fb strb r3, [r7, #3] 800b11c: 687b ldr r3, [r7, #4] 800b11e: f8d3 32c8 ldr.w r3, [r3, #712] @ 0x2c8 800b122: 60fb str r3, [r7, #12] 800b124: f997 3003 ldrsb.w r3, [r7, #3] 800b128: 2b00 cmp r3, #0 800b12a: da0b bge.n 800b144 800b12c: 78fb ldrb r3, [r7, #3] 800b12e: f003 027f and.w r2, r3, #127 @ 0x7f 800b132: 68f9 ldr r1, [r7, #12] 800b134: 4613 mov r3, r2 800b136: 00db lsls r3, r3, #3 800b138: 4413 add r3, r2 800b13a: 009b lsls r3, r3, #2 800b13c: 440b add r3, r1 800b13e: 3316 adds r3, #22 800b140: 781b ldrb r3, [r3, #0] 800b142: e00b b.n 800b15c 800b144: 78fb ldrb r3, [r7, #3] 800b146: f003 027f and.w r2, r3, #127 @ 0x7f 800b14a: 68f9 ldr r1, [r7, #12] 800b14c: 4613 mov r3, r2 800b14e: 00db lsls r3, r3, #3 800b150: 4413 add r3, r2 800b152: 009b lsls r3, r3, #2 800b154: 440b add r3, r1 800b156: f203 2356 addw r3, r3, #598 @ 0x256 800b15a: 781b ldrb r3, [r3, #0] 800b15c: 4618 mov r0, r3 800b15e: 3714 adds r7, #20 800b160: 46bd mov sp, r7 800b162: f85d 7b04 ldr.w r7, [sp], #4 800b166: 4770 bx lr 0800b168 : 800b168: b580 push {r7, lr} 800b16a: b084 sub sp, #16 800b16c: af00 add r7, sp, #0 800b16e: 6078 str r0, [r7, #4] 800b170: 460b mov r3, r1 800b172: 70fb strb r3, [r7, #3] 800b174: 2300 movs r3, #0 800b176: 73fb strb r3, [r7, #15] 800b178: 2300 movs r3, #0 800b17a: 73bb strb r3, [r7, #14] 800b17c: 687b ldr r3, [r7, #4] 800b17e: f8d3 32c8 ldr.w r3, [r3, #712] @ 0x2c8 800b182: 78fa ldrb r2, [r7, #3] 800b184: 4611 mov r1, r2 800b186: 4618 mov r0, r3 800b188: f7f8 fd35 bl 8003bf6 800b18c: 4603 mov r3, r0 800b18e: 73fb strb r3, [r7, #15] 800b190: 7bfb ldrb r3, [r7, #15] 800b192: 4618 mov r0, r3 800b194: f000 f8b0 bl 800b2f8 800b198: 4603 mov r3, r0 800b19a: 73bb strb r3, [r7, #14] 800b19c: 7bbb ldrb r3, [r7, #14] 800b19e: 4618 mov r0, r3 800b1a0: 3710 adds r7, #16 800b1a2: 46bd mov sp, r7 800b1a4: bd80 pop {r7, pc} 0800b1a6 : 800b1a6: b580 push {r7, lr} 800b1a8: b086 sub sp, #24 800b1aa: af00 add r7, sp, #0 800b1ac: 60f8 str r0, [r7, #12] 800b1ae: 607a str r2, [r7, #4] 800b1b0: 603b str r3, [r7, #0] 800b1b2: 460b mov r3, r1 800b1b4: 72fb strb r3, [r7, #11] 800b1b6: 2300 movs r3, #0 800b1b8: 75fb strb r3, [r7, #23] 800b1ba: 2300 movs r3, #0 800b1bc: 75bb strb r3, [r7, #22] 800b1be: 68fb ldr r3, [r7, #12] 800b1c0: f8d3 02c8 ldr.w r0, [r3, #712] @ 0x2c8 800b1c4: 7af9 ldrb r1, [r7, #11] 800b1c6: 683b ldr r3, [r7, #0] 800b1c8: 687a ldr r2, [r7, #4] 800b1ca: f7f8 fe27 bl 8003e1c 800b1ce: 4603 mov r3, r0 800b1d0: 75fb strb r3, [r7, #23] 800b1d2: 7dfb ldrb r3, [r7, #23] 800b1d4: 4618 mov r0, r3 800b1d6: f000 f88f bl 800b2f8 800b1da: 4603 mov r3, r0 800b1dc: 75bb strb r3, [r7, #22] 800b1de: 7dbb ldrb r3, [r7, #22] 800b1e0: 4618 mov r0, r3 800b1e2: 3718 adds r7, #24 800b1e4: 46bd mov sp, r7 800b1e6: bd80 pop {r7, pc} 0800b1e8 : 800b1e8: b580 push {r7, lr} 800b1ea: b086 sub sp, #24 800b1ec: af00 add r7, sp, #0 800b1ee: 60f8 str r0, [r7, #12] 800b1f0: 607a str r2, [r7, #4] 800b1f2: 603b str r3, [r7, #0] 800b1f4: 460b mov r3, r1 800b1f6: 72fb strb r3, [r7, #11] 800b1f8: 2300 movs r3, #0 800b1fa: 75fb strb r3, [r7, #23] 800b1fc: 2300 movs r3, #0 800b1fe: 75bb strb r3, [r7, #22] 800b200: 68fb ldr r3, [r7, #12] 800b202: f8d3 02c8 ldr.w r0, [r3, #712] @ 0x2c8 800b206: 7af9 ldrb r1, [r7, #11] 800b208: 683b ldr r3, [r7, #0] 800b20a: 687a ldr r2, [r7, #4] 800b20c: f7f8 fdcb bl 8003da6 800b210: 4603 mov r3, r0 800b212: 75fb strb r3, [r7, #23] 800b214: 7dfb ldrb r3, [r7, #23] 800b216: 4618 mov r0, r3 800b218: f000 f86e bl 800b2f8 800b21c: 4603 mov r3, r0 800b21e: 75bb strb r3, [r7, #22] 800b220: 7dbb ldrb r3, [r7, #22] 800b222: 4618 mov r0, r3 800b224: 3718 adds r7, #24 800b226: 46bd mov sp, r7 800b228: bd80 pop {r7, pc} ... 0800b22c : 800b22c: b580 push {r7, lr} 800b22e: b082 sub sp, #8 800b230: af00 add r7, sp, #0 800b232: 6078 str r0, [r7, #4] 800b234: 460b mov r3, r1 800b236: 70fb strb r3, [r7, #3] 800b238: 78fb ldrb r3, [r7, #3] 800b23a: 2b00 cmp r3, #0 800b23c: d002 beq.n 800b244 800b23e: 2b01 cmp r3, #1 800b240: d01f beq.n 800b282 800b242: e03b b.n 800b2bc 800b244: 687b ldr r3, [r7, #4] 800b246: 7adb ldrb r3, [r3, #11] 800b248: 2b00 cmp r3, #0 800b24a: d007 beq.n 800b25c 800b24c: f7f5 fcee bl 8000c2c 800b250: 4b1c ldr r3, [pc, #112] @ (800b2c4 ) 800b252: 691b ldr r3, [r3, #16] 800b254: 4a1b ldr r2, [pc, #108] @ (800b2c4 ) 800b256: f023 0306 bic.w r3, r3, #6 800b25a: 6113 str r3, [r2, #16] 800b25c: 687b ldr r3, [r7, #4] 800b25e: 681b ldr r3, [r3, #0] 800b260: f503 6360 add.w r3, r3, #3584 @ 0xe00 800b264: 681b ldr r3, [r3, #0] 800b266: 687a ldr r2, [r7, #4] 800b268: 6812 ldr r2, [r2, #0] 800b26a: f502 6260 add.w r2, r2, #3584 @ 0xe00 800b26e: f023 0301 bic.w r3, r3, #1 800b272: 6013 str r3, [r2, #0] 800b274: 687b ldr r3, [r7, #4] 800b276: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800b27a: 4618 mov r0, r3 800b27c: f7fe fb90 bl 80099a0 800b280: e01c b.n 800b2bc 800b282: 687b ldr r3, [r7, #4] 800b284: 681b ldr r3, [r3, #0] 800b286: f503 6360 add.w r3, r3, #3584 @ 0xe00 800b28a: 681b ldr r3, [r3, #0] 800b28c: 687a ldr r2, [r7, #4] 800b28e: 6812 ldr r2, [r2, #0] 800b290: f502 6260 add.w r2, r2, #3584 @ 0xe00 800b294: f043 0301 orr.w r3, r3, #1 800b298: 6013 str r3, [r2, #0] 800b29a: 687b ldr r3, [r7, #4] 800b29c: f8d3 34e0 ldr.w r3, [r3, #1248] @ 0x4e0 800b2a0: 4618 mov r0, r3 800b2a2: f7fe fb61 bl 8009968 800b2a6: 687b ldr r3, [r7, #4] 800b2a8: 7adb ldrb r3, [r3, #11] 800b2aa: 2b00 cmp r3, #0 800b2ac: d005 beq.n 800b2ba 800b2ae: 4b05 ldr r3, [pc, #20] @ (800b2c4 ) 800b2b0: 691b ldr r3, [r3, #16] 800b2b2: 4a04 ldr r2, [pc, #16] @ (800b2c4 ) 800b2b4: f043 0306 orr.w r3, r3, #6 800b2b8: 6113 str r3, [r2, #16] 800b2ba: bf00 nop 800b2bc: bf00 nop 800b2be: 3708 adds r7, #8 800b2c0: 46bd mov sp, r7 800b2c2: bd80 pop {r7, pc} 800b2c4: e000ed00 .word 0xe000ed00 0800b2c8 : 800b2c8: b480 push {r7} 800b2ca: b083 sub sp, #12 800b2cc: af00 add r7, sp, #0 800b2ce: 6078 str r0, [r7, #4] 800b2d0: 4b03 ldr r3, [pc, #12] @ (800b2e0 ) 800b2d2: 4618 mov r0, r3 800b2d4: 370c adds r7, #12 800b2d6: 46bd mov sp, r7 800b2d8: f85d 7b04 ldr.w r7, [sp], #4 800b2dc: 4770 bx lr 800b2de: bf00 nop 800b2e0: 20001748 .word 0x20001748 0800b2e4 : 800b2e4: b480 push {r7} 800b2e6: b083 sub sp, #12 800b2e8: af00 add r7, sp, #0 800b2ea: 6078 str r0, [r7, #4] 800b2ec: bf00 nop 800b2ee: 370c adds r7, #12 800b2f0: 46bd mov sp, r7 800b2f2: f85d 7b04 ldr.w r7, [sp], #4 800b2f6: 4770 bx lr 0800b2f8 : 800b2f8: b480 push {r7} 800b2fa: b085 sub sp, #20 800b2fc: af00 add r7, sp, #0 800b2fe: 4603 mov r3, r0 800b300: 71fb strb r3, [r7, #7] 800b302: 2300 movs r3, #0 800b304: 73fb strb r3, [r7, #15] 800b306: 79fb ldrb r3, [r7, #7] 800b308: 2b03 cmp r3, #3 800b30a: d817 bhi.n 800b33c 800b30c: a201 add r2, pc, #4 @ (adr r2, 800b314 ) 800b30e: f852 f023 ldr.w pc, [r2, r3, lsl #2] 800b312: bf00 nop 800b314: 0800b325 .word 0x0800b325 800b318: 0800b32b .word 0x0800b32b 800b31c: 0800b331 .word 0x0800b331 800b320: 0800b337 .word 0x0800b337 800b324: 2300 movs r3, #0 800b326: 73fb strb r3, [r7, #15] 800b328: e00b b.n 800b342 800b32a: 2303 movs r3, #3 800b32c: 73fb strb r3, [r7, #15] 800b32e: e008 b.n 800b342 800b330: 2301 movs r3, #1 800b332: 73fb strb r3, [r7, #15] 800b334: e005 b.n 800b342 800b336: 2303 movs r3, #3 800b338: 73fb strb r3, [r7, #15] 800b33a: e002 b.n 800b342 800b33c: 2303 movs r3, #3 800b33e: 73fb strb r3, [r7, #15] 800b340: bf00 nop 800b342: 7bfb ldrb r3, [r7, #15] 800b344: 4618 mov r0, r3 800b346: 3714 adds r7, #20 800b348: 46bd mov sp, r7 800b34a: f85d 7b04 ldr.w r7, [sp], #4 800b34e: 4770 bx lr 0800b350 : 800b350: 4402 add r2, r0 800b352: 4603 mov r3, r0 800b354: 4293 cmp r3, r2 800b356: d100 bne.n 800b35a 800b358: 4770 bx lr 800b35a: f803 1b01 strb.w r1, [r3], #1 800b35e: e7f9 b.n 800b354 0800b360 <__libc_init_array>: 800b360: b570 push {r4, r5, r6, lr} 800b362: 4d0d ldr r5, [pc, #52] @ (800b398 <__libc_init_array+0x38>) 800b364: 4c0d ldr r4, [pc, #52] @ (800b39c <__libc_init_array+0x3c>) 800b366: 1b64 subs r4, r4, r5 800b368: 10a4 asrs r4, r4, #2 800b36a: 2600 movs r6, #0 800b36c: 42a6 cmp r6, r4 800b36e: d109 bne.n 800b384 <__libc_init_array+0x24> 800b370: 4d0b ldr r5, [pc, #44] @ (800b3a0 <__libc_init_array+0x40>) 800b372: 4c0c ldr r4, [pc, #48] @ (800b3a4 <__libc_init_array+0x44>) 800b374: f000 f826 bl 800b3c4 <_init> 800b378: 1b64 subs r4, r4, r5 800b37a: 10a4 asrs r4, r4, #2 800b37c: 2600 movs r6, #0 800b37e: 42a6 cmp r6, r4 800b380: d105 bne.n 800b38e <__libc_init_array+0x2e> 800b382: bd70 pop {r4, r5, r6, pc} 800b384: f855 3b04 ldr.w r3, [r5], #4 800b388: 4798 blx r3 800b38a: 3601 adds r6, #1 800b38c: e7ee b.n 800b36c <__libc_init_array+0xc> 800b38e: f855 3b04 ldr.w r3, [r5], #4 800b392: 4798 blx r3 800b394: 3601 adds r6, #1 800b396: e7f2 b.n 800b37e <__libc_init_array+0x1e> 800b398: 0800b440 .word 0x0800b440 800b39c: 0800b440 .word 0x0800b440 800b3a0: 0800b440 .word 0x0800b440 800b3a4: 0800b444 .word 0x0800b444 0800b3a8 : 800b3a8: 440a add r2, r1 800b3aa: 4291 cmp r1, r2 800b3ac: f100 33ff add.w r3, r0, #4294967295 @ 0xffffffff 800b3b0: d100 bne.n 800b3b4 800b3b2: 4770 bx lr 800b3b4: b510 push {r4, lr} 800b3b6: f811 4b01 ldrb.w r4, [r1], #1 800b3ba: f803 4f01 strb.w r4, [r3, #1]! 800b3be: 4291 cmp r1, r2 800b3c0: d1f9 bne.n 800b3b6 800b3c2: bd10 pop {r4, pc} 0800b3c4 <_init>: 800b3c4: b5f8 push {r3, r4, r5, r6, r7, lr} 800b3c6: bf00 nop 800b3c8: bcf8 pop {r3, r4, r5, r6, r7} 800b3ca: bc08 pop {r3} 800b3cc: 469e mov lr, r3 800b3ce: 4770 bx lr 0800b3d0 <_fini>: 800b3d0: b5f8 push {r3, r4, r5, r6, r7, lr} 800b3d2: bf00 nop 800b3d4: bcf8 pop {r3, r4, r5, r6, r7} 800b3d6: bc08 pop {r3} 800b3d8: 469e mov lr, r3 800b3da: 4770 bx lr