LPC11U14 BIOS Interrupt vectors (we assume) 0x1fff0000: 0x10000ffc 0x1fff0041 0x1fff00e1 0x1fff00e3 0x1fff0010: 0x1fff00e5 0x1fff00e7 0x1fff00e9 0xffffffff 0x1fff0020: 0xffffffff 0xffffffff 0xffffffff 0x1fff00eb 0x1fff0030: 0x1fff00ed 0xffffffff 0x1fff00ef 0x1fff00f1 Call graph 1fff0040 1fff0048 Load CRP value to SCB register 1fff0350 Checks the pins PIN0_1 for ISP force 1fff0348 1fff02f6 Validate application and jump Unless something is weird, you'll get to here. This checksums the first bit of the application interrupt table and jumps to the application if it's ok. 1fff008c jump to other system 1fff02e4 This looks like the ISP bits, which we're going to ignore 1fff02b0 setup clocks 1fff0264 1fff022c 1fff0e54 1fff019c 1fff0d9c setup_serial 1fff0e04 1fff0d9c setup_serial 1fff00f4 boot: boot() { start(); } 0x1fff0040: ldr r2, [pc, #0] ; (0x1fff0044) 1fff0049 0x1fff0042: bx r2 0x1fff0040: 0x47104a00 0x1fff0049 0x4b1b4a1a 0x4d1c681b 0x1fff0044: lsls r1, r1, #1 0x1fff0046: subs r7, r7, #7 start: Check Code Read Protection values 0x1fff0048: ldr r2, [pc, #104] ; (0x1fff00b4) 400483f0 0x1fff004a: ldr r3, [pc, #108] ; (0x1fff00b8) 1fff00c8 0x1fff004c: ldr r3, [r3, #0] 000002fc 0x1fff004e: ldr r5, [pc, #112] ; (0x1fff00c0) 1fff00d0 0x1fff0050: ldr r5, [r5, #0] 43218765 CRP3 0x1fff0052: ldr r6, [pc, #112] ; (0x1fff00c4) 1fff00d4 0x1fff0054: ldr r6, [r6, #0] 12345678 CRP1 0x1fff0056: ldr r4, [r3, #0] (000002fc) CRP if CRP == CRP3 0x1fff0058: cmp r4, r5 0x1fff005a: beq.n 0x1fff0060 if CRP == CRP1 => 0x1fff005c: cmp r4, r6 0x1fff005e: bne.n 0x1fff0064 if (r4 == r5 || r4 == r6) { 0x1fff0060: ldr r4, [pc, #88] ; (0x1fff00bc) 1fff00cc 0x1fff0062: ldr r4, [r4, #0] 87654321 CRP2 r4 = 0x87654321; } Write the resulting CRP value to the SCB register 0x1fff0064: str r4, [r2, #0] SCB register before DEVICE_ID This pretty clearly changes the memory mapping so that low addresses (higher than the interrupt vector) come from rom 0x1fff0066: ldr r2, [pc, #52] ; (0x1fff009c) 4003c000 FLASHCFG 0x1fff0068: ldr r3, [r2, #0] 0x1fff006a: movs r4, #64 ; 0x40 0x1fff006c: orrs r3, r4 0x1fff006e: str r3, [r2, #0] Check and see if the memory mapping changes worked 0x1fff0070: ldr r3, [pc, #44] ; (0x1fff00a0) 0000043c 0x1fff0072: ldr r2, [r3, #0] 0x1fff0074: ldr r4, [pc, #44] ; (0x1fff00a4) 000005d0 0x1fff0076: ldr r4, [r4, #0] 0x1fff0078: ldr r5, [pc, #44] ; (0x1fff00a8) 1fff00dc 0x1fff007a: ldr r5, [r5, #0] 3456abcd 0x1fff007c: cmp r4, r5 0x1fff007e: beq.n 0x1fff0084 Initialize stack 0x1fff0080: ldr r2, [pc, #40] ; (0x1fff00ac) 1fff00d8 0x1fff0082: ldr r2, [r2, #0] 10000fff 0x1fff0084: subs r2, #31 0x1fff0086: mov sp, r2 Jump to main function 0x1fff0088: ldr r2, [pc, #36] ; (0x1fff00b0) 1fff0351 0x1fff008a: bx r2 Load stack/pc from address pointed at by r0 and jump 0x1fff008c: ldr r1, [r0, #0] 0x1fff008e: mov sp, r1 0x1fff0090: ldr r1, [r0, #4] 0x1fff0092: bx r1 This is the same. 0x1fff0094: ldr r1, [r0, #0] 0x1fff0096: mov sp, r1 0x1fff0098: ldr r1, [r0, #4] 0x1fff009a: bx r1 0x1fff0090: 0x47086841 0x468d6801 0x47086841 0x4003c000 0x1fff00a0: 0x0000043c 0x000005d0 0x1fff00dc 0x1fff00d8 0x1fff00b0: 0x1fff0351 0x400483f0 0x1fff00c8 0x1fff00cc 0x1fff00c0: 0x1fff00d0 0x1fff00d4 0x000002fc 0x87654321 0x1fff00d0: 0x43218765 0x12345678 0x10000fff 0x3456abcd 0x1fff00e0: 0xe7fe4770 0xe7fee7fe 0x4770e7fe 0x47704770 0x1fff00f0: 0xffff4770 0x4eddb51c 0x4dde4fdd 0x48dd2401 0x1fff0100: 0x2146aa01 0xf0003898 0x2800fe7d 0x217ad1f7 0x1fff009c: stmia r0!, {} 0x1fff009e: ands r3, r0 0x1fff00a0: lsls r4, r7, #16 0x1fff00a2: movs r0, r0 0x1fff00a4: lsls r0, r2, #23 0x1fff00a6: movs r0, r0 0x1fff00a8: lsls r4, r3, #3 0x1fff00aa: subs r7, r7, #7 0x1fff00ac: lsls r0, r3, #3 0x1fff00ae: subs r7, r7, #7 0x1fff00b0: lsls r1, r2, #13 0x1fff00b2: subs r7, r7, #7 0x1fff00b4: strh r0, [r6, #30] 0x1fff00b6: ands r4, r0 0x1fff00b8: lsls r0, r1, #3 0x1fff00ba: subs r7, r7, #7 0x1fff00bc: lsls r4, r1, #3 0x1fff00be: subs r7, r7, #7 0x1fff00c0: lsls r0, r2, #3 0x1fff00c2: subs r7, r7, #7 0x1fff00c4: lsls r4, r2, #3 0x1fff00c6: subs r7, r7, #7 0x1fff00c8: lsls r4, r7, #11 0x1fff00ca: movs r0, r0 0x1fff00cc: orrs r1, r4 0x1fff00ce: strh r5, [r4, #58] ; 0x3a 0x1fff00d0: strh r5, [r4, #58] ; 0x3a 0x1fff00d2: orrs r1, r4 0x1fff00d4: ldrsb r0, [r7, r1] 0x1fff00d6: asrs r4, r6, #8 0x1fff00d8: lsrs r7, r7, #31 0x1fff00da: asrs r0, r0, #32 0x1fff00dc: add r3, sp, #820 ; 0x334 0x1fff00de: adds r4, #86 ; 0x56 0x1fff00e0: bx lr 0x1fff00e2: b.n 0x1fff00e2 0x1fff00e4: b.n 0x1fff00e4 0x1fff00e6: b.n 0x1fff00e6 0x1fff00e8: b.n 0x1fff00e8 0x1fff00ea: bx lr 0x1fff00ec: bx lr 0x1fff00ee: bx lr 0x1fff00f0: bx lr 0x1fff00f2: vsli.32 d27, d12, #31 0x1fff00f4: push {r2, r3, r4, lr} 0x1fff00f6: ldr r6, [pc, #884] ; (0x1fff046c) 0x1fff00f8: ldr r7, [pc, #884] ; (0x1fff0470) 0x1fff00fa: ldr r5, [pc, #888] ; (0x1fff0474) 0x1fff00fc: movs r4, #1 0x1fff00fe: ldr r0, [pc, #884] ; (0x1fff0474) 0x1fff0100: add r2, sp, #4 0x1fff0102: movs r1, #70 ; 0x46 0x1fff0104: subs r0, #152 ; 0x98 0x1fff0106: bl 0x1fff0e04 0x1fff010a: cmp r0, #0 0x1fff010c: bne.n 0x1fff00fe 0x1fff010e: movs r1, #122 ; 0x7a 0x1fff0110: lsls r2, r0, #2 0x1fff0112: ldr r2, [r5, r2] 0x1fff0114: adds r0, r0, #1 0x1fff0116: strb r1, [r2, #0] 0x1fff0118: cmp r0, #5 0x1fff011a: blt.n 0x1fff0110 0x1fff011c: movs r0, #15 0x1fff011e: ldr r2, [pc, #852] ; (0x1fff0474) 0x1fff0120: str r0, [sp, #0] 0x1fff0122: mov r0, r2 0x1fff0124: movs r3, #5 0x1fff0126: subs r0, #152 ; 0x98 0x1fff0128: ldr r1, [sp, #4] 0x1fff012a: bl 0x1fff0fd8 0x1fff012e: cmp r0, #0 0x1fff0130: beq.n 0x1fff00fe 0x1fff0132: ldr r1, [r5, #0] 0x1fff0134: ldrb r1, [r1, #0] 0x1fff0136: cmp r1, #82 ; 0x52 0x1fff0138: beq.n 0x1fff0184 0x1fff013a: cmp r1, #84 ; 0x54 0x1fff013c: beq.n 0x1fff0184 0x1fff013e: cmp r1, #71 ; 0x47 0x1fff0140: beq.n 0x1fff0184 0x1fff0142: cmp r1, #77 ; 0x4d 0x1fff0144: beq.n 0x1fff0184 0x1fff0146: movs r2, #0 0x1fff0148: cmp r1, #87 ; 0x57 0x1fff014a: beq.n 0x1fff0188 0x1fff014c: cmp r1, #67 ; 0x43 0x1fff014e: beq.n 0x1fff0188 0x1fff0150: movs r4, #0 0x1fff0152: ldr r1, [pc, #804] ; (0x1fff0478) 0x1fff0154: ldr r3, [r6, #0] 0x1fff0156: ldr r1, [r1, #8] 0x1fff0158: cmp r1, r3 0x1fff015a: beq.n 0x1fff016a 0x1fff015c: ldr r3, [r7, #0] 0x1fff015e: cmp r1, r3 0x1fff0160: beq.n 0x1fff016a 0x1fff0162: ldr r3, [pc, #792] ; (0x1fff047c) 0x1fff0164: ldr r3, [r3, #0] 0x1fff0166: cmp r1, r3 0x1fff0168: bne.n 0x1fff016e 0x1fff016a: cmp r2, #1 0x1fff016c: beq.n 0x1fff018c 0x1fff016e: ldr r2, [r6, #0] 0x1fff0170: cmp r1, r2 0x1fff0172: beq.n 0x1fff017a 0x1fff0174: ldr r2, [r7, #0] 0x1fff0176: cmp r1, r2 0x1fff0178: bne.n 0x1fff017e 0x1fff017a: cmp r4, #1 0x1fff017c: beq.n 0x1fff018c 0x1fff017e: bl 0x1fff0bcc 0x1fff0182: b.n 0x1fff00fe 0x1fff0184: movs r2, #1 0x1fff0186: b.n 0x1fff0152 0x1fff0188: movs r4, #1 0x1fff018a: b.n 0x1fff0152 0x1fff018c: movs r2, #15 0x1fff018e: movs r0, #19 0x1fff0190: ldr r1, [r5, #4] 0x1fff0192: bl 0x1fff1064 0x1fff0196: bl 0x1ff0d9c setup_serial 0x1fff019a: b.n 0x1fff00fe 0x1fff019c: push {r3, r4, r5, r6, r7, lr} 0x1fff019e: ldr r6, [pc, #736] ; (0x1fff0480) 0x1fff01a0: ldr r7, [pc, #736] ; (0x1fff0484) 0x1fff01a2: ldr r4, [pc, #740] ; (0x1fff0488) 0x1fff01a4: movs r5, #1 0x1fff01a6: movs r0, #2 0x1fff01a8: str r0, [r7, #4] 0x1fff01aa: ldr r0, [r6, #0] 0x1fff01ac: lsls r0, r0, #13 0x1fff01ae: bmi.n 0x1fff01aa 0x1fff01b0: ldr r0, [r6, #0] 0x1fff01b2: lsls r0, r0, #13 0x1fff01b4: bpl.n 0x1fff01b0 0x1fff01b6: str r5, [r7, #4] 0x1fff01b8: ldr r0, [r6, #0] 0x1fff01ba: lsls r0, r0, #13 0x1fff01bc: bmi.n 0x1fff01b8 0x1fff01be: ldr r0, [r6, #0] 0x1fff01c0: lsls r0, r0, #13 0x1fff01c2: bpl.n 0x1fff01be 0x1fff01c4: movs r0, #0 0x1fff01c6: str r0, [r7, #4] 0x1fff01c8: ldr r0, [r7, #8] 0x1fff01ca: movs r1, #208 ; 0xd0 0x1fff01cc: bl 0x1fff11d4 0x1fff01d0: movs r2, #0 0x1fff01d2: movs r1, #3 0x1fff01d4: bl 0x1fff0d28 0x1fff01d8: ldr r0, [r4, #8] 0x1fff01da: lsrs r0, r0, #3 0x1fff01dc: lsls r0, r0, #3 0x1fff01de: str r0, [r4, #8] 0x1fff01e0: ldr r0, [r4, #8] 0x1fff01e2: orrs r0, r5 0x1fff01e4: str r0, [r4, #8] 0x1fff01e6: ldr r0, [r4, #12] 0x1fff01e8: lsrs r0, r0, #3 0x1fff01ea: lsls r0, r0, #3 0x1fff01ec: str r0, [r4, #12] 0x1fff01ee: ldr r0, [r4, #12] 0x1fff01f0: orrs r0, r5 0x1fff01f2: str r0, [r4, #12] 0x1fff01f4: ldr r0, [pc, #660] ; (0x1fff048c) 0x1fff01f6: bl 0x1ff0d9c setup_serial 0x1fff01fa: bl 0x1fff0de2 0x1fff01fe: ldr r0, [pc, #628] ; (0x1fff0474) 0x1fff0200: movs r2, #0 0x1fff0202: movs r1, #70 ; 0x46 0x1fff0204: subs r0, #152 ; 0x98 0x1fff0206: bl 0x1fff0e04 0x1fff020a: ldr r0, [pc, #616] ; (0x1fff0474) 0x1fff020c: ldr r1, [pc, #636] ; (0x1fff048c) 0x1fff020e: subs r0, #152 ; 0x98 0x1fff0210: bl 0x1fff0fb8 0x1fff0214: cmp r0, #0 0x1fff0216: beq.n 0x1fff022a 0x1fff0218: ldr r0, [r4, #8] 0x1fff021a: lsrs r0, r0, #3 0x1fff021c: lsls r0, r0, #3 0x1fff021e: str r0, [r4, #8] 0x1fff0220: ldr r0, [r4, #12] 0x1fff0222: lsrs r0, r0, #3 0x1fff0224: lsls r0, r0, #3 0x1fff0226: str r0, [r4, #12] 0x1fff0228: b.n 0x1fff01a6 0x1fff022a: pop {r3, r4, r5, r6, r7, pc} 0x1fff022c: ldr r0, [pc, #608] ; (0x1fff0490) 0x1fff022e: ldr r1, [r0, #0] 0x1fff0230: movs r2, #1 0x1fff0232: lsls r2, r2, #12 0x1fff0234: orrs r1, r2 0x1fff0236: str r1, [r0, #0] 0x1fff0238: movs r1, #1 0x1fff023a: str r1, [r0, #24] 0x1fff023c: ldr r1, [pc, #596] ; (0x1fff0494) 0x1fff023e: movs r0, #133 ; 0x85 0x1fff0240: str r0, [r1, #40] ; 0x28 0x1fff0242: ldr r0, [pc, #596] ; (0x1fff0498) 0x1fff0244: ldr r1, [r0, #0] 0x1fff0246: lsls r2, r2, #6 0x1fff0248: bics r1, r2 0x1fff024a: str r1, [r0, #0] 0x1fff024c: ldr r0, [pc, #568] ; (0x1fff0488) 0x1fff024e: ldr r1, [r0, #8] 0x1fff0250: lsrs r1, r1, #3 0x1fff0252: lsls r1, r1, #3 0x1fff0254: str r1, [r0, #8] 0x1fff0256: ldr r1, [r0, #8] 0x1fff0258: str r1, [r0, #8] 0x1fff025a: ldr r0, [pc, #576] ; (0x1fff049c) 0x1fff025c: ldr r1, [r0, #0] 0x1fff025e: bics r1, r2 0x1fff0260: str r1, [r0, #0] 0x1fff0262: bx lr { 0x1fff0264: bl 0x1fff022c 0x1fff0268: movs r0, #1 0x1fff026a: bl 0x1fff0e54 0x1fff026e: bl 0x1fff019c 0x1fff0272: ldr r0, [pc, #556] ; (0x1fff04a0) 1fff1f24 0x1fff0274: bl 0x1ff0d9c setup_serial 0x1fff0278: ldr r0, [pc, #504] ; (0x1fff0474) 100000f8 0x1fff027a: movs r2, #0 0x1fff027c: movs r1, #70 ; 0x46 0x1fff027e: subs r0, #152 ; 0x98 0x1fff0280: bl 0x1fff0e04 0x1fff0284: ldr r4, [pc, #496] ; (0x1fff0478) 0x1fff0286: ldr r0, [pc, #540] ; (0x1fff04a4) 0x1fff0288: str r0, [r4, #0] 0x1fff028a: ldr r0, [pc, #532] ; (0x1fff04a0) 0x1fff028c: bl 0x1ff0d9c setup_serial 0x1fff0290: movs r0, #1 0x1fff0292: ldr r1, [pc, #480] ; (0x1fff0474) 0x1fff0294: str r0, [r4, #4] 0x1fff0296: ldr r0, [pc, #476] ; (0x1fff0474) 0x1fff0298: subs r1, #80 ; 0x50 0x1fff029a: str r1, [r0, #0] 0x1fff029c: adds r1, #16 0x1fff029e: str r1, [r0, #4] 0x1fff02a0: adds r1, #16 0x1fff02a2: str r1, [r0, #8] 0x1fff02a4: adds r1, #16 0x1fff02a6: str r1, [r0, #12] 0x1fff02a8: adds r1, #16 0x1fff02aa: str r1, [r0, #16] 0x1fff02ac: bl 0x1fff00f4 } Set up clocks { 0x1fff02b0: ldr r0, [pc, #476] ; (0x1fff0490) 40048080 SYSAHBCLKCTRL 0x1fff02b2: subs r0, #64 ; 0x40 SYSPLLCLKSEL 0x1fff02b4: ldr r3, [r0, #48] ; 0x30 MAINCLKSEL R1 = 0 R1 = 1 R3 = 0 0x1fff02b6: movs r1, #0 0x1fff02b8: movs r2, #1 0x1fff02ba: cmp r3, #0 0x1fff02bc: beq.n 0x1fff02c4 { Switch to IRC osc 0x1fff02be: str r1, [r0, #48] ; 0x30 MAINCLKSEL 0x1fff02c0: str r1, [r0, #52] ; 0x34 MAINCLKUEN 0x1fff02c2: str r2, [r0, #52] ; 0x34 MAINCLKUEN } SYSAHBCLKDIV = 1 0x1fff02c4: str r2, [r0, #56] ; 0x38 SYSAHBCLKDIV SYSAHBCLKCTRL |= 0x02010040 0x1fff02c6: ldr r0, [pc, #456] ; (0x1fff0490) 40048080 SYSAHBCLKCTRL 0x1fff02c8: ldr r2, [r0, #0] 0x1fff02ca: ldr r3, [pc, #476] ; (0x1fff04a8) 02010040 0x1fff02cc: orrs r2, r3 0x1fff02ce: str r2, [r0, #0] CT32B1 Prescale = 0 Prescale counter = 0 CTCR |= 0xc; 0x1fff02d0: ldr r0, [pc, #432] ; (0x1fff0484) 40018000 CT32B1 0x1fff02d2: str r1, [r0, #12] 0x1fff02d4: str r1, [r0, #16] 0x1fff02d6: ldr r0, [pc, #428] ; (0x1fff0484) 40018000 CT32B1 0x1fff02d8: adds r0, #64 ; 0x40 0x1fff02da: ldr r1, [r0, #48] ; 0x30 0x1fff02dc: movs r2, #12 0x1fff02de: ands r1, r2 0x1fff02e0: str r1, [r0, #48] ; 0x30 0x1fff02e2: bx lr } { 0x1fff02e4: ldr r0, [pc, #452] ; (0x1fff04ac) 1fff00c8 0x1fff02e6: ldr r1, [pc, #400] ; (0x1fff0478) 10000050 0x1fff02e8: ldr r0, [r0, #0] 000002fc 0x1fff02ea: ldr r0, [r0, #0] 0x1fff02ec: str r0, [r1, #8] 0x1fff02ee: bl 0x1fff02b0 ; Set up clocks 0x1fff02f2: bl 0x1fff0264 } { 0x1fff02f6: push {r4, r5, r6, lr} Mash flash controller to change memory mapping around again 0x1fff02f8: ldr r1, [pc, #436] ; (0x1fff04b0) 4003c000 flash controller 0x1fff02fa: ldr r0, [r1, #0] 0x1fff02fc: movs r2, #64 ; 0x40 0x1fff02fe: orrs r0, r2 0x1fff0300: str r0, [r1, #0] 0x1fff0302: ldr r0, [pc, #432] ; (0x1fff04b4) 00000458 0x1fff0304: ldr r5, [pc, #392] ; (0x1fff0490) 40048080 system control block + 0x80 0x1fff0306: movs r3, #2 0x1fff0308: subs r5, #128 ; 0x80 system control block 0x1fff030a: ldr r4, [r0, #0] (00000458) 0x1fff030c: str r3, [r5, #0] scb[0] system memory remap 0x1fff030e: ldr r3, [pc, #424] ; (0x1fff04b8) 000005fc 0x1fff0310: ldr r0, [r0, #0] (00000458) 0x1fff0312: ldr r3, [r3, #0] (000005fc) Mash flash controller to revert memory mapping change 0x1fff0314: ldr r6, [r1, #0] (4003c000) 0x1fff0316: bics r6, r2 0x1fff0318: str r6, [r1, #0] Compute the application checksum sum = 0 for (i = 0; i < 8; i++) { v = addr[i]; sum += v; } 0x1fff031a: movs r2, #0 0x1fff031c: mov r1, r2 0x1fff031e: lsls r6, r1, #2 0x1fff0320: ldr r6, [r0, r6] 0x1fff0322: adds r1, r1, #1 0x1fff0324: adds r2, r6, r2 0x1fff0326: cmp r1, #8 0x1fff0328: blt.n 0x1fff031e Check and see if the application checksum is zero 0x1fff032a: cmp r2, #0 0x1fff032c: beq.n 0x1fff0334 0x1fff032e: movs r0, #0 0x1fff0330: str r0, [r5, #0] Bail if the application isn't valid return; 0x1fff0332: pop {r4, r5, r6, pc} Go start the application 0x1fff0334: ldr r0, [pc, #388] ; (0x1fff04bc) 1fff1ff8 0x1fff0336: ldr r0, [r0, #0] 1fff1f54 0x1fff0338: ldr r0, [r0, #12] (1fff1f60) 1fff1f34 0x1fff033a: ldr r1, [r0, #8] 1fff13dd 0x1fff033c: mov r0, r3 0x1fff033e: blx r1 0x1fff0340: mov r0, r4 0x1fff0342: bl 0x1fff008c 0x1fff0346: pop {r4, r5, r6, pc} } 0x1fff0348: bl 0x1fff02f6 0x1fff034c: bl 0x1fff02e4 called from 1fff0088. Appears to be the main entry, called after the memory system and stack are set up main() { } 0x1fff0350: push {r0, r1, r2, r3, r4, lr} Mash the flash cfg again to change memory mapping around 0x1fff0352: ldr r4, [pc, #348] ; (0x1fff04b0) 4003c000 0x1fff0354: ldr r0, [r4, #0] 0x1fff0356: movs r5, #64 ; 0x40 0x1fff0358: bics r0, r5 0x1fff035a: str r0, [r4, #0] 0x1fff035c: ldr r0, [pc, #332] ; (0x1fff04ac) 1fff00c8 0x1fff035e: ldr r0, [r0, #0] 000005ec 0x1fff0360: ldr r1, [r0, #0] 0x1fff0362: ldr r0, [pc, #276] ; (0x1fff0478) 10000050 0x1fff0364: str r1, [r0, #8] 0x1fff0366: ldr r0, [r4, #0] 0x1fff0368: orrs r0, r5 0x1fff036a: str r0, [r4, #0] 0x1fff036c: ldr r0, [pc, #336] ; (0x1fff04c0) 000005d0 0x1fff036e: ldr r1, [pc, #340] ; (0x1fff04c4) 3456abcd 0x1fff0370: ldr r0, [r0, #0] 0x1fff0372: cmp r0, r1 0x1fff0374: beq.n 0x1fff037e 0x1fff0376: ldr r0, [r4, #0] 0x1fff0378: bics r0, r5 0x1fff037a: str r0, [r4, #0] 0x1fff037c: b.n 0x1fff037c 0x1fff037e: ldr r0, [pc, #328] ; (0x1fff04c8) 000005ec 0x1fff0380: ldr r6, [pc, #268] ; (0x1fff0490) 40048080 0x1fff0382: ldr r0, [r0, #0] 0x1fff0384: ldr r1, [pc, #324] ; (0x1fff04cc) 534b4950 0x1fff0386: ldr r7, [pc, #328] ; (0x1fff04d0) 400483c0 0x1fff0388: adds r6, #192 ; 0xc0 0x1fff038a: cmp r0, r1 0x1fff038c: bne.n 0x1fff039e 0x1fff038e: ldr r0, [pc, #324] ; (0x1fff04d4) 12345678 0x1fff0390: str r0, [r7, #16] 0x1fff0392: ldr r0, [pc, #324] ; (0x1fff04d8) 000005e8 0x1fff0394: ldr r0, [r0, #0] 0x1fff0396: str r0, [r6, #32] 0x1fff0398: movs r0, #0 0x1fff039a: str r0, [r7, #16] 0x1fff039c: b.n 0x1fff03be { 0x1fff039e: movs r1, #12 0x1fff03a0: ldr r0, [pc, #312] ; (0x1fff04dc) 000005f0 0x1fff03a2: str r1, [sp, #0] 0x1fff03a4: ldr r0, [r0, #0] 0x1fff03a6: str r0, [sp, #4] 0x1fff03a8: ldr r0, [pc, #272] ; (0x1fff04bc) 1fff1ff8 0x1fff03aa: str r1, [sp, #8] 0x1fff03ac: ldr r0, [r0, #0] 1fff1f54 0x1fff03ae: add r1, sp, #12 0x1fff03b0: ldr r0, [r0, #12] 1fff1f34 0x1fff03b2: ldr r2, [r0, #4] 1fff161d 0x1fff03b4: mov r0, sp 0x1fff03b6: blx r2 0x1fff03b8: ldr r0, [r4, #0] 0x1fff03ba: orrs r0, r5 0x1fff03bc: str r0, [r4, #0] } 0x1fff03be: ldr r0, [pc, #288] ; (0x1fff04e0) 0x1fff03c0: ldr r0, [r0, #0] 0x1fff03c2: str r0, [r7, #56] ; 0x38 0x1fff03c4: ldr r0, [pc, #284] ; (0x1fff04e4) 0x1fff03c6: ldr r0, [r0, #0] 0x1fff03c8: str r0, [r7, #60] ; 0x3c 0x1fff03ca: ldr r0, [pc, #284] ; (0x1fff04e8) 0x1fff03cc: movs r1, #0 0x1fff03ce: ldr r0, [r0, #0] 0x1fff03d0: mvns r1, r1 0x1fff03d2: subs r0, #63 ; 0x3f 0x1fff03d4: str r1, [r0, #60] ; 0x3c 0x1fff03d6: ldr r2, [pc, #276] ; (0x1fff04ec) 0x1fff03d8: ldr r1, [pc, #180] ; (0x1fff0490) 0x1fff03da: ldr r0, [r2, #0] 0x1fff03dc: str r0, [r1, #0] 0x1fff03de: ldr r0, [pc, #272] ; (0x1fff04f0) 0x1fff03e0: ldr r0, [r0, #0] 0x1fff03e2: str r0, [r6, #20] 0x1fff03e4: ldr r0, [pc, #268] ; (0x1fff04f4) 0x1fff03e6: ldr r6, [pc, #168] ; (0x1fff0490) 0x1fff03e8: ldr r0, [r0, #0] 0x1fff03ea: subs r6, #128 ; 0x80 0x1fff03ec: str r0, [r6, #40] ; 0x28 0x1fff03ee: ldr r0, [r2, #0] 0x1fff03f0: lsls r3, r0, #20 0x1fff03f2: movs r0, #1 0x1fff03f4: cmp r3, #0 0x1fff03f6: bge.n 0x1fff03fa 0x1fff03f8: str r0, [r1, #20] 0x1fff03fa: ldr r3, [r2, #0] 0x1fff03fc: lsls r3, r3, #19 0x1fff03fe: bpl.n 0x1fff0402 0x1fff0400: str r0, [r1, #24] 0x1fff0402: ldr r1, [r2, #0] 0x1fff0404: lsls r3, r1, #17 0x1fff0406: ldr r1, [pc, #240] ; (0x1fff04f8) 0x1fff0408: bpl.n 0x1fff040c 0x1fff040a: str r0, [r1, #8] 0x1fff040c: ldr r2, [r2, #0] 0x1fff040e: lsls r2, r2, #16 0x1fff0410: bpl.n 0x1fff0414 0x1fff0412: str r0, [r1, #24] 0x1fff0414: ldr r0, [pc, #228] ; (0x1fff04fc) 000005c8 0x1fff0416: ldr r2, [r4, #0] 0x1fff0418: ldr r1, [r0, #0] 0x1fff041a: ldr r0, [pc, #228] ; (0x1fff0500) 000005cc 0x1fff041c: ldr r0, [r0, #0] 0x1fff041e: bics r2, r5 0x1fff0420: str r2, [r4, #0] 0x1fff0422: ldr r2, [pc, #224] ; (0x1fff0504) 20080620 0x1fff0424: cmp r1, r2 0x1fff0426: bne.n 0x1fff042c 0x1fff0428: bl 0x1fff0094 ; set sp to r0[0], jump to r0[4] 0x1fff042c: ldr r0, [r6, #48] ; 0x30 0x1fff042e: lsls r0, r0, #29 0x1fff0430: bmi.n 0x1fff0450 { 0x1fff0432: ldr r0, [pc, #76] ; (0x1fff0480) 50002100 GPIO PIN0 register 0x1fff0434: ldr r0, [r0, #0] 0x1fff0436: lsls r0, r0, #30 0x1fff0438: bmi.n 0x1fff0450 0x1fff043a: ldr r0, [pc, #60] ; (0x1fff0478) 0x1fff043c: ldr r1, [pc, #48] ; (0x1fff0470) 0x1fff043e: ldr r0, [r0, #8] 0x1fff0440: ldr r1, [r1, #0] 0x1fff0442: cmp r0, r1 0x1fff0444: beq.n 0x1fff0450 0x1fff0446: ldr r1, [pc, #192] ; (0x1fff0508) 0x1fff0448: cmp r0, r1 0x1fff044a: beq.n 0x1fff0450 0x1fff044c: bl 0x1fff02e4 } 0x1fff0450: bl 0x1fff0348 0x1fff0454: ldr r2, [pc, #44] ; (0x1fff0484) 0x1fff0456: movs r3, #2 0x1fff0458: str r3, [r2, #4] 0x1fff045a: movs r3, #1 0x1fff045c: str r3, [r2, #4] 0x1fff045e: muls r1, r0 0x1fff0460: ldr r0, [r2, #8] 0x1fff0462: cmp r0, r1 0x1fff0464: bcc.n 0x1fff0460 0x1fff0466: movs r0, #0 0x1fff0468: str r0, [r2, #4] 0x1fff046a: bx lr 0x1fff0460: 0x42886890 0x2000d3fc 0x47706050 0x1fff00cc 0x1fff0470: 0x1fff00d0 0x100000f8 0x10000050 0x1fff00d4 0x1fff0480: 0x50002100 0x40018000 0x40044040 0x1fff1f10 0x1fff0490: 0x40048080 0x40008000 0x50002400 0x50002000 0x1fff04a0: 0x1fff1f24 0x00002ee0 0x02010440 0x1fff00c8 0x1fff04b0: 0x4003c000 0x00000458 0x000005fc 0x1fff1ff8 0x1fff04c0: 0x000005d0 0x3456abcd 0x000005ec 0x534b4950 0x1fff04d0: 0x400483c0 0x12345678 0x000005e8 0x000005f0 0x1fff04e0: 0x00000430 0x000005e0 0x0000043c 0x000005b0 0x1fff04f0: 0x000005b4 0x000005bc 0x400480c0 0x000005c8 0x1fff0500: 0x000005cc 0x20080620 0x4e697370 0x4dffb57f 0x1fff0510: 0x68a82264 0x9b004669 0xfdc5f000 0x0e240604 0x1fff0520: 0x6868d11d 0xa9012267 0xf0009b00 0x0604fdbc 0x1fff0530: 0xd1140e24 0x22692300 0x68e8a902 0xfdb3f000 0x1fff0540: 0x9802b2c4 0xd0012808 0xe008240c 0xd1062c00 0x1fff0550: 0x22692300 0x6928a903 0xfda5f000 0x220fb2c4 0x1fff046c: lsls r4, r1, #3 0x1fff046e: subs r7, r7, #7 0x1fff0470: lsls r0, r2, #3 0x1fff0472: subs r7, r7, #7 0x1fff0474: lsls r0, r7, #3 0x1fff0476: asrs r0, r0, #32 0x1fff0478: lsls r0, r2, #1 0x1fff047a: asrs r0, r0, #32 0x1fff047c: lsls r4, r2, #3 0x1fff047e: subs r7, r7, #7 0x1fff0480: movs r1, #0 0x1fff0482: str r0, [r0, r0] 0x1fff0484: strh r0, [r0, #0] 0x1fff0486: ands r1, r0 0x1fff0488: eors r0, r0 0x1fff048a: ands r4, r0 0x1fff048c: subs r0, r2, #4 0x1fff048e: subs r7, r7, #7 0x1fff0490: strh r0, [r0, #4] 0x1fff0492: ands r4, r0 0x1fff0494: strh r0, [r0, #0] 0x1fff0496: ands r0, r0 0x1fff0498: movs r4, #0 0x1fff049a: str r0, [r0, r0] 0x1fff049c: movs r0, #0 0x1fff049e: str r0, [r0, r0] 0x1fff04a0: subs r4, r4, #4 0x1fff04a2: subs r7, r7, #7 0x1fff04a4: cmp r6, #224 ; 0xe0 0x1fff04a6: movs r0, r0 0x1fff04a8: lsls r0, r0, #17 0x1fff04aa: lsls r1, r0, #8 0x1fff04ac: lsls r0, r1, #3 0x1fff04ae: subs r7, r7, #7 0x1fff04b0: stmia r0!, {} 0x1fff04b2: ands r3, r0 0x1fff04b4: lsls r0, r3, #17 0x1fff04b6: movs r0, r0 0x1fff04b8: lsls r4, r7, #23 0x1fff04ba: movs r0, r0 0x1fff04bc: subs r0, r7, #7 0x1fff04be: subs r7, r7, #7 0x1fff04c0: lsls r0, r2, #23 0x1fff04c2: movs r0, r0 0x1fff04c4: add r3, sp, #820 ; 0x334 0x1fff04c6: adds r4, #86 ; 0x56 0x1fff04c8: lsls r4, r5, #23 0x1fff04ca: movs r0, r0 0x1fff04cc: ldr r1, [pc, #320] ; (0x1fff0610) 0x1fff04ce: strh r3, [r1, r5] 0x1fff04d0: strh r0, [r0, #30] 0x1fff04d2: ands r4, r0 0x1fff04d4: ldrsb r0, [r7, r1] 0x1fff04d6: asrs r4, r6, #8 0x1fff04d8: lsls r0, r5, #23 0x1fff04da: movs r0, r0 0x1fff04dc: lsls r0, r6, #23 0x1fff04de: movs r0, r0 0x1fff04e0: lsls r0, r6, #16 0x1fff04e2: movs r0, r0 0x1fff04e4: lsls r0, r4, #23 0x1fff04e6: movs r0, r0 0x1fff04e8: lsls r4, r7, #16 0x1fff04ea: movs r0, r0 0x1fff04ec: lsls r0, r6, #22 0x1fff04ee: movs r0, r0 0x1fff04f0: lsls r4, r6, #22 0x1fff04f2: movs r0, r0 0x1fff04f4: lsls r4, r7, #22 0x1fff04f6: movs r0, r0 0x1fff04f8: strh r0, [r0, #6] 0x1fff04fa: ands r4, r0 0x1fff04fc: lsls r0, r1, #23 0x1fff04fe: movs r0, r0 0x1fff0500: lsls r4, r1, #23 0x1fff0502: movs r0, r0 0x1fff0504: lsls r0, r4, #24 0x1fff0506: movs r0, #8 0x1fff0508: strb r0, [r6, #13] 0x1fff050a: ldr r6, [pc, #420] ; (0x1fff06b0) { 0x1fff050c: push {r0, r1, r2, r3, r4, r5, r6, lr} 0x1fff050e: ldr r5, [pc, #1020] ; (0x1fff090c) 0x1fff0510: movs r2, #100 ; 0x64 0x1fff0512: ldr r0, [r5, #8] 0x1fff0514: mov r1, sp 0x1fff0516: ldr r3, [sp, #0] 0x1fff0518: bl 0x1fff10a6 0x1fff051c: lsls r4, r0, #24 0x1fff051e: lsrs r4, r4, #24 0x1fff0520: bne.n 0x1fff055e 0x1fff0522: ldr r0, [r5, #4] 0x1fff0524: movs r2, #103 ; 0x67 0x1fff0526: add r1, sp, #4 0x1fff0528: ldr r3, [sp, #0] 0x1fff052a: bl 0x1fff10a6 0x1fff052e: lsls r4, r0, #24 0x1fff0530: lsrs r4, r4, #24 0x1fff0532: bne.n 0x1fff055e 0x1fff0534: movs r3, #0 0x1fff0536: movs r2, #105 ; 0x69 0x1fff0538: add r1, sp, #8 0x1fff053a: ldr r0, [r5, #12] 0x1fff053c: bl 0x1fff10a6 0x1fff0540: uxtb r4, r0 0x1fff0542: ldr r0, [sp, #8] 0x1fff0544: cmp r0, #8 0x1fff0546: beq.n 0x1fff054c 0x1fff0548: movs r4, #12 0x1fff054a: b.n 0x1fff055e 0x1fff054c: cmp r4, #0 0x1fff054e: bne.n 0x1fff055e 0x1fff0550: movs r3, #0 0x1fff0552: movs r2, #105 ; 0x69 0x1fff0554: add r1, sp, #12 0x1fff0556: ldr r0, [r5, #16] 0x1fff0558: bl 0x1fff10a6 0x1fff055c: uxtb r4, r0 0x1fff055e: movs r2, #15 0x1fff0560: mov r0, r4 0x1fff0562: ldr r1, [r5, #0] 0x1fff0564: bl 0x1fff1064 0x1fff0568: bl 0x1ff0d9c setup_serial 0x1fff056c: ldr r0, [pc, #928] ; (0x1fff0910) 0x1fff056e: cmp r4, #0 0x1fff0570: bne.n 0x1fff05a2 0x1fff0572: b.n 0x1fff059c 0x1fff0574: ldr r1, [sp, #12] 0x1fff0576: cmp r1, #0 0x1fff0578: beq.n 0x1fff0586 0x1fff057a: ldr r1, [r0, #4] 0x1fff057c: lsls r1, r1, #23 0x1fff057e: bpl.n 0x1fff057a 0x1fff0580: ldr r1, [r0, #4] 0x1fff0582: lsls r1, r1, #23 0x1fff0584: bmi.n 0x1fff0580 0x1fff0586: ldr r1, [sp, #8] 0x1fff0588: cmp r1, #8 0x1fff058a: bne.n 0x1fff059c 0x1fff058c: ldr r2, [r0, #4] 0x1fff058e: ldr r1, [sp, #4] 0x1fff0590: strb r2, [r1, #0] 0x1fff0592: adds r1, r1, #1 0x1fff0594: str r1, [sp, #4] 0x1fff0596: ldr r1, [sp, #0] 0x1fff0598: subs r1, r1, #1 0x1fff059a: str r1, [sp, #0] 0x1fff059c: ldr r1, [sp, #0] 0x1fff059e: cmp r1, #0 0x1fff05a0: bne.n 0x1fff0574 0x1fff05a2: pop {r0, r1, r2, r3, r4, r5, r6, pc} } 0x1fff05a4: push {r4, r5, r6, lr} 0x1fff05a6: ldr r5, [pc, #868] ; (0x1fff090c) 0x1fff05a8: ldr r6, [pc, #872] ; (0x1fff0914) 0x1fff05aa: movs r3, #0 0x1fff05ac: movs r2, #105 ; 0x69 0x1fff05ae: adds r1, r6, #4 0x1fff05b0: ldr r0, [r5, #4] 0x1fff05b2: bl 0x1fff10a6 0x1fff05b6: mov r4, r6 0x1fff05b8: adds r4, #20 0x1fff05ba: str r0, [r4, #0] 0x1fff05bc: cmp r0, #0 0x1fff05be: bne.n 0x1fff05f4 0x1fff05c0: mov r1, r4 0x1fff05c2: movs r3, #0 0x1fff05c4: movs r2, #105 ; 0x69 0x1fff05c6: subs r1, #12 0x1fff05c8: ldr r0, [r5, #8] 0x1fff05ca: bl 0x1fff10a6 0x1fff05ce: str r0, [r4, #0] 0x1fff05d0: cmp r0, #0 0x1fff05d2: bne.n 0x1fff05f4 0x1fff05d4: mov r1, r4 0x1fff05d6: movs r3, #0 0x1fff05d8: movs r2, #105 ; 0x69 0x1fff05da: subs r1, #8 0x1fff05dc: ldr r0, [r5, #12] 0x1fff05de: bl 0x1fff10a6 0x1fff05e2: str r0, [r4, #0] 0x1fff05e4: cmp r0, #0 0x1fff05e6: bne.n 0x1fff05f4 0x1fff05e8: movs r0, #56 ; 0x38 0x1fff05ea: str r0, [r6, #0] 0x1fff05ec: mov r1, r4 0x1fff05ee: mov r0, r6 0x1fff05f0: bl 0x1fff1ff0 0x1fff05f4: ldr r1, [r5, #4] 0x1fff05f6: movs r2, #15 0x1fff05f8: ldr r0, [r4, #0] 0x1fff05fa: bl 0x1fff1064 0x1fff05fe: bl 0x1ff0d9c setup_serial 0x1fff0602: ldr r0, [r4, #0] 0x1fff0604: cmp r0, #10 0x1fff0606: bne.n 0x1fff0616 0x1fff0608: ldr r1, [r5, #4] 0x1fff060a: movs r2, #15 0x1fff060c: ldr r0, [r4, #4] 0x1fff060e: bl 0x1fff1064 0x1fff0612: bl 0x1ff0d9c setup_serial 0x1fff0616: pop {r4, r5, r6, pc} 0x1fff0618: push {r4, r5, r6, lr} 0x1fff061a: ldr r5, [pc, #752] ; (0x1fff090c) 0x1fff061c: ldr r6, [pc, #756] ; (0x1fff0914) 0x1fff061e: movs r3, #0 0x1fff0620: movs r2, #105 ; 0x69 0x1fff0622: adds r1, r6, #4 0x1fff0624: ldr r0, [r5, #4] 0x1fff0626: bl 0x1fff10a6 0x1fff062a: mov r4, r6 0x1fff062c: adds r4, #20 0x1fff062e: str r0, [r4, #0] 0x1fff0630: cmp r0, #0 0x1fff0632: bne.n 0x1fff0654 0x1fff0634: mov r1, r4 0x1fff0636: movs r3, #0 0x1fff0638: movs r2, #105 ; 0x69 0x1fff063a: subs r1, #12 0x1fff063c: ldr r0, [r5, #8] 0x1fff063e: bl 0x1fff10a6 0x1fff0642: str r0, [r4, #0] 0x1fff0644: cmp r0, #0 0x1fff0646: bne.n 0x1fff0654 0x1fff0648: movs r0, #53 ; 0x35 0x1fff064a: str r0, [r6, #0] 0x1fff064c: mov r1, r4 0x1fff064e: mov r0, r6 0x1fff0650: bl 0x1fff1ff0 0x1fff0654: ldr r1, [r5, #4] 0x1fff0656: movs r2, #15 0x1fff0658: ldr r0, [r4, #0] 0x1fff065a: bl 0x1fff1064 0x1fff065e: bl 0x1ff0d9c setup_serial 0x1fff0662: ldr r0, [r4, #0] 0x1fff0664: cmp r0, #8 0x1fff0666: bne.n 0x1fff06a6 0x1fff0668: ldr r0, [pc, #684] ; (0x1fff0918) 0x1fff066a: ldr r1, [pc, #688] ; (0x1fff091c) 0x1fff066c: ldr r0, [r0, #0] 0x1fff066e: ldr r1, [r1, #0] 0x1fff0670: cmp r0, r1 0x1fff0672: beq.n 0x1fff0684 0x1fff0674: ldr r1, [pc, #680] ; (0x1fff0920) 0x1fff0676: ldr r1, [r1, #0] 0x1fff0678: cmp r0, r1 0x1fff067a: beq.n 0x1fff0684 0x1fff067c: ldr r1, [pc, #676] ; (0x1fff0924) 0x1fff067e: ldr r1, [r1, #0] 0x1fff0680: cmp r0, r1 0x1fff0682: bne.n 0x1fff068a 0x1fff0684: movs r0, #0 0x1fff0686: str r0, [r4, #4] 0x1fff0688: str r0, [r4, #8] 0x1fff068a: ldr r1, [r5, #4] 0x1fff068c: movs r2, #15 0x1fff068e: ldr r0, [r4, #4] 0x1fff0690: bl 0x1fff1064 0x1fff0694: bl 0x1ff0d9c setup_serial 0x1fff0698: ldr r1, [r5, #4] 0x1fff069a: movs r2, #15 0x1fff069c: ldr r0, [r4, #8] 0x1fff069e: bl 0x1fff1064 0x1fff06a2: bl 0x1ff0d9c setup_serial 0x1fff06a6: pop {r4, r5, r6, pc} 0x1fff06a8: push {r3, r4, r5, r6, r7, lr} 0x1fff06aa: ldr r0, [pc, #636] ; (0x1fff0928) 0x1fff06ac: ldr r1, [pc, #604] ; (0x1fff090c) 0x1fff06ae: ldr r2, [r0, #0] 0x1fff06b0: ldr r0, [r1, #4] 0x1fff06b2: cmp r2, #1 0x1fff06b4: beq.n 0x1fff06ce 0x1fff06b6: ldr r4, [pc, #604] ; (0x1fff0914) 0x1fff06b8: movs r3, #0 0x1fff06ba: movs r2, #105 ; 0x69 0x1fff06bc: adds r1, r4, #4 0x1fff06be: bl 0x1fff10a6 0x1fff06c2: mov r5, r4 0x1fff06c4: adds r5, #20 0x1fff06c6: str r0, [r5, #0] 0x1fff06c8: cmp r0, #0 0x1fff06ca: beq.n 0x1fff06d6 0x1fff06cc: b.n 0x1fff06e8 0x1fff06ce: movs r2, #15 0x1fff06d0: mov r1, r0 0x1fff06d2: mov r0, r2 0x1fff06d4: b.n 0x1fff0784 0x1fff06d6: ldr r0, [pc, #564] ; (0x1fff090c) 0x1fff06d8: ldr r1, [pc, #568] ; (0x1fff0914) 0x1fff06da: ldr r0, [r0, #8] 0x1fff06dc: movs r3, #0 0x1fff06de: movs r2, #105 ; 0x69 0x1fff06e0: adds r1, #8 0x1fff06e2: bl 0x1fff10a6 0x1fff06e6: str r0, [r5, #0] 0x1fff06e8: ldr r0, [pc, #556] ; (0x1fff0918) 0x1fff06ea: ldr r1, [pc, #560] ; (0x1fff091c) 0x1fff06ec: ldr r0, [r0, #0] 0x1fff06ee: ldr r1, [r1, #0] 0x1fff06f0: movs r2, #19 0x1fff06f2: ldr r6, [pc, #568] ; (0x1fff092c) 0x1fff06f4: movs r7, #64 ; 0x40 0x1fff06f6: cmp r0, r1 0x1fff06f8: beq.n 0x1fff0702 0x1fff06fa: ldr r1, [pc, #548] ; (0x1fff0920) 0x1fff06fc: ldr r1, [r1, #0] 0x1fff06fe: cmp r0, r1 0x1fff0700: bne.n 0x1fff071c 0x1fff0702: ldr r0, [r6, #0] 0x1fff0704: orrs r0, r7 0x1fff0706: str r0, [r6, #0] 0x1fff0708: ldr r0, [r4, #4] 0x1fff070a: cmp r0, #0 0x1fff070c: bne.n 0x1fff0718 0x1fff070e: ldr r0, [pc, #544] ; (0x1fff0930) 0x1fff0710: ldr r1, [r4, #8] 0x1fff0712: ldr r0, [r0, #0] 0x1fff0714: cmp r1, r0 0x1fff0716: beq.n 0x1fff0730 0x1fff0718: str r2, [r5, #0] 0x1fff071a: b.n 0x1fff0730 0x1fff071c: ldr r1, [pc, #516] ; (0x1fff0924) 0x1fff071e: ldr r1, [r1, #0] 0x1fff0720: cmp r0, r1 0x1fff0722: bne.n 0x1fff0736 0x1fff0724: ldr r0, [r6, #0] 0x1fff0726: orrs r0, r7 0x1fff0728: str r0, [r6, #0] 0x1fff072a: ldr r0, [r4, #4] 0x1fff072c: cmp r0, #0 0x1fff072e: beq.n 0x1fff070e 0x1fff0730: ldr r0, [r6, #0] 0x1fff0732: bics r0, r7 0x1fff0734: str r0, [r6, #0] 0x1fff0736: ldr r0, [r5, #0] 0x1fff0738: cmp r0, #0 0x1fff073a: bne.n 0x1fff0750 0x1fff073c: movs r0, #52 ; 0x34 0x1fff073e: str r0, [r4, #0] 0x1fff0740: ldr r0, [pc, #496] ; (0x1fff0934) 0x1fff0742: ldr r1, [pc, #464] ; (0x1fff0914) 0x1fff0744: ldr r0, [r0, #0] 0x1fff0746: str r0, [r4, #12] 0x1fff0748: adds r1, #20 0x1fff074a: ldr r0, [pc, #456] ; (0x1fff0914) 0x1fff074c: bl 0x1fff1ff0 0x1fff0750: ldr r0, [r6, #0] 0x1fff0752: orrs r0, r7 0x1fff0754: str r0, [r6, #0] 0x1fff0756: ldr r0, [r4, #4] 0x1fff0758: cmp r0, #0 0x1fff075a: bne.n 0x1fff0776 0x1fff075c: ldr r0, [pc, #464] ; (0x1fff0930) 0x1fff075e: ldr r1, [r4, #8] 0x1fff0760: ldr r0, [r0, #0] 0x1fff0762: cmp r1, r0 0x1fff0764: bne.n 0x1fff0776 0x1fff0766: ldr r0, [r6, #0] 0x1fff0768: bics r0, r7 0x1fff076a: str r0, [r6, #0] 0x1fff076c: ldr r0, [pc, #456] ; (0x1fff0938) 0x1fff076e: ldr r0, [r0, #0] 0x1fff0770: ldr r1, [r0, #0] 0x1fff0772: ldr r0, [pc, #420] ; (0x1fff0918) 0x1fff0774: str r1, [r0, #0] 0x1fff0776: ldr r0, [r6, #0] 0x1fff0778: bics r0, r7 0x1fff077a: str r0, [r6, #0] 0x1fff077c: ldr r0, [pc, #396] ; (0x1fff090c) 0x1fff077e: movs r2, #15 0x1fff0780: ldr r1, [r0, #4] 0x1fff0782: ldr r0, [r5, #0] 0x1fff0784: bl 0x1fff1064 0x1fff0788: bl 0x1ff0d9c setup_serial 0x1fff078c: pop {r3, r4, r5, r6, r7, pc} 0x1fff078e: push {r4, r5, r6, lr} 0x1fff0790: ldr r0, [pc, #404] ; (0x1fff0928) 0x1fff0792: ldr r5, [pc, #376] ; (0x1fff090c) 0x1fff0794: ldr r1, [r0, #0] 0x1fff0796: ldr r0, [r5, #4] 0x1fff0798: cmp r1, #1 0x1fff079a: beq.n 0x1fff07b4 0x1fff079c: ldr r4, [pc, #372] ; (0x1fff0914) 0x1fff079e: movs r3, #0 0x1fff07a0: movs r2, #105 ; 0x69 0x1fff07a2: adds r1, r4, #4 0x1fff07a4: bl 0x1fff10a6 0x1fff07a8: mov r6, r4 0x1fff07aa: adds r6, #20 0x1fff07ac: str r0, [r6, #0] 0x1fff07ae: cmp r0, #0 0x1fff07b0: beq.n 0x1fff07bc 0x1fff07b2: b.n 0x1fff07e0 0x1fff07b4: movs r2, #15 0x1fff07b6: mov r1, r0 0x1fff07b8: mov r0, r2 0x1fff07ba: b.n 0x1fff082a 0x1fff07bc: ldr r1, [pc, #340] ; (0x1fff0914) 0x1fff07be: movs r3, #0 0x1fff07c0: movs r2, #105 ; 0x69 0x1fff07c2: adds r1, #8 0x1fff07c4: ldr r0, [r5, #8] 0x1fff07c6: bl 0x1fff10a6 0x1fff07ca: str r0, [r6, #0] 0x1fff07cc: cmp r0, #0 0x1fff07ce: bne.n 0x1fff07e0 0x1fff07d0: ldr r1, [pc, #320] ; (0x1fff0914) 0x1fff07d2: movs r3, #0 0x1fff07d4: movs r2, #105 ; 0x69 0x1fff07d6: adds r1, #12 0x1fff07d8: ldr r0, [r5, #12] 0x1fff07da: bl 0x1fff10a6 0x1fff07de: str r0, [r6, #0] 0x1fff07e0: ldr r0, [pc, #308] ; (0x1fff0918) 0x1fff07e2: ldr r1, [pc, #320] ; (0x1fff0924) 0x1fff07e4: ldr r0, [r0, #0] 0x1fff07e6: ldr r1, [r1, #0] 0x1fff07e8: cmp r0, r1 0x1fff07ea: bne.n 0x1fff080a 0x1fff07ec: ldr r0, [pc, #316] ; (0x1fff092c) 0x1fff07ee: ldr r1, [r0, #0] 0x1fff07f0: movs r2, #64 ; 0x40 0x1fff07f2: orrs r1, r2 0x1fff07f4: str r1, [r0, #0] 0x1fff07f6: ldr r3, [pc, #324] ; (0x1fff093c) 0x1fff07f8: ldr r1, [r4, #4] 0x1fff07fa: ldr r3, [r3, #0] 0x1fff07fc: cmp r1, r3 0x1fff07fe: bcs.n 0x1fff0804 0x1fff0800: movs r1, #19 0x1fff0802: str r1, [r6, #0] 0x1fff0804: ldr r1, [r0, #0] 0x1fff0806: bics r1, r2 0x1fff0808: str r1, [r0, #0] 0x1fff080a: ldr r0, [r6, #0] 0x1fff080c: cmp r0, #0 0x1fff080e: bne.n 0x1fff0824 0x1fff0810: movs r0, #51 ; 0x33 0x1fff0812: str r0, [r4, #0] 0x1fff0814: ldr r0, [pc, #284] ; (0x1fff0934) 0x1fff0816: ldr r1, [pc, #252] ; (0x1fff0914) 0x1fff0818: ldr r0, [r0, #0] 0x1fff081a: str r0, [r4, #16] 0x1fff081c: adds r1, #20 0x1fff081e: ldr r0, [pc, #244] ; (0x1fff0914) 0x1fff0820: bl 0x1fff1ff0 0x1fff0824: ldr r1, [r5, #4] 0x1fff0826: movs r2, #15 0x1fff0828: ldr r0, [r6, #0] 0x1fff082a: bl 0x1fff1064 0x1fff082e: bl 0x1ff0d9c setup_serial 0x1fff0832: pop {r4, r5, r6, pc} { 0x1fff0834: push {r4, r5, r6, lr} 0x1fff0836: ldr r5, [pc, #212] ; (0x1fff090c) 0x1fff0838: ldr r6, [pc, #216] ; (0x1fff0914) 0x1fff083a: movs r3, #0 0x1fff083c: movs r2, #105 ; 0x69 0x1fff083e: adds r1, r6, #4 0x1fff0840: ldr r0, [r5, #4] 0x1fff0842: bl 0x1fff10a6 0x1fff0846: mov r4, r6 0x1fff0848: adds r4, #20 0x1fff084a: str r0, [r4, #0] 0x1fff084c: cmp r0, #0 0x1fff084e: bne.n 0x1fff0870 0x1fff0850: mov r1, r4 0x1fff0852: movs r3, #0 0x1fff0854: movs r2, #105 ; 0x69 0x1fff0856: subs r1, #12 0x1fff0858: ldr r0, [r5, #8] 0x1fff085a: bl 0x1fff10a6 0x1fff085e: str r0, [r4, #0] 0x1fff0860: cmp r0, #0 0x1fff0862: bne.n 0x1fff0870 0x1fff0864: movs r0, #50 ; 0x32 0x1fff0866: str r0, [r6, #0] 0x1fff0868: mov r1, r4 0x1fff086a: mov r0, r6 0x1fff086c: bl 0x1fff1ff0 0x1fff0870: ldr r1, [r5, #4] 0x1fff0872: movs r2, #15 0x1fff0874: ldr r0, [r4, #0] 0x1fff0876: bl 0x1fff1064 0x1fff087a: bl 0x1ff0d9c setup_serial 0x1fff087e: pop {r4, r5, r6, pc} } { 0x1fff0880: push {r3, r4, r5, lr} 0x1fff0882: ldr r5, [pc, #136] ; (0x1fff090c) 0x1fff0884: movs r3, #0 0x1fff0886: movs r2, #105 ; 0x69 0x1fff0888: mov r1, sp 0x1fff088a: ldr r0, [r5, #4] 0x1fff088c: bl 0x1fff10a6 0x1fff0890: uxtb r4, r0 0x1fff0892: movs r2, #15 0x1fff0894: mov r0, r4 0x1fff0896: ldr r1, [r5, #4] 0x1fff0898: bl 0x1fff1064 0x1fff089c: bl 0x1ff0d9c setup_serial 0x1fff08a0: cmp r4, #0 0x1fff08a2: bne.n 0x1fff08b0 0x1fff08a4: ldr r0, [sp, #0] 0x1fff08a6: cmp r0, #0 0x1fff08a8: beq.n 0x1fff08ac 0x1fff08aa: movs r0, #1 0x1fff08ac: bl 0x1fff0e54 0x1fff08b0: pop {r3, r4, r5, pc} } { 0x1fff08b2: push {r2, r3, r4, r5, r6, lr} 0x1fff08b4: ldr r5, [pc, #84] ; (0x1fff090c) 100000f8 0x1fff08b6: movs r3, #0 0x1fff08b8: movs r2, #105 ; 0x69 0x1fff08ba: add r1, sp, #4 0x1fff08bc: ldr r0, [r5, #4] 0x1fff08be: bl 0x1fff10a6 0x1fff08c2: movs r3, #0 0x1fff08c4: movs r2, #105 ; 0x69 0x1fff08c6: mov r1, sp 0x1fff08c8: ldr r0, [r5, #8] 0x1fff08ca: bl 0x1fff10a6 0x1fff08ce: lsls r4, r0, #24 0x1fff08d0: lsrs r4, r4, #24 0x1fff08d2: bne.n 0x1fff0942 0x1fff08d4: movs r0, #75 ; 0x4b 0x1fff08d6: ldr r1, [sp, #4] 0x1fff08d8: lsls r0, r0, #7 0x1fff08da: cmp r1, r0 0x1fff08dc: beq.n 0x1fff0900 0x1fff08de: lsls r0, r0, #1 0x1fff08e0: cmp r1, r0 0x1fff08e2: beq.n 0x1fff0900 0x1fff08e4: lsls r0, r0, #1 0x1fff08e6: cmp r1, r0 0x1fff08e8: beq.n 0x1fff0900 0x1fff08ea: movs r0, #225 ; 0xe1 0x1fff08ec: lsls r0, r0, #8 0x1fff08ee: cmp r1, r0 0x1fff08f0: beq.n 0x1fff0900 0x1fff08f2: lsls r0, r0, #1 0x1fff08f4: cmp r1, r0 0x1fff08f6: beq.n 0x1fff0900 0x1fff08f8: lsls r0, r0, #1 0x1fff08fa: cmp r1, r0 0x1fff08fc: beq.n 0x1fff0900 0x1fff08fe: movs r4, #17 0x1fff0900: ldr r0, [sp, #0] 0x1fff0902: cmp r0, #1 0x1fff0904: beq.n 0x1fff0942 0x1fff0906: cmp r0, #2 0x1fff0908: beq.n 0x1fff0942 0x1fff090a: b.n 0x1fff0940 } 0x1fff0900: 0x28019800 0x2802d01d 0xe019d01b 0x100000f8 0x1fff0910: 0x50002100 0x1000010c 0x10000058 0x1fff00cc 0x1fff0920: 0x1fff00d0 0x1fff00d4 0x10000054 0x4003c000 0x1fff0930: 0x00000440 0x10000050 0x1fff00c8 0x00000520 0x1fff0940: 0x220f2412 0x68694620 0xfb8cf000 0xfa26f000 0x1fff090c: lsls r0, r7, #3 0x1fff090e: asrs r0, r0, #32 0x1fff0910: movs r1, #0 0x1fff0912: str r0, [r0, r0] 0x1fff0914: lsls r4, r1, #4 0x1fff0916: asrs r0, r0, #32 0x1fff0918: lsls r0, r3, #1 0x1fff091a: asrs r0, r0, #32 0x1fff091c: lsls r4, r1, #3 0x1fff091e: subs r7, r7, #7 0x1fff0920: lsls r0, r2, #3 0x1fff0922: subs r7, r7, #7 0x1fff0924: lsls r4, r2, #3 0x1fff0926: subs r7, r7, #7 0x1fff0928: lsls r4, r2, #1 0x1fff092a: asrs r0, r0, #32 0x1fff092c: stmia r0!, {} 0x1fff092e: ands r3, r0 0x1fff0930: lsls r0, r0, #17 0x1fff0932: movs r0, r0 0x1fff0934: lsls r0, r2, #1 0x1fff0936: asrs r0, r0, #32 0x1fff0938: lsls r0, r1, #3 0x1fff093a: subs r7, r7, #7 0x1fff093c: lsls r0, r4, #20 0x1fff093e: movs r0, r0 0x1fff0940: movs r4, #18 0x1fff0942: movs r2, #15 0x1fff0944: mov r0, r4 0x1fff0946: ldr r1, [r5, #4] 0x1fff0948: bl 0x1fff1064 0x1fff094c: bl 0x1ff0d9c setup_serial 0x1fff0950: cmp r4, #0 0x1fff0952: bne.n 0x1fff0960 0x1fff0954: ldr r0, [pc, #920] ; (0x1fff0cf0) 0x1fff0956: ldr r1, [sp, #0] 0x1fff0958: ldr r2, [r0, #0] 0x1fff095a: ldr r0, [sp, #4] 0x1fff095c: bl 0x1fff0d28 0x1fff0960: pop {r2, r3, r4, r5, r6, pc} 0x1fff0962: push {r3, r4, r5, lr} 0x1fff0964: ldr r4, [pc, #908] ; (0x1fff0cf4) 0x1fff0966: movs r3, #0 0x1fff0968: movs r2, #105 ; 0x69 0x1fff096a: mov r1, sp 0x1fff096c: ldr r0, [r4, #4] 0x1fff096e: bl 0x1fff10a6 0x1fff0972: lsls r0, r0, #24 0x1fff0974: lsrs r0, r0, #24 0x1fff0976: bne.n 0x1fff098a 0x1fff0978: ldr r2, [pc, #892] ; (0x1fff0cf8) 0x1fff097a: ldr r1, [sp, #0] 0x1fff097c: cmp r1, r2 0x1fff097e: bne.n 0x1fff0988 0x1fff0980: ldr r2, [pc, #888] ; (0x1fff0cfc) 0x1fff0982: movs r1, #0 0x1fff0984: str r1, [r2, #0] 0x1fff0986: b.n 0x1fff098a 0x1fff0988: movs r0, #16 0x1fff098a: movs r2, #15 0x1fff098c: ldr r1, [r4, #4] 0x1fff098e: bl 0x1fff1064 0x1fff0992: bl 0x1ff0d9c setup_serial 0x1fff0996: pop {r3, r4, r5, pc} 0x1fff0998: push {r3, r4, r5, lr} 0x1fff099a: ldr r0, [pc, #864] ; (0x1fff0cfc) 0x1fff099c: ldr r5, [pc, #852] ; (0x1fff0cf4) 0x1fff099e: ldr r0, [r0, #0] 0x1fff09a0: cmp r0, #0 0x1fff09a2: beq.n 0x1fff09a8 0x1fff09a4: movs r4, #15 0x1fff09a6: b.n 0x1fff09dc 0x1fff09a8: movs r4, #0 0x1fff09aa: ldr r0, [pc, #852] ; (0x1fff0d00) 0x1fff09ac: ldr r1, [r5, #4] 0x1fff09ae: bl 0x1fff0fb8 0x1fff09b2: cmp r0, #0 0x1fff09b4: beq.n 0x1fff09ca 0x1fff09b6: movs r3, #0 0x1fff09b8: movs r2, #102 ; 0x66 0x1fff09ba: mov r1, sp 0x1fff09bc: ldr r0, [r5, #4] 0x1fff09be: bl 0x1fff10a6 0x1fff09c2: lsls r4, r0, #24 0x1fff09c4: lsrs r4, r4, #24 0x1fff09c6: beq.n 0x1fff09ce 0x1fff09c8: b.n 0x1fff09dc 0x1fff09ca: ldr r0, [pc, #824] ; (0x1fff0d04) 0x1fff09cc: str r0, [sp, #0] 0x1fff09ce: ldr r0, [r5, #8] 0x1fff09d0: ldrb r0, [r0, #0] 0x1fff09d2: cmp r0, #84 ; 0x54 0x1fff09d4: beq.n 0x1fff09f4 0x1fff09d6: cmp r0, #65 ; 0x41 0x1fff09d8: beq.n 0x1fff09dc 0x1fff09da: movs r4, #12 0x1fff09dc: movs r2, #15 0x1fff09de: mov r0, r4 0x1fff09e0: ldr r1, [r5, #4] 0x1fff09e2: bl 0x1fff1064 0x1fff09e6: bl 0x1ff0d9c setup_serial 0x1fff09ea: cmp r4, #0 0x1fff09ec: bne.n 0x1fff09f2 0x1fff09ee: ldr r0, [sp, #0] 0x1fff09f0: blx r0 0x1fff09f2: pop {r3, r4, r5, pc} 0x1fff09f4: ldr r0, [sp, #0] 0x1fff09f6: movs r1, #1 0x1fff09f8: orrs r0, r1 0x1fff09fa: str r0, [sp, #0] 0x1fff09fc: b.n 0x1fff09dc 0x1fff09fe: push {r4, r5, r6, r7, lr} 0x1fff0a00: ldr r5, [pc, #752] ; (0x1fff0cf4) 0x1fff0a02: sub sp, #20 0x1fff0a04: movs r3, #0 0x1fff0a06: movs r2, #100 ; 0x64 0x1fff0a08: add r1, sp, #4 0x1fff0a0a: ldr r0, [r5, #8] 0x1fff0a0c: bl 0x1fff10a6 0x1fff0a10: lsls r4, r0, #24 0x1fff0a12: lsrs r4, r4, #24 0x1fff0a14: bne.n 0x1fff0a24 0x1fff0a16: ldr r0, [r5, #4] 0x1fff0a18: movs r2, #102 ; 0x66 0x1fff0a1a: add r1, sp, #8 0x1fff0a1c: ldr r3, [sp, #4] 0x1fff0a1e: bl 0x1fff10a6 0x1fff0a22: uxtb r4, r0 0x1fff0a24: movs r2, #15 0x1fff0a26: mov r0, r4 0x1fff0a28: ldr r1, [r5, #0] 0x1fff0a2a: bl 0x1fff1064 0x1fff0a2e: bl 0x1ff0d9c setup_serial 0x1fff0a32: cmp r4, #0 0x1fff0a34: bne.n 0x1fff0abe 0x1fff0a36: movs r1, #1 0x1fff0a38: ldr r0, [sp, #8] 0x1fff0a3a: lsls r1, r1, #15 0x1fff0a3c: cmp r0, r1 0x1fff0a3e: bcs.n 0x1fff0a44 0x1fff0a40: adds r0, r0, r1 0x1fff0a42: str r0, [sp, #8] 0x1fff0a44: mov r7, r0 0x1fff0a46: movs r6, #0 0x1fff0a48: ldr r0, [sp, #4] 0x1fff0a4a: mov r4, r6 0x1fff0a4c: str r0, [sp, #12] 0x1fff0a4e: b.n 0x1fff0ab8 0x1fff0a50: cmp r5, #45 ; 0x2d 0x1fff0a52: ble.n 0x1fff0a56 0x1fff0a54: movs r5, #45 ; 0x2d 0x1fff0a56: mov r2, r5 0x1fff0a58: ldr r1, [pc, #684] ; (0x1fff0d08) 0x1fff0a5a: ldr r0, [sp, #8] 0x1fff0a5c: bl 0x1fff0e76 0x1fff0a60: adds r6, r0, r6 0x1fff0a62: ldr r0, [pc, #676] ; (0x1fff0d08) 0x1fff0a64: bl 0x1ff0d9c setup_serial 0x1fff0a68: cmp r0, #0 0x1fff0a6a: bne.n 0x1fff0abe 0x1fff0a6c: ldr r0, [sp, #8] 0x1fff0a6e: adds r4, r4, #1 0x1fff0a70: adds r0, r0, r5 0x1fff0a72: str r0, [sp, #8] 0x1fff0a74: ldr r0, [sp, #4] 0x1fff0a76: subs r0, r0, r5 0x1fff0a78: str r0, [sp, #4] 0x1fff0a7a: cmp r4, #20 0x1fff0a7c: beq.n 0x1fff0a82 0x1fff0a7e: cmp r0, #0 0x1fff0a80: bne.n 0x1fff0ab8 0x1fff0a82: movs r2, #15 0x1fff0a84: ldr r1, [pc, #640] ; (0x1fff0d08) 0x1fff0a86: mov r0, r6 0x1fff0a88: bl 0x1fff1064 0x1fff0a8c: bl 0x1ff0d9c setup_serial 0x1fff0a90: movs r2, #0 0x1fff0a92: movs r1, #70 ; 0x46 0x1fff0a94: ldr r0, [pc, #624] ; (0x1fff0d08) 0x1fff0a96: bl 0x1fff0e04 0x1fff0a9a: lsls r0, r0, #24 0x1fff0a9c: lsrs r0, r0, #24 0x1fff0a9e: bne.n 0x1fff0abe 0x1fff0aa0: ldr r1, [pc, #604] ; (0x1fff0d00) 0x1fff0aa2: ldr r0, [pc, #612] ; (0x1fff0d08) 0x1fff0aa4: subs r1, r1, #3 0x1fff0aa6: bl 0x1fff0fb8 0x1fff0aaa: cmp r0, #0 0x1fff0aac: beq.n 0x1fff0ac2 0x1fff0aae: ldr r0, [sp, #12] 0x1fff0ab0: str r7, [sp, #8] 0x1fff0ab2: str r0, [sp, #4] 0x1fff0ab4: movs r4, #0 0x1fff0ab6: mov r6, r4 0x1fff0ab8: ldr r5, [sp, #4] 0x1fff0aba: cmp r5, #0 0x1fff0abc: bgt.n 0x1fff0a50 0x1fff0abe: add sp, #20 0x1fff0ac0: pop {r4, r5, r6, r7, pc} 0x1fff0ac2: ldr r0, [sp, #4] 0x1fff0ac4: str r0, [sp, #12] 0x1fff0ac6: ldr r7, [sp, #8] 0x1fff0ac8: b.n 0x1fff0ab4 0x1fff0aca: push {r4, r5, r6, r7, lr} 0x1fff0acc: sub sp, #20 0x1fff0ace: ldr r5, [pc, #548] ; (0x1fff0cf4) 0x1fff0ad0: movs r2, #100 ; 0x64 0x1fff0ad2: ldr r0, [r5, #8] 0x1fff0ad4: add r1, sp, #4 0x1fff0ad6: ldr r3, [sp, #4] 0x1fff0ad8: bl 0x1fff10a6 0x1fff0adc: lsls r4, r0, #24 0x1fff0ade: lsrs r4, r4, #24 0x1fff0ae0: bne.n 0x1fff0b00 0x1fff0ae2: ldr r0, [r5, #4] 0x1fff0ae4: movs r2, #103 ; 0x67 0x1fff0ae6: add r1, sp, #8 0x1fff0ae8: ldr r3, [sp, #4] 0x1fff0aea: bl 0x1fff10a6 0x1fff0aee: uxtb r4, r0 0x1fff0af0: cmp r4, #4 0x1fff0af2: beq.n 0x1fff0afa 0x1fff0af4: cmp r4, #2 0x1fff0af6: beq.n 0x1fff0afe 0x1fff0af8: b.n 0x1fff0b00 0x1fff0afa: movs r4, #14 0x1fff0afc: b.n 0x1fff0b00 0x1fff0afe: movs r4, #13 0x1fff0b00: ldr r0, [pc, #520] ; (0x1fff0d0c) 0x1fff0b02: ldr r1, [r0, #0] 0x1fff0b04: movs r2, #64 ; 0x40 0x1fff0b06: orrs r1, r2 0x1fff0b08: str r1, [r0, #0] 0x1fff0b0a: ldr r1, [pc, #516] ; (0x1fff0d10) 0x1fff0b0c: ldr r3, [pc, #516] ; (0x1fff0d14) 0x1fff0b0e: ldr r1, [r1, #0] 0x1fff0b10: ldr r3, [r3, #0] 0x1fff0b12: cmp r1, r3 0x1fff0b14: bne.n 0x1fff0b28 0x1fff0b16: ldr r1, [pc, #512] ; (0x1fff0d18) 0x1fff0b18: ldr r3, [sp, #8] 0x1fff0b1a: ldr r1, [r1, #0] 0x1fff0b1c: adds r1, #255 ; 0xff 0x1fff0b1e: adds r1, #255 ; 0xff 0x1fff0b20: adds r1, #2 0x1fff0b22: cmp r3, r1 0x1fff0b24: bcs.n 0x1fff0b28 0x1fff0b26: movs r4, #19 0x1fff0b28: ldr r1, [r0, #0] 0x1fff0b2a: bics r1, r2 0x1fff0b2c: str r1, [r0, #0] 0x1fff0b2e: movs r2, #15 0x1fff0b30: mov r0, r4 0x1fff0b32: ldr r1, [r5, #0] 0x1fff0b34: bl 0x1fff1064 0x1fff0b38: bl 0x1ff0d9c setup_serial 0x1fff0b3c: cmp r4, #0 0x1fff0b3e: bne.n 0x1fff0abe 0x1fff0b40: mov r5, r4 0x1fff0b42: ldr r7, [sp, #4] 0x1fff0b44: ldr r6, [sp, #8] 0x1fff0b46: b.n 0x1fff0bc4 0x1fff0b48: mov r2, sp 0x1fff0b4a: movs r1, #70 ; 0x46 0x1fff0b4c: ldr r0, [pc, #440] ; (0x1fff0d08) 0x1fff0b4e: bl 0x1fff0e04 0x1fff0b52: cmp r0, #0 0x1fff0b54: bne.n 0x1fff0abe 0x1fff0b56: ldr r0, [sp, #0] 0x1fff0b58: cmp r0, #0 0x1fff0b5a: beq.n 0x1fff0b78 0x1fff0b5c: adds r5, r5, #1 0x1fff0b5e: add r2, sp, #12 0x1fff0b60: ldr r0, [pc, #420] ; (0x1fff0d08) 0x1fff0b62: ldr r1, [sp, #8] 0x1fff0b64: bl 0x1fff0f00 0x1fff0b68: adds r4, r0, r4 0x1fff0b6a: ldr r1, [sp, #8] 0x1fff0b6c: ldr r0, [sp, #12] 0x1fff0b6e: adds r1, r1, r0 0x1fff0b70: str r1, [sp, #8] 0x1fff0b72: ldr r1, [sp, #4] 0x1fff0b74: subs r0, r1, r0 0x1fff0b76: str r0, [sp, #4] 0x1fff0b78: cmp r5, #20 0x1fff0b7a: beq.n 0x1fff0b82 0x1fff0b7c: ldr r0, [sp, #4] 0x1fff0b7e: cmp r0, #0 0x1fff0b80: bne.n 0x1fff0bc4 0x1fff0b82: movs r0, #0 0x1fff0b84: str r0, [sp, #0] 0x1fff0b86: mov r2, sp 0x1fff0b88: movs r1, #70 ; 0x46 0x1fff0b8a: ldr r0, [pc, #380] ; (0x1fff0d08) 0x1fff0b8c: bl 0x1fff0e04 0x1fff0b90: ldr r1, [sp, #0] 0x1fff0b92: uxtb r0, r0 0x1fff0b94: cmp r1, #0 0x1fff0b96: beq.n 0x1fff0b86 0x1fff0b98: cmp r0, #0 0x1fff0b9a: bne.n 0x1fff0abe 0x1fff0b9c: add r1, sp, #16 0x1fff0b9e: ldr r0, [pc, #360] ; (0x1fff0d08) 0x1fff0ba0: bl 0x1fff103a 0x1fff0ba4: ldr r0, [sp, #16] 0x1fff0ba6: cmp r4, r0 0x1fff0ba8: bne.n 0x1fff0bb4 0x1fff0baa: ldr r0, [pc, #340] ; (0x1fff0d00) 0x1fff0bac: ldr r7, [sp, #4] 0x1fff0bae: subs r0, r0, #3 0x1fff0bb0: ldr r6, [sp, #8] 0x1fff0bb2: b.n 0x1fff0bbc 0x1fff0bb4: ldr r0, [pc, #328] ; (0x1fff0d00) 0x1fff0bb6: str r7, [sp, #4] 0x1fff0bb8: adds r0, r0, #5 0x1fff0bba: str r6, [sp, #8] 0x1fff0bbc: bl 0x1ff0d9c setup_serial 0x1fff0bc0: movs r5, #0 0x1fff0bc2: mov r4, r5 0x1fff0bc4: ldr r0, [sp, #4] 0x1fff0bc6: cmp r0, #0 0x1fff0bc8: bgt.n 0x1fff0b48 0x1fff0bca: b.n 0x1fff0abe 0x1fff0bcc: push {r3, r4, r5, r6, r7, lr} 0x1fff0bce: ldr r4, [pc, #292] ; (0x1fff0cf4) 0x1fff0bd0: ldr r5, [pc, #312] ; (0x1fff0d0c) 0x1fff0bd2: ldr r0, [r4, #0] 0x1fff0bd4: movs r6, #64 ; 0x40 0x1fff0bd6: ldrb r3, [r0, #0] 0x1fff0bd8: mov r0, r4 0x1fff0bda: subs r3, #65 ; 0x41 0x1fff0bdc: ldr r1, [r0, #4] 0x1fff0bde: bl 0x1fff19b0 0x1fff0be2: adds r7, r2, #0 0x1fff0be4: strb r1, [r3, #20] 0x1fff0be6: ldrb r4, [r0, #2] 0x1fff0be8: asrs r4, r0, #14 0x1fff0bea: ldrb r4, [r0, #14] 0x1fff0bec: strb r7, [r3, r0] 0x1fff0bee: ldrb r4, [r0, #26] 0x1fff0bf0: strh r1, [r5, #32] 0x1fff0bf2: strh r2, [r6, #34] ; 0x22 0x1fff0bf4: strh r0, [r2, #32] 0x1fff0bf6: asrs r1, r0, #26 0x1fff0bf8: lsrs r4, r0, #22 0x1fff0bfa: lsls r4, r0, #2 0x1fff0bfc: bl 0x1fff0aca 0x1fff0c00: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c02: bl 0x1fff09fe 0x1fff0c06: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c08: bl 0x1fff0998 0x1fff0c0c: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c0e: bl 0x1fff0962 0x1fff0c12: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c14: bl 0x1fff08b2 0x1fff0c18: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c1a: bl 0x1fff0880 0x1fff0c1e: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c20: movs r2, #15 0x1fff0c22: movs r0, #0 0x1fff0c24: bl 0x1fff1064 0x1fff0c28: bl 0x1ff0d9c setup_serial 0x1fff0c2c: ldr r0, [pc, #236] ; (0x1fff0d1c) 0x1fff0c2e: ldr r1, [r4, #4] 0x1fff0c30: ldr r0, [r0, #52] ; 0x34 0x1fff0c32: b.n 0x1fff0cba 0x1fff0c34: ldr r0, [r5, #0] 0x1fff0c36: orrs r0, r6 0x1fff0c38: str r0, [r5, #0] 0x1fff0c3a: ldr r0, [pc, #228] ; (0x1fff0d20) 0x1fff0c3c: movs r2, #15 0x1fff0c3e: ldr r7, [r0, #0] 0x1fff0c40: movs r0, #0 0x1fff0c42: bl 0x1fff1064 0x1fff0c46: bl 0x1ff0d9c setup_serial 0x1fff0c4a: ldr r1, [r4, #4] 0x1fff0c4c: movs r2, #15 0x1fff0c4e: ldr r0, [r7, #0] 0x1fff0c50: bl 0x1fff1064 0x1fff0c54: bl 0x1ff0d9c setup_serial 0x1fff0c58: ldr r1, [r4, #4] 0x1fff0c5a: movs r2, #15 0x1fff0c5c: ldr r0, [r7, #4] 0x1fff0c5e: bl 0x1fff1064 0x1fff0c62: bl 0x1ff0d9c setup_serial 0x1fff0c66: ldr r1, [r4, #4] 0x1fff0c68: movs r2, #15 0x1fff0c6a: ldr r0, [r7, #8] 0x1fff0c6c: bl 0x1fff1064 0x1fff0c70: bl 0x1ff0d9c setup_serial 0x1fff0c74: ldr r1, [r4, #4] 0x1fff0c76: movs r2, #15 0x1fff0c78: ldr r0, [r7, #12] 0x1fff0c7a: bl 0x1fff1064 0x1fff0c7e: bl 0x1ff0d9c setup_serial 0x1fff0c82: ldr r0, [r5, #0] 0x1fff0c84: bics r0, r6 0x1fff0c86: str r0, [r5, #0] 0x1fff0c88: pop {r3, r4, r5, r6, r7, pc} 0x1fff0c8a: ldr r0, [r5, #0] 0x1fff0c8c: orrs r0, r6 0x1fff0c8e: str r0, [r5, #0] 0x1fff0c90: ldr r0, [pc, #144] ; (0x1fff0d24) 0x1fff0c92: ldr r7, [r0, #0] 0x1fff0c94: ldr r0, [r5, #0] 0x1fff0c96: bics r0, r6 0x1fff0c98: str r0, [r5, #0] 0x1fff0c9a: movs r2, #15 0x1fff0c9c: movs r0, #0 0x1fff0c9e: bl 0x1fff1064 0x1fff0ca2: bl 0x1ff0d9c setup_serial 0x1fff0ca6: uxtb r0, r7 0x1fff0ca8: movs r2, #15 0x1fff0caa: ldr r1, [r4, #4] 0x1fff0cac: bl 0x1fff1064 0x1fff0cb0: bl 0x1ff0d9c setup_serial 0x1fff0cb4: lsls r0, r7, #16 0x1fff0cb6: ldr r1, [r4, #4] 0x1fff0cb8: lsrs r0, r0, #24 0x1fff0cba: movs r2, #15 0x1fff0cbc: bl 0x1fff1064 0x1fff0cc0: bl 0x1ff0d9c setup_serial 0x1fff0cc4: pop {r3, r4, r5, r6, r7, pc} 0x1fff0cc6: bl 0x1fff0834 0x1fff0cca: pop {r3, r4, r5, r6, r7, pc} 0x1fff0ccc: bl 0x1fff078e 0x1fff0cd0: pop {r3, r4, r5, r6, r7, pc} 0x1fff0cd2: bl 0x1fff06a8 0x1fff0cd6: pop {r3, r4, r5, r6, r7, pc} 0x1fff0cd8: bl 0x1fff0618 0x1fff0cdc: pop {r3, r4, r5, r6, r7, pc} 0x1fff0cde: bl 0x1fff05a4 0x1fff0ce2: pop {r3, r4, r5, r6, r7, pc} 0x1fff0ce4: bl 0x1fff050c 0x1fff0ce8: pop {r3, r4, r5, r6, r7, pc} 0x1fff0cea: movs r2, #15 0x1fff0cec: movs r0, #1 0x1fff0cee: b.n 0x1fff0cbc 0x1fff0cf0: lsls r0, r2, #1 0x1fff0cf2: asrs r0, r0, #32 0x1fff0cf4: lsls r0, r7, #3 0x1fff0cf6: asrs r0, r0, #32 0x1fff0cf8: ldrh r2, [r3, r1] 0x1fff0cfa: movs r0, r0 0x1fff0cfc: lsls r4, r2, #1 0x1fff0cfe: asrs r0, r0, #32 0x1fff0d00: subs r7, r4, #4 0x1fff0d02: subs r7, r7, #7 0x1fff0d04: lsls r0, r6, #17 0x1fff0d06: movs r0, r0 0x1fff0d08: lsls r0, r4, #1 0x1fff0d0a: asrs r0, r0, #32 0x1fff0d0c: stmia r0!, {} 0x1fff0d0e: ands r3, r0 0x1fff0d10: lsls r0, r3, #1 0x1fff0d12: asrs r0, r0, #32 0x1fff0d14: lsls r4, r2, #3 0x1fff0d16: subs r7, r7, #7 0x1fff0d18: lsls r0, r7, #16 0x1fff0d1a: movs r0, r0 0x1fff0d1c: strh r0, [r0, #30] 0x1fff0d1e: ands r4, r0 0x1fff0d20: lsls r4, r3, #23 0x1fff0d22: movs r0, r0 0x1fff0d24: lsls r4, r6, #16 0x1fff0d26: movs r0, r0 0x1fff0d28: push {r4, lr} 0x1fff0d2a: mov r4, r1 0x1fff0d2c: cmp r2, #0 0x1fff0d2e: beq.n 0x1fff0d44 0x1fff0d30: movs r1, #26 0x1fff0d32: muls r1, r0 0x1fff0d34: movs r0, #125 ; 0x7d 0x1fff0d36: lsls r0, r0, #3 0x1fff0d38: muls r0, r2 0x1fff0d3a: bl 0x1fff11d4 0x1fff0d3e: cmp r4, #1 0x1fff0d40: beq.n 0x1fff0d62 0x1fff0d42: movs r4, #7 0x1fff0d44: ldr r1, [pc, #276] ; (0x1fff0e5c) 0x1fff0d46: ldr r2, [r1, #20] 0x1fff0d48: lsls r2, r2, #25 0x1fff0d4a: bpl.n 0x1fff0d46 0x1fff0d4c: movs r2, #128 ; 0x80 0x1fff0d4e: str r2, [r1, #12] 0x1fff0d50: str r0, [r1, #0] 0x1fff0d52: asrs r0, r0, #8 0x1fff0d54: str r0, [r1, #4] 0x1fff0d56: movs r0, #0 0x1fff0d58: str r0, [r1, #12] 0x1fff0d5a: movs r0, #1 0x1fff0d5c: str r0, [r1, #8] 0x1fff0d5e: str r4, [r1, #12] 0x1fff0d60: pop {r4, pc} 0x1fff0d62: movs r4, #3 0x1fff0d64: b.n 0x1fff0d44 serial_wait_autobaud() { 0x1fff0d66: ldr r1, [pc, #244] ; (0x1fff0e5c) 40008000 0x1fff0d68: ldr r2, [r1, #20] 40008020 ACR (autobaud control register) 0x1fff0d6a: lsls r2, r2, #26 0x1fff0d6c: bpl.n 0x1fff0d68 0x1fff0d6e: str r0, [r1, #0] 0x1fff0d70: bx lr } 0x1fff0d72: ldr r1, [pc, #232] ; (0x1fff0e5c) 0x1fff0d74: ldr r0, [r1, #20] 0x1fff0d76: lsls r0, r0, #31 0x1fff0d78: beq.n 0x1fff0d74 0x1fff0d7a: ldr r0, [r1, #0] 0x1fff0d7c: ldr r2, [pc, #224] ; (0x1fff0e60) 0x1fff0d7e: uxtb r0, r0 0x1fff0d80: ldr r2, [r2, #0] 0x1fff0d82: cmp r2, #0 0x1fff0d84: beq.n 0x1fff0d8e 0x1fff0d86: ldr r2, [r1, #20] 0x1fff0d88: lsls r2, r2, #26 0x1fff0d8a: bpl.n 0x1fff0d86 0x1fff0d8c: str r0, [r1, #0] 0x1fff0d8e: bx lr 0x1fff0d90: push {lr} 0x1fff0d92: bl 0x1fff0d72 0x1fff0d96: cmp r0, #17 0x1fff0d98: bne.n 0x1fff0d92 0x1fff0d9a: pop {pc} /* * Detect baud rate on the USART and configure */ setup_serial() { 0x1fff0d9c: push {r4, lr} 0x1fff0d9e: ldr r4, [pc, #188] ; (0x1fff0e5c) 40008000 USART 0x1fff0da0: movs r3, r0 0x1fff0da2: bne.n 0x1fff0dcc 0x1fff0da4: b.n 0x1fff0dd2 0x1fff0da6: adds r3, r3, #1 0x1fff0da8: bl 0x1fff0d66 0x1fff0dac: ldr r0, [r4, #20] 40008020 ACR (autobaud control) 0x1fff0dae: lsls r0, r0, #31 0x1fff0db0: beq.n 0x1fff0dcc 0x1fff0db2: ldr r0, [r4, #0] 0x1fff0db4: uxtb r0, r0 0x1fff0db6: cmp r0, #27 0x1fff0db8: beq.n 0x1fff0dc0 0x1fff0dba: cmp r0, #19 0x1fff0dbc: bne.n 0x1fff0dcc 0x1fff0dbe: b.n 0x1fff0dc4 return 1; 0x1fff0dc0: movs r0, #1 0x1fff0dc2: pop {r4, pc} 0x1fff0dc4: bl 0x1fff0d72 0x1fff0dc8: cmp r0, #17 0x1fff0dca: bne.n 0x1fff0dc4 0x1fff0dcc: ldrb r0, [r3, #0] 0x1fff0dce: cmp r0, #0 0x1fff0dd0: bne.n 0x1fff0da6 0x1fff0dd2: movs r0, #13 0x1fff0dd4: bl 0x1fff0d66 0x1fff0dd8: movs r0, #10 0x1fff0dda: bl 0x1fff0d66 0x1fff0dde: movs r0, #0 0x1fff0de0: pop {r4, pc} 0x1fff0de2: ldr r0, [pc, #120] ; (0x1fff0e5c) 0x1fff0de4: ldr r1, [r0, #20] 0x1fff0de6: lsls r1, r1, #31 0x1fff0de8: beq.n 0x1fff0df0 0x1fff0dea: ldr r0, [r0, #0] 0x1fff0dec: movs r0, #1 0x1fff0dee: bx lr 0x1fff0df0: movs r0, #0 0x1fff0df2: bx lr 0x1fff0df4: ldr r0, [pc, #108] ; (0x1fff0e64) 0x1fff0df6: ldr r0, [r0, #8] 0x1fff0df8: lsrs r0, r0, #2 0x1fff0dfa: b.n 0x1fff0dfe 0x1fff0dfc: subs r0, r0, #1 0x1fff0dfe: cmp r0, #0 0x1fff0e00: bne.n 0x1fff0dfc 0x1fff0e02: bx lr } 0x1fff0e04: push {r4, r5, r6, lr} 0x1fff0e06: mov r5, r0 0x1fff0e08: mov r6, r2 0x1fff0e0a: movs r3, #0 0x1fff0e0c: subs r4, r1, #1 0x1fff0e0e: bl 0x1fff0d72 0x1fff0e12: cmp r0, #27 0x1fff0e14: beq.n 0x1fff0e4a 0x1fff0e16: cmp r0, #13 0x1fff0e18: beq.n 0x1fff0e22 0x1fff0e1a: cmp r0, #10 0x1fff0e1c: beq.n 0x1fff0e22 0x1fff0e1e: cmp r3, r4 0x1fff0e20: bne.n 0x1fff0e4e 0x1fff0e22: movs r0, #0 0x1fff0e24: strb r0, [r5, r3] 0x1fff0e26: cmp r6, #0 0x1fff0e28: beq.n 0x1fff0e2c 0x1fff0e2a: str r3, [r6, #0] 0x1fff0e2c: bl 0x1fff0df4 0x1fff0e30: ldr r0, [pc, #44] ; (0x1fff0e60) 0x1fff0e32: ldr r0, [r0, #0] 0x1fff0e34: cmp r0, #0 0x1fff0e36: beq.n 0x1fff0e46 0x1fff0e38: bl 0x1fff0de2 0x1fff0e3c: cmp r0, #0 0x1fff0e3e: beq.n 0x1fff0e46 0x1fff0e40: movs r0, #10 0x1fff0e42: bl 0x1fff0d66 0x1fff0e46: movs r0, #0 0x1fff0e48: pop {r4, r5, r6, pc} 0x1fff0e4a: movs r0, #1 0x1fff0e4c: pop {r4, r5, r6, pc} 0x1fff0e40: 0xf7ff200a 0x2000ff90 0x2001bd70 0x54e8bd70 0x1fff0e50: 0xe7dc1c5b 0x60084902 0x00004770 0x40008000 0x1fff0e60: 0x1000005c 0x40018000 0xd0022800 0xb2c03020 0x1fff0e70: 0x20604770 0xb5f04770 0x24004603 0xf7ffb2d0 0x1fff0e80: 0x7008fff3 0xe0281c49 0xdb052a03 0x7818785d 0x1fff0e4e: strb r0, [r5, r3] 0x1fff0e50: adds r3, r3, #1 0x1fff0e52: b.n 0x1fff0e0e 0x1fff0e54: ldr r1, [pc, #8] ; (0x1fff0e60) 0x1fff0e56: str r0, [r1, #0] 0x1fff0e58: bx lr 0x1fff0e5a: movs r0, r0 0x1fff0e5c: strh r0, [r0, #0] 0x1fff0e5e: ands r0, r0 0x1fff0e60: lsls r4, r3, #1 0x1fff0e62: asrs r0, r0, #32 0x1fff0e64: strh r0, [r0, #0] 0x1fff0e66: ands r1, r0 0x1fff0e68: cmp r0, #0 0x1fff0e6a: beq.n 0x1fff0e72 0x1fff0e6c: adds r0, #32 0x1fff0e6e: uxtb r0, r0 0x1fff0e70: bx lr 0x1fff0e72: movs r0, #96 ; 0x60 0x1fff0e74: bx lr 0x1fff0e76: push {r4, r5, r6, r7, lr} 0x1fff0e78: mov r3, r0 0x1fff0e7a: movs r4, #0 0x1fff0e7c: uxtb r0, r2 0x1fff0e7e: bl 0x1fff0e68 0x1fff0e82: strb r0, [r1, #0] 0x1fff0e84: adds r1, r1, #1 0x1fff0e86: b.n 0x1fff0eda 0x1fff0e88: cmp r2, #3 0x1fff0e8a: blt.n 0x1fff0e98 0x1fff0e8c: ldrb r5, [r3, #1] 0x1fff0e8e: ldrb r0, [r3, #0] 0x1fff0e90: ldrb r6, [r3, #2] 0x1fff0e92: adds r0, r0, r5 0x1fff0e94: adds r4, r6, r4 0x1fff0e96: b.n 0x1fff0eee 0x1fff0e98: cmp r2, #2 0x1fff0e9a: beq.n 0x1fff0ee6 0x1fff0e9c: ldrb r5, [r3, #0] 0x1fff0e9e: mov r6, r5 0x1fff0ea0: adds r4, r5, r4 0x1fff0ea2: ldrb r0, [r3, #0] 0x1fff0ea4: lsrs r0, r0, #2 0x1fff0ea6: bl 0x1fff0e68 0x1fff0eaa: strb r0, [r1, #0] 0x1fff0eac: ldrb r0, [r3, #0] 0x1fff0eae: lsrs r7, r5, #4 0x1fff0eb0: lsls r0, r0, #30 0x1fff0eb2: lsrs r0, r0, #26 0x1fff0eb4: adds r0, r0, r7 0x1fff0eb6: bl 0x1fff0e68 0x1fff0eba: strb r0, [r1, #1] 0x1fff0ebc: lsls r0, r5, #28 0x1fff0ebe: lsrs r0, r0, #26 0x1fff0ec0: lsrs r5, r6, #6 0x1fff0ec2: adds r0, r0, r5 0x1fff0ec4: bl 0x1fff0e68 0x1fff0ec8: strb r0, [r1, #2] 0x1fff0eca: lsls r0, r6, #26 0x1fff0ecc: lsrs r0, r0, #26 0x1fff0ece: bl 0x1fff0e68 0x1fff0ed2: strb r0, [r1, #3] 0x1fff0ed4: adds r1, r1, #4 0x1fff0ed6: adds r3, r3, #3 0x1fff0ed8: subs r2, r2, #3 0x1fff0eda: cmp r2, #0 0x1fff0edc: bgt.n 0x1fff0e88 0x1fff0ede: movs r0, #0 0x1fff0ee0: strb r0, [r1, #0] 0x1fff0ee2: mov r0, r4 0x1fff0ee4: pop {r4, r5, r6, r7, pc} 0x1fff0ee6: ldrb r5, [r3, #1] 0x1fff0ee8: ldrb r0, [r3, #0] 0x1fff0eea: mov r6, r5 0x1fff0eec: adds r0, r0, r5 0x1fff0eee: adds r4, r0, r4 0x1fff0ef0: b.n 0x1fff0ea2 0x1fff0ef2: cmp r0, #96 ; 0x60 0x1fff0ef4: beq.n 0x1fff0efc 0x1fff0ef6: subs r0, #32 0x1fff0ef8: uxtb r0, r0 0x1fff0efa: bx lr 0x1fff0efc: movs r0, #0 0x1fff0efe: bx lr 0x1fff0f00: push {r4, r5, r6, r7, lr} 0x1fff0f02: mov r3, r0 0x1fff0f04: movs r6, #0 0x1fff0f06: mov r12, r2 0x1fff0f08: mov r5, r6 0x1fff0f0a: ldrb r0, [r0, #0] 0x1fff0f0c: bl 0x1fff0ef2 0x1fff0f10: mov r4, r0 0x1fff0f12: subs r0, r0, #1 0x1fff0f14: cmp r0, #44 ; 0x2c 0x1fff0f16: bhi.n 0x1fff0fb0 0x1fff0f18: adds r3, r3, #1 0x1fff0f1a: b.n 0x1fff0fac 0x1fff0f1c: cmp r4, #3 0x1fff0f1e: blt.n 0x1fff0f6c 0x1fff0f20: ldrb r0, [r3, #0] 0x1fff0f22: bl 0x1fff0ef2 0x1fff0f26: lsls r2, r0, #2 0x1fff0f28: ldrb r0, [r3, #1] 0x1fff0f2a: bl 0x1fff0ef2 0x1fff0f2e: lsrs r0, r0, #4 0x1fff0f30: orrs r2, r0 0x1fff0f32: strb r2, [r1, #0] 0x1fff0f34: ldrb r0, [r3, #1] 0x1fff0f36: bl 0x1fff0ef2 0x1fff0f3a: lsls r2, r0, #4 0x1fff0f3c: ldrb r0, [r3, #2] 0x1fff0f3e: bl 0x1fff0ef2 0x1fff0f42: lsrs r0, r0, #2 0x1fff0f44: orrs r2, r0 0x1fff0f46: strb r2, [r1, #1] 0x1fff0f48: ldrb r0, [r3, #2] 0x1fff0f4a: bl 0x1fff0ef2 0x1fff0f4e: lsls r2, r0, #6 0x1fff0f50: ldrb r0, [r3, #3] 0x1fff0f52: bl 0x1fff0ef2 0x1fff0f56: orrs r2, r0 0x1fff0f58: uxtb r0, r2 0x1fff0f5a: strb r0, [r1, #2] 0x1fff0f5c: ldrb r7, [r1, #0] 0x1fff0f5e: ldrb r2, [r1, #1] 0x1fff0f60: adds r0, r0, r6 0x1fff0f62: adds r2, r7, r2 0x1fff0f64: adds r5, r5, #3 0x1fff0f66: adds r6, r2, r0 0x1fff0f68: adds r1, r1, #3 0x1fff0f6a: b.n 0x1fff0fa8 0x1fff0f6c: cmp r4, #1 0x1fff0f6e: blt.n 0x1fff0f8a 0x1fff0f70: ldrb r0, [r3, #0] 0x1fff0f72: bl 0x1fff0ef2 0x1fff0f76: lsls r2, r0, #2 0x1fff0f78: ldrb r0, [r3, #1] 0x1fff0f7a: bl 0x1fff0ef2 0x1fff0f7e: lsrs r0, r0, #4 0x1fff0f80: orrs r2, r0 0x1fff0f82: uxtb r0, r2 0x1fff0f84: adds r5, r5, #1 0x1fff0f86: strb r0, [r1, #0] 0x1fff0f88: adds r6, r0, r6 0x1fff0f8a: cmp r4, #2 0x1fff0f8c: blt.n 0x1fff0fa8 0x1fff0f8e: ldrb r0, [r3, #1] 0x1fff0f90: bl 0x1fff0ef2 0x1fff0f94: lsls r2, r0, #4 0x1fff0f96: ldrb r0, [r3, #2] 0x1fff0f98: bl 0x1fff0ef2 0x1fff0f9c: lsrs r0, r0, #2 0x1fff0f9e: orrs r2, r0 0x1fff0fa0: uxtb r0, r2 0x1fff0fa2: adds r5, r5, #1 0x1fff0fa4: strb r0, [r1, #1] 0x1fff0fa6: adds r6, r0, r6 0x1fff0fa8: adds r3, r3, #4 0x1fff0faa: subs r4, r4, #3 0x1fff0fac: cmp r4, #0 0x1fff0fae: bgt.n 0x1fff0f1c 0x1fff0fb0: mov r0, r12 0x1fff0fb2: str r5, [r0, #0] 0x1fff0fb4: mov r0, r6 0x1fff0fb6: pop {r4, r5, r6, r7, pc} 0x1fff0fb8: push {r4, lr} 0x1fff0fba: movs r2, #0 0x1fff0fbc: b.n 0x1fff0fc4 0x1fff0fbe: cmp r3, #0 0x1fff0fc0: beq.n 0x1fff0fd4 0x1fff0fc2: adds r2, r2, #1 0x1fff0fc4: ldrb r3, [r0, r2] 0x1fff0fc6: ldrb r4, [r1, r2] 0x1fff0fc8: cmp r3, r4 0x1fff0fca: beq.n 0x1fff0fbe 0x1fff0fcc: uxtb r0, r3 0x1fff0fce: uxtb r1, r4 0x1fff0fd0: subs r0, r0, r1 0x1fff0fd2: pop {r4, pc} 0x1fff0fd4: movs r0, #0 0x1fff0fd6: pop {r4, pc} 0x1fff0fd8: push {r0, r1, r2, r3, r4, r5, r6, r7, lr} 0x1fff0fda: mov r5, r0 0x1fff0fdc: movs r0, #0 0x1fff0fde: ldrb r1, [r5, #0] 0x1fff0fe0: mov lr, r3 0x1fff0fe2: ldr r6, [sp, #36] ; 0x24 0x1fff0fe4: mov r3, r0 0x1fff0fe6: mov r4, r0 0x1fff0fe8: cmp r1, #0 0x1fff0fea: beq.n 0x1fff0ff4 0x1fff0fec: movs r1, #0 0x1fff0fee: subs r6, r6, #2 0x1fff0ff0: mov r12, r6 0x1fff0ff2: b.n 0x1fff1030 0x1fff0ff4: movs r0, #0 0x1fff0ff6: add sp, #16 0x1fff0ff8: pop {r4, r5, r6, r7, pc} 0x1fff0ffa: adds r6, r0, #1 0x1fff0ffc: cmp r6, lr 0x1fff0ffe: bgt.n 0x1fff1036 0x1fff1000: ldrb r6, [r5, r1] 0x1fff1002: cmp r6, #32 0x1fff1004: beq.n 0x1fff1016 0x1fff1006: cmp r4, r12 0x1fff1008: bge.n 0x1fff1016 0x1fff100a: lsls r7, r0, #2 0x1fff100c: ldr r7, [r2, r7] 0x1fff100e: strb r6, [r7, r3] 0x1fff1010: adds r3, r3, #1 0x1fff1012: adds r4, r4, #1 0x1fff1014: b.n 0x1fff102e 0x1fff1016: adds r6, r5, r1 0x1fff1018: ldrb r6, [r6, #1] 0x1fff101a: cmp r6, #32 0x1fff101c: bne.n 0x1fff1022 0x1fff101e: cmp r4, r12 0x1fff1020: bne.n 0x1fff102e 0x1fff1022: lsls r6, r0, #2 0x1fff1024: movs r4, #0 0x1fff1026: ldr r6, [r2, r6] 0x1fff1028: adds r0, r0, #1 0x1fff102a: strb r4, [r6, r3] 0x1fff102c: mov r3, r4 0x1fff102e: adds r1, r1, #1 0x1fff1030: ldr r6, [sp, #4] 0x1fff1032: cmp r1, r6 0x1fff1034: ble.n 0x1fff0ffa 0x1fff1036: adds r0, r0, #1 0x1fff1038: b.n 0x1fff0ff6 0x1fff103a: push {r4, r5, lr} 0x1fff103c: movs r3, #0 0x1fff103e: mov r2, r3 0x1fff1040: b.n 0x1fff1054 0x1fff1042: mov r5, r4 0x1fff1044: subs r5, #48 ; 0x30 0x1fff1046: cmp r5, #9 0x1fff1048: bhi.n 0x1fff1060 0x1fff104a: movs r5, #10 0x1fff104c: muls r3, r5 0x1fff104e: subs r3, #48 ; 0x30 0x1fff1050: adds r3, r4, r3 0x1fff1052: adds r2, r2, #1 0x1fff1054: ldrb r4, [r0, r2] 0x1fff1056: cmp r4, #0 0x1fff1058: bne.n 0x1fff1042 0x1fff105a: movs r0, #0 0x1fff105c: str r3, [r1, #0] 0x1fff105e: pop {r4, r5, pc} 0x1fff1060: movs r0, #1 0x1fff1062: pop {r4, r5, pc} 0x1fff1064: push {r4, r5, r6, lr} 0x1fff1066: mov r5, r1 0x1fff1068: movs r1, #0 0x1fff106a: subs r4, r2, #1 0x1fff106c: strb r1, [r5, r4] 0x1fff106e: cmp r0, #0 0x1fff1070: bne.n 0x1fff108e 0x1fff1072: movs r0, #48 ; 0x30 0x1fff1074: subs r4, r4, #1 0x1fff1076: strb r0, [r5, r4] 0x1fff1078: b.n 0x1fff1096 0x1fff107a: subs r4, r4, #1 0x1fff107c: movs r1, #10 0x1fff107e: bl 0x1fff18a0 0x1fff1082: cmp r1, #9 0x1fff1084: bhi.n 0x1fff108a 0x1fff1086: adds r1, #48 ; 0x30 0x1fff1088: b.n 0x1fff108c 0x1fff108a: adds r1, #55 ; 0x37 0x1fff108c: strb r1, [r5, r4] 0x1fff108e: cmp r4, #0 0x1fff1090: beq.n 0x1fff1096 0x1fff1092: cmp r0, #0 0x1fff1094: bne.n 0x1fff107a 0x1fff1096: adds r0, r5, r4 0x1fff1098: pop {r4, r5, r6, pc} 0x1fff109a: ; instruction: 0xffff1e49 0x1fff109e: ands r0, r1 0x1fff10a0: beq.n 0x1fff10a4 0x1fff10a2: movs r0, #1 0x1fff10a4: bx lr 0x1fff10a6: push {r3, r4, r5, r6, r7, lr} 0x1fff10a8: movs r4, #0 0x1fff10aa: mov r6, r1 0x1fff10ac: mov r5, r2 0x1fff10ae: mov r7, r3 0x1fff10b0: cmp r0, #0 0x1fff10b2: beq.n 0x1fff10c0 0x1fff10b4: bl 0x1fff103a 0x1fff10b8: cmp r0, #0 0x1fff10ba: beq.n 0x1fff10c0 0x1fff10bc: movs r0, #12 0x1fff10be: pop {r3, r4, r5, r6, r7, pc} 0x1fff10c0: cmp r5, #105 ; 0x69 0x1fff10c2: beq.n 0x1fff10e4 0x1fff10c4: movs r1, #4 0x1fff10c6: ldr r0, [r6, #0] 0x1fff10c8: bl 0x1fff109c 0x1fff10cc: cmp r0, #0 0x1fff10ce: beq.n 0x1fff10f4 0x1fff10d0: cmp r5, #100 ; 0x64 0x1fff10d2: beq.n 0x1fff10e8 0x1fff10d4: movs r4, #13 0x1fff10d6: cmp r5, #103 ; 0x67 0x1fff10d8: beq.n 0x1fff10ec 0x1fff10da: cmp r5, #104 ; 0x68 0x1fff10dc: beq.n 0x1fff10f0 0x1fff10de: cmp r4, #0 0x1fff10e0: beq.n 0x1fff1118 0x1fff10e2: b.n 0x1fff1190 0x1fff10e4: movs r0, #0 0x1fff10e6: pop {r3, r4, r5, r6, r7, pc} 0x1fff10e8: movs r4, #6 0x1fff10ea: b.n 0x1fff1190 0x1fff10ec: movs r4, #2 0x1fff10ee: b.n 0x1fff1190 0x1fff10f0: movs r4, #3 0x1fff10f2: b.n 0x1fff1190 0x1fff10f4: cmp r5, #101 ; 0x65 0x1fff10f6: bne.n 0x1fff1118 0x1fff10f8: ldr r0, [r6, #0] 0x1fff10fa: subs r1, r0, #7 0x1fff10fc: subs r1, #249 ; 0xf9 0x1fff10fe: beq.n 0x1fff1118 0x1fff1100: subs r1, #255 ; 0xff 0x1fff1102: subs r1, #1 0x1fff1104: beq.n 0x1fff1118 0x1fff1106: movs r1, #1 0x1fff1108: lsls r1, r1, #10 0x1fff110a: cmp r0, r1 0x1fff110c: beq.n 0x1fff1118 0x1fff110e: lsls r1, r1, #2 0x1fff1110: cmp r0, r1 0x1fff1112: beq.n 0x1fff1118 0x1fff1114: movs r0, #6 0x1fff1116: pop {r3, r4, r5, r6, r7, pc} 0x1fff1118: ldr r3, [pc, #204] ; (0x1fff11e8) 0x1fff111a: ldr r0, [r3, #0] 0x1fff111c: movs r1, #64 ; 0x40 0x1fff111e: orrs r0, r1 0x1fff1120: str r0, [r3, #0] 0x1fff1122: ldr r0, [pc, #200] ; (0x1fff11ec) 0x1fff1124: ldr r1, [r6, #0] 0x1fff1126: ldr r0, [r0, #0] 0x1fff1128: cmp r1, r0 0x1fff112a: bcc.n 0x1fff113c 0x1fff112c: ldr r0, [pc, #192] ; (0x1fff11f0) 0x1fff112e: adds r2, r1, r7 0x1fff1130: ldr r0, [r0, #0] 0x1fff1132: adds r0, r0, #1 0x1fff1134: cmp r2, r0 0x1fff1136: bhi.n 0x1fff113c 0x1fff1138: movs r0, #1 0x1fff113a: b.n 0x1fff113e 0x1fff113c: movs r0, #0 0x1fff113e: ldr r2, [pc, #180] ; (0x1fff11f4) 0x1fff1140: ldr r2, [r2, #0] 0x1fff1142: cmp r1, r2 0x1fff1144: bcc.n 0x1fff1156 0x1fff1146: adds r2, r1, r7 0x1fff1148: ldr r1, [pc, #172] ; (0x1fff11f8) 0x1fff114a: ldr r1, [r1, #0] 0x1fff114c: adds r1, r1, #1 0x1fff114e: cmp r2, r1 0x1fff1150: bhi.n 0x1fff1156 0x1fff1152: movs r1, #1 0x1fff1154: b.n 0x1fff1158 0x1fff1156: movs r1, #0 0x1fff1158: ldr r2, [r3, #0] 0x1fff115a: movs r7, #64 ; 0x40 0x1fff115c: bics r2, r7 0x1fff115e: str r2, [r3, #0] 0x1fff1160: cmp r5, #102 ; 0x66 0x1fff1162: beq.n 0x1fff116e 0x1fff1164: cmp r5, #103 ; 0x67 0x1fff1166: beq.n 0x1fff1176 0x1fff1168: cmp r5, #104 ; 0x68 0x1fff116a: beq.n 0x1fff117e 0x1fff116c: b.n 0x1fff1190 0x1fff116e: orrs r0, r1 0x1fff1170: bne.n 0x1fff1190 0x1fff1172: movs r4, #14 0x1fff1174: b.n 0x1fff1190 0x1fff1176: cmp r0, #0 0x1fff1178: bne.n 0x1fff1190 0x1fff117a: movs r4, #4 0x1fff117c: b.n 0x1fff1190 0x1fff117e: cmp r1, #0 0x1fff1180: beq.n 0x1fff1194 0x1fff1182: movs r1, #255 ; 0xff 0x1fff1184: adds r1, #1 0x1fff1186: ldr r0, [r6, #0] 0x1fff1188: bl 0x1fff109c 0x1fff118c: cmp r0, #0 0x1fff118e: bne.n 0x1fff10f0 0x1fff1190: mov r0, r4 0x1fff1192: pop {r3, r4, r5, r6, r7, pc} 0x1fff1194: movs r4, #5 0x1fff1196: b.n 0x1fff1190 0x1fff1198: push {r4, r5, r6, lr} 0x1fff119a: ldr r3, [pc, #76] ; (0x1fff11e8) 0x1fff119c: mov r4, r0 0x1fff119e: ldr r6, [r3, #0] 0x1fff11a0: movs r0, #14 0x1fff11a2: movs r5, #64 ; 0x40 0x1fff11a4: orrs r6, r5 0x1fff11a6: str r6, [r3, #0] 0x1fff11a8: ldr r6, [pc, #64] ; (0x1fff11ec) 0x1fff11aa: ldr r6, [r6, #0] 0x1fff11ac: cmp r1, r6 0x1fff11ae: bcc.n 0x1fff11ca 0x1fff11b0: adds r6, r1, r2 0x1fff11b2: ldr r1, [pc, #60] ; (0x1fff11f0) 0x1fff11b4: ldr r1, [r1, #0] 0x1fff11b6: adds r1, r1, #1 0x1fff11b8: cmp r6, r1 0x1fff11ba: bhi.n 0x1fff11ca 0x1fff11bc: ldr r1, [pc, #60] ; (0x1fff11fc) 0x1fff11be: adds r2, r4, r2 0x1fff11c0: ldr r1, [r1, #0] 0x1fff11c2: adds r1, r1, #1 0x1fff11c4: cmp r2, r1 0x1fff11c6: bhi.n 0x1fff11ca 0x1fff11c8: movs r0, #0 0x1fff11ca: ldr r1, [r3, #0] 0x1fff11cc: bics r1, r5 0x1fff11ce: str r1, [r3, #0] 0x1fff11d0: pop {r4, r5, r6, pc} 0x1fff11d2: bx lr 0x1fff11d4: push {r4, lr} 0x1fff11d6: mov r4, r1 0x1fff11d8: bl 0x1fff18a0 0x1fff11dc: lsrs r2, r4, #1 0x1fff11de: cmp r2, r1 0x1fff11e0: bcs.n 0x1fff11e4 0x1fff11e2: adds r0, r0, #1 0x1fff11e4: pop {r4, pc} 0x1fff11e6: movs r0, r0 0x1fff11e8: stmia r0!, {} 0x1fff11ea: ands r3, r0 0x1fff11ec: lsls r0, r7, #16 0x1fff11ee: movs r0, r0 0x1fff11f0: lsls r4, r7, #16 0x1fff11f2: movs r0, r0 0x1fff11f4: lsls r0, r3, #17 0x1fff11f6: movs r0, r0 0x1fff11f8: lsls r4, r3, #17 0x1fff11fa: movs r0, r0 0x1fff11fc: lsls r0, r7, #23 0x1fff11fe: movs r0, r0 0x1fff1200: push {r3, r4, r5, r6, r7, lr} 0x1fff1202: mov r5, r0 0x1fff1204: ldr r4, [pc, #460] ; (0x1fff13d4) 0x1fff1206: movs r0, #0 0x1fff1208: str r0, [r4, #24] 0x1fff120a: movs r1, #255 ; 0xff 0x1fff120c: adds r1, #120 ; 0x78 0x1fff120e: mov r0, r5 0x1fff1210: bl 0x1fff18a0 0x1fff1214: str r0, [r4, #20] 0x1fff1216: ldr r0, [r4, #20] 0x1fff1218: movs r7, #125 ; 0x7d 0x1fff121a: lsls r7, r7, #3 0x1fff121c: mov r1, r7 0x1fff121e: mov r0, r5 0x1fff1220: bl 0x1fff18a0 0x1fff1224: mov r5, r0 0x1fff1226: lsls r1, r0, #4 0x1fff1228: subs r0, r1, r5 0x1fff122a: mov r1, r7 0x1fff122c: bl 0x1fff18a0 0x1fff1230: adds r6, r0, #1 0x1fff1232: mov r0, r5 0x1fff1234: movs r1, #55 ; 0x37 0x1fff1236: muls r0, r1 0x1fff1238: mov r1, r7 0x1fff123a: bl 0x1fff18a0 0x1fff123e: lsls r1, r0, #8 0x1fff1240: adds r1, #255 ; 0xff 0x1fff1242: adds r1, #1 0x1fff1244: orrs r6, r1 0x1fff1246: mov r0, r5 0x1fff1248: movs r1, #35 ; 0x23 0x1fff124a: muls r0, r1 0x1fff124c: mov r1, r7 0x1fff124e: bl 0x1fff18a0 0x1fff1252: movs r1, #1 0x1fff1254: lsls r0, r0, #16 0x1fff1256: lsls r1, r1, #16 0x1fff1258: adds r0, r0, r1 0x1fff125a: orrs r0, r6 0x1fff125c: str r0, [r4, #16] 0x1fff125e: pop {r3, r4, r5, r6, r7, pc} 0x1fff1260: ldr r3, [pc, #368] ; (0x1fff13d4) 0x1fff1262: str r2, [r3, #4] 0x1fff1264: cmp r1, #0 0x1fff1266: beq.n 0x1fff1274 0x1fff1268: cmp r1, #2 0x1fff126a: beq.n 0x1fff1282 0x1fff126c: cmp r0, #0 0x1fff126e: beq.n 0x1fff128e 0x1fff1270: movs r0, #4 0x1fff1272: b.n 0x1fff127a 0x1fff1274: cmp r0, #0 0x1fff1276: beq.n 0x1fff127e 0x1fff1278: movs r0, #3 0x1fff127a: str r0, [r3, #0] 0x1fff127c: bx lr 0x1fff127e: movs r0, #8 0x1fff1280: b.n 0x1fff127a 0x1fff1282: cmp r0, #0 0x1fff1284: beq.n 0x1fff128a 0x1fff1286: movs r0, #5 0x1fff1288: b.n 0x1fff127a 0x1fff128a: movs r0, #10 0x1fff128c: b.n 0x1fff127a 0x1fff128e: movs r0, #9 0x1fff1290: b.n 0x1fff127a 0x1fff1292: movs r2, #5 0x1fff1294: ldr r1, [pc, #320] ; (0x1fff13d8) 0x1fff1296: lsls r2, r2, #26 0x1fff1298: str r2, [r1, #40] ; 0x28 0x1fff129a: ldr r2, [pc, #312] ; (0x1fff13d4) 0x1fff129c: str r0, [r2, #4] 0x1fff129e: movs r0, #6 0x1fff12a0: str r0, [r2, #0] 0x1fff12a2: ldr r0, [r1, #32] 0x1fff12a4: lsls r0, r0, #3 0x1fff12a6: bpl.n 0x1fff12a2 0x1fff12a8: bx lr 0x1fff12aa: push {r4, r5, r6, lr} 0x1fff12ac: mov r4, r1 0x1fff12ae: mov r5, r2 0x1fff12b0: mov r6, r0 0x1fff12b2: movs r1, #4 0x1fff12b4: bl 0x1fff109c 0x1fff12b8: cmp r0, #0 0x1fff12ba: bne.n 0x1fff12d4 0x1fff12bc: movs r1, #4 0x1fff12be: mov r0, r5 0x1fff12c0: bl 0x1fff109c 0x1fff12c4: cmp r0, #0 0x1fff12c6: bne.n 0x1fff12d4 0x1fff12c8: movs r1, #4 0x1fff12ca: mov r0, r4 0x1fff12cc: bl 0x1fff109c 0x1fff12d0: cmp r0, #0 0x1fff12d2: beq.n 0x1fff12e2 0x1fff12d4: movs r1, #2 0x1fff12d6: mov r0, r6 0x1fff12d8: bl 0x1fff109c 0x1fff12dc: cmp r0, #0 0x1fff12de: beq.n 0x1fff12e6 0x1fff12e0: b.n 0x1fff12fe 0x1fff12e2: movs r0, #2 0x1fff12e4: pop {r4, r5, r6, pc} 0x1fff12e6: movs r1, #2 0x1fff12e8: mov r0, r5 0x1fff12ea: bl 0x1fff109c 0x1fff12ee: cmp r0, #0 0x1fff12f0: bne.n 0x1fff12fe 0x1fff12f2: movs r1, #2 0x1fff12f4: mov r0, r4 0x1fff12f6: bl 0x1fff109c 0x1fff12fa: cmp r0, #0 0x1fff12fc: beq.n 0x1fff1302 0x1fff12fe: movs r0, #0 0x1fff1300: pop {r4, r5, r6, pc} 0x1fff1302: movs r0, #1 0x1fff1304: pop {r4, r5, r6, pc} 0x1fff1306: push {r1, r2, r3, r4, r5, r6, r7, lr} 0x1fff1308: mov r5, r0 0x1fff130a: mov r4, r1 0x1fff130c: mov r6, r2 0x1fff130e: bl 0x1fff12aa 0x1fff1312: mov r1, r0 0x1fff1314: str r0, [sp, #0] 0x1fff1316: mov r2, r5 0x1fff1318: movs r0, #1 0x1fff131a: bl 0x1fff1260 0x1fff131e: ldr r7, [pc, #180] ; (0x1fff13d4) 0x1fff1320: str r5, [sp, #4] 0x1fff1322: b.n 0x1fff136e 0x1fff1324: ldr r0, [sp, #0] 0x1fff1326: cmp r0, #0 0x1fff1328: beq.n 0x1fff1346 0x1fff132a: cmp r0, #2 0x1fff132c: beq.n 0x1fff1352 0x1fff132e: ldrh r0, [r4, #0] 0x1fff1330: adds r4, r4, #2 0x1fff1332: str r0, [r7, #8] 0x1fff1334: adds r5, r5, #2 0x1fff1336: subs r6, r6, #2 0x1fff1338: movs r1, #64 ; 0x40 0x1fff133a: mov r0, r5 0x1fff133c: bl 0x1fff109c 0x1fff1340: cmp r0, #0 0x1fff1342: bne.n 0x1fff136e 0x1fff1344: b.n 0x1fff135c 0x1fff1346: ldrb r0, [r4, #0] 0x1fff1348: adds r4, r4, #1 0x1fff134a: str r0, [r7, #8] 0x1fff134c: adds r5, r5, #1 0x1fff134e: subs r6, r6, #1 0x1fff1350: b.n 0x1fff1338 0x1fff1352: ldmia r4!, {r0} 0x1fff1354: str r0, [r7, #8] 0x1fff1356: adds r5, r5, #4 0x1fff1358: subs r6, r6, #4 0x1fff135a: b.n 0x1fff1338 0x1fff135c: ldr r0, [sp, #4] 0x1fff135e: bl 0x1fff1292 0x1fff1362: mov r2, r5 0x1fff1364: str r5, [sp, #4] 0x1fff1366: movs r0, #1 0x1fff1368: ldr r1, [sp, #0] 0x1fff136a: bl 0x1fff1260 0x1fff136e: cmp r6, #0 0x1fff1370: bne.n 0x1fff1324 0x1fff1372: movs r1, #64 ; 0x40 0x1fff1374: mov r0, r5 0x1fff1376: bl 0x1fff109c 0x1fff137a: cmp r0, #0 0x1fff137c: beq.n 0x1fff1384 0x1fff137e: ldr r0, [sp, #4] 0x1fff1380: bl 0x1fff1292 0x1fff1384: movs r0, #0 0x1fff1386: str r0, [r7, #0] 0x1fff1388: str r0, [r7, #20] 0x1fff138a: pop {r1, r2, r3, r4, r5, r6, r7, pc} 0x1fff138c: push {r3, r4, r5, r6, r7, lr} 0x1fff138e: mov r7, r0 0x1fff1390: mov r4, r1 0x1fff1392: mov r5, r2 0x1fff1394: bl 0x1fff12aa 0x1fff1398: mov r6, r0 0x1fff139a: mov r1, r0 0x1fff139c: mov r2, r7 0x1fff139e: movs r0, #0 0x1fff13a0: bl 0x1fff1260 0x1fff13a4: ldr r0, [pc, #44] ; (0x1fff13d4) 0x1fff13a6: b.n 0x1fff13b8 0x1fff13a8: cmp r6, #0 0x1fff13aa: beq.n 0x1fff13c4 0x1fff13ac: ldr r1, [r0, #12] 0x1fff13ae: cmp r6, #2 0x1fff13b0: beq.n 0x1fff13ce 0x1fff13b2: strh r1, [r4, #0] 0x1fff13b4: adds r4, r4, #2 0x1fff13b6: subs r5, r5, #2 0x1fff13b8: cmp r5, #0 0x1fff13ba: bne.n 0x1fff13a8 0x1fff13bc: movs r1, #0 0x1fff13be: str r1, [r0, #0] 0x1fff13c0: str r1, [r0, #20] 0x1fff13c2: pop {r3, r4, r5, r6, r7, pc} 0x1fff13c4: ldr r1, [r0, #12] 0x1fff13c6: strb r1, [r4, #0] 0x1fff13c8: adds r4, r4, #1 0x1fff13ca: subs r5, r5, #1 0x1fff13cc: b.n 0x1fff13b8 0x1fff13ce: stmia r4!, {r1} 0x1fff13d0: subs r5, r5, #4 0x1fff13d2: b.n 0x1fff13b8 0x1fff13d4: stmia r0!, {r7} 0x1fff13d6: ands r3, r0 0x1fff13d8: ldmia r7, {r6, r7} 0x1fff13da: ands r3, r0 { 0x1fff13dc: push {r0, r1, r4, r5, r6, r7, lr} 0x1fff13de: sub sp, #28 0x1fff13e0: movs r0, #1 0x1fff13e2: movs r6, #0 0x1fff13e4: str r0, [sp, #12] 0x1fff13e6: bl 0x1fff1616 0x1fff13ea: mov r4, r0 0x1fff13ec: bl 0x1fff1610 0x1fff13f0: ldr r1, [pc, #496] ; (0x1fff15e4) 0x1fff13f2: ldr r0, [r1, #0] 0x1fff13f4: movs r2, #64 ; 0x40 0x1fff13f6: orrs r0, r2 0x1fff13f8: str r0, [r1, #0] 0x1fff13fa: ldr r0, [pc, #492] ; (0x1fff15e8) 0x1fff13fc: ldr r0, [r0, #0] 0x1fff13fe: str r0, [sp, #8] 0x1fff1400: ldr r0, [r1, #0] 0x1fff1402: bics r0, r2 0x1fff1404: str r0, [r1, #0] 0x1fff1406: mov r0, r4 0x1fff1408: bl 0x1fff1600 0x1fff140c: ldr r0, [sp, #28] 0x1fff140e: ldr r1, [r0, #0] 0x1fff1410: ldr r0, [sp, #32] 0x1fff1412: str r1, [r0, #4] 0x1fff1414: ldr r0, [sp, #28] 0x1fff1416: ldr r1, [pc, #472] ; (0x1fff15f0) 0x1fff1418: ldr r7, [r0, #0] 0x1fff141a: ldr r0, [pc, #464] ; (0x1fff15ec) 0x1fff141c: adds r0, r7, r0 0x1fff141e: cmp r0, r1 0x1fff1420: bcs.n 0x1fff1434 0x1fff1422: ldr r0, [sp, #28] 0x1fff1424: ldr r1, [sp, #8] 0x1fff1426: ldr r0, [r0, #4] 0x1fff1428: str r0, [sp, #0] 0x1fff142a: cmp r0, r1 0x1fff142c: bhi.n 0x1fff1434 0x1fff142e: lsls r0, r0, #8 0x1fff1430: cmp r0, r7 0x1fff1432: bcs.n 0x1fff143e 0x1fff1434: ldr r1, [sp, #32] 0x1fff1436: movs r0, #1 0x1fff1438: str r0, [r1, #0] 0x1fff143a: add sp, #36 ; 0x24 0x1fff143c: pop {r4, r5, r6, r7, pc} } 0x1fff143e: ldr r0, [sp, #28] 0x1fff1440: ldr r0, [r0, #8] 0x1fff1442: str r0, [sp, #20] 0x1fff1444: cmp r0, #3 0x1fff1446: bls.n 0x1fff1450 0x1fff1448: ldr r0, [sp, #32] 0x1fff144a: movs r1, #2 0x1fff144c: str r1, [r0, #0] 0x1fff144e: b.n 0x1fff143a 0x1fff1450: movs r4, #1 0x1fff1452: movs r5, #0 0x1fff1454: str r7, [sp, #4] 0x1fff1456: str r4, [sp, #16] 0x1fff1458: b.n 0x1fff14ea 0x1fff145a: ldr r1, [sp, #0] 0x1fff145c: ldr r0, [sp, #4] 0x1fff145e: bl 0x1fff18a0 0x1fff1462: ldr r1, [sp, #0] 0x1fff1464: ldr r2, [sp, #4] 0x1fff1466: muls r1, r0 0x1fff1468: cmp r1, r2 0x1fff146a: bne.n 0x1fff1474 0x1fff146c: str r0, [sp, #16] 0x1fff146e: movs r0, #0 0x1fff1470: str r0, [sp, #12] 0x1fff1472: b.n 0x1fff14ea 0x1fff1474: ldr r2, [sp, #20] 0x1fff1476: cmp r2, #2 0x1fff1478: beq.n 0x1fff147e 0x1fff147a: cmp r2, #3 0x1fff147c: bne.n 0x1fff14aa 0x1fff147e: cmp r0, #0 0x1fff1480: beq.n 0x1fff14aa 0x1fff1482: cmp r5, #0 0x1fff1484: beq.n 0x1fff14a6 0x1fff1486: ldr r2, [sp, #0] 0x1fff1488: mov r3, r7 0x1fff148a: muls r3, r5 0x1fff148c: muls r2, r6 0x1fff148e: subs r2, r3, r2 0x1fff1490: bpl.n 0x1fff1494 0x1fff1492: negs r2, r2 0x1fff1494: mov r3, r7 0x1fff1496: muls r2, r0 0x1fff1498: muls r3, r4 0x1fff149a: subs r1, r3, r1 0x1fff149c: bpl.n 0x1fff14a0 0x1fff149e: negs r1, r1 0x1fff14a0: muls r1, r6 0x1fff14a2: cmp r1, r2 0x1fff14a4: bge.n 0x1fff14aa 0x1fff14a6: mov r5, r4 0x1fff14a8: mov r6, r0 0x1fff14aa: ldr r1, [sp, #20] 0x1fff14ac: cmp r1, #1 0x1fff14ae: beq.n 0x1fff14b4 0x1fff14b0: cmp r1, #3 0x1fff14b2: bne.n 0x1fff14e2 0x1fff14b4: cmp r5, #0 0x1fff14b6: beq.n 0x1fff1502 0x1fff14b8: ldr r1, [sp, #0] 0x1fff14ba: mov r2, r7 0x1fff14bc: adds r0, r0, #1 0x1fff14be: muls r2, r5 0x1fff14c0: muls r1, r6 0x1fff14c2: subs r2, r2, r1 0x1fff14c4: bpl.n 0x1fff14c8 0x1fff14c6: negs r2, r2 0x1fff14c8: ldr r1, [sp, #0] 0x1fff14ca: mov r3, r7 0x1fff14cc: muls r2, r0 0x1fff14ce: muls r3, r4 0x1fff14d0: muls r1, r0 0x1fff14d2: subs r1, r3, r1 0x1fff14d4: bpl.n 0x1fff14d8 0x1fff14d6: negs r1, r1 0x1fff14d8: muls r1, r6 0x1fff14da: cmp r1, r2 0x1fff14dc: bge.n 0x1fff14e2 0x1fff14de: mov r5, r4 0x1fff14e0: mov r6, r0 0x1fff14e2: ldr r0, [sp, #4] 0x1fff14e4: adds r0, r7, r0 0x1fff14e6: adds r4, r4, #1 0x1fff14e8: str r0, [sp, #4] 0x1fff14ea: ldr r1, [sp, #8] 0x1fff14ec: ldr r0, [sp, #4] 0x1fff14ee: cmp r0, r1 0x1fff14f0: bhi.n 0x1fff14f8 0x1fff14f2: ldr r0, [sp, #12] 0x1fff14f4: cmp r0, #0 0x1fff14f6: bne.n 0x1fff145a 0x1fff14f8: ldr r0, [sp, #20] 0x1fff14fa: movs r7, #0 0x1fff14fc: cmp r0, #0 0x1fff14fe: beq.n 0x1fff1508 0x1fff1500: b.n 0x1fff150e 0x1fff1502: mov r5, r4 0x1fff1504: adds r0, r0, #1 0x1fff1506: b.n 0x1fff14e0 0x1fff1508: ldr r0, [sp, #12] 0x1fff150a: cmp r0, #1 0x1fff150c: beq.n 0x1fff1532 0x1fff150e: cmp r5, #0 0x1fff1510: bne.n 0x1fff1518 0x1fff1512: ldr r0, [sp, #12] 0x1fff1514: cmp r0, #1 0x1fff1516: beq.n 0x1fff1532 0x1fff1518: ldr r1, [sp, #32] 0x1fff151a: movs r0, #0 0x1fff151c: str r0, [r1, #0] 0x1fff151e: ldr r0, [sp, #12] 0x1fff1520: cmp r0, #0 0x1fff1522: beq.n 0x1fff1544 0x1fff1524: mov r4, r5 0x1fff1526: str r6, [sp, #16] 0x1fff1528: ldr r0, [sp, #28] 0x1fff152a: ldr r2, [pc, #200] ; (0x1fff15f4) 0x1fff152c: ldr r0, [r0, #0] 0x1fff152e: muls r0, r4 0x1fff1530: b.n 0x1fff155a 0x1fff1532: movs r0, #1 0x1fff1534: movs r4, #0 0x1fff1536: str r0, [sp, #16] 0x1fff1538: ldr r1, [sp, #32] 0x1fff153a: movs r0, #3 0x1fff153c: str r0, [r1, #0] 0x1fff153e: ldr r0, [sp, #28] 0x1fff1540: ldr r1, [r0, #0] 0x1fff1542: b.n 0x1fff154e 0x1fff1544: cmp r4, #1 0x1fff1546: bne.n 0x1fff1528 0x1fff1548: ldr r0, [sp, #28] 0x1fff154a: movs r4, #0 0x1fff154c: ldr r1, [r0, #4] 0x1fff154e: ldr r0, [sp, #32] 0x1fff1550: str r1, [r0, #4] 0x1fff1552: b.n 0x1fff156e 0x1fff1554: adds r7, r7, #1 0x1fff1556: cmp r7, #4 0x1fff1558: beq.n 0x1fff1564 0x1fff155a: mov r1, r0 0x1fff155c: lsls r1, r7 0x1fff155e: lsls r1, r1, #1 0x1fff1560: cmp r1, r2 0x1fff1562: bcc.n 0x1fff1554 0x1fff1564: ldr r1, [sp, #16] 0x1fff1566: bl 0x1fff18a0 0x1fff156a: ldr r1, [sp, #32] 0x1fff156c: str r0, [r1, #4] 0x1fff156e: ldr r1, [pc, #136] ; (0x1fff15f8) 0x1fff1570: ldr r0, [sp, #16] 0x1fff1572: str r0, [r1, #56] ; 0x38 0x1fff1574: ldr r3, [pc, #132] ; (0x1fff15fc) 0x1fff1576: movs r5, #128 ; 0x80 0x1fff1578: ldr r0, [r3, #56] ; 0x38 0x1fff157a: cmp r4, #0 0x1fff157c: beq.n 0x1fff1596 0x1fff157e: bics r0, r5 0x1fff1580: str r0, [r3, #56] ; 0x38 0x1fff1582: lsls r0, r7, #5 0x1fff1584: subs r4, r4, #1 0x1fff1586: orrs r0, r4 0x1fff1588: ldr r4, [pc, #108] ; (0x1fff15f8) 0x1fff158a: subs r4, #64 ; 0x40 0x1fff158c: str r0, [r4, #8] 0x1fff158e: ldr r0, [sp, #28] 0x1fff1590: ldr r2, [r0, #12] 0x1fff1592: adds r0, r2, #1 0x1fff1594: b.n 0x1fff15a2 0x1fff1596: orrs r0, r5 0x1fff1598: str r0, [r3, #56] ; 0x38 0x1fff159a: b.n 0x1fff143a 0x1fff159c: cmp r2, #0 0x1fff159e: beq.n 0x1fff15a2 0x1fff15a0: subs r0, r0, #1 0x1fff15a2: ldr r6, [r4, #12] 0x1fff15a4: lsls r6, r6, #31 0x1fff15a6: bne.n 0x1fff15ac 0x1fff15a8: cmp r0, #0 0x1fff15aa: bne.n 0x1fff159c 0x1fff15ac: ldr r0, [r4, #12] 0x1fff15ae: lsls r0, r0, #31 0x1fff15b0: beq.n 0x1fff15c8 0x1fff15b2: movs r0, #3 0x1fff15b4: str r0, [r1, #48] ; 0x30 0x1fff15b6: movs r0, #1 0x1fff15b8: str r0, [r1, #52] ; 0x34 0x1fff15ba: movs r2, #0 0x1fff15bc: str r2, [r1, #52] ; 0x34 0x1fff15be: str r0, [r1, #52] ; 0x34 0x1fff15c0: ldr r0, [r1, #52] ; 0x34 0x1fff15c2: lsls r0, r0, #31 0x1fff15c4: beq.n 0x1fff15c0 0x1fff15c6: b.n 0x1fff143a 0x1fff15c8: ldr r0, [r3, #56] ; 0x38 0x1fff15ca: orrs r0, r5 0x1fff15cc: str r0, [r3, #56] ; 0x38 0x1fff15ce: ldr r0, [sp, #32] 0x1fff15d0: movs r2, #4 0x1fff15d2: str r2, [r0, #0] 0x1fff15d4: movs r0, #1 0x1fff15d6: str r0, [r1, #56] ; 0x38 0x1fff15d8: ldr r0, [sp, #28] 0x1fff15da: ldr r1, [r0, #0] 0x1fff15dc: ldr r0, [sp, #32] 0x1fff15de: str r1, [r0, #4] 0x1fff15e0: b.n 0x1fff143a 0x1fff15e2: movs r0, r0 0x1fff15e4: stmia r0!, {} 0x1fff15e6: ands r3, r0 0x1fff15e8: lsls r4, r6, #23 0x1fff15ea: movs r0, r0 0x1fff15ec: bhi.n 0x1fff15d0 0x1fff15ee: ; instruction: 0xffff3a99 0x1fff15f2: movs r0, r0 0x1fff15f4: str r0, [r4, #20] 0x1fff15f6: movs r2, r0 0x1fff15f8: strh r0, [r0, #2] 0x1fff15fa: ands r4, r0 0x1fff15fc: strh r0, [r0, #16] 0x1fff15fe: ands r4, r0 Reset stuff in preparation for starting application { 0x1fff1600: ldr r1, [pc, #244] ; (0x1fff16f8) c0de0000 0x1fff1602: uxth r0, r0 0x1fff1604: orrs r0, r1 0x1fff1606: ldr r1, [pc, #244] ; (0x1fff16fc) 40048200 SCB + 0x200 0x1fff1608: str r0, [r1, #36] ; 0x24 (SCB + 0x224) 0x1fff160a: ldr r0, [pc, #244] ; (0x1fff1700) 4003c000 flash controller 0x1fff160c: ldr r0, [r0, #0] 0x1fff160e: bx lr } 0x1fff1610: movs r1, #96 ; 0x60 0x1fff1612: orrs r0, r1 0x1fff1614: b.n 0x1fff1600 0x1fff1616: ldr r0, [pc, #228] ; (0x1fff16fc) 0x1fff1618: ldr r0, [r0, #36] ; 0x24 0x1fff161a: bx lr } { 0x1fff161c: push {r3, r4, r5, r6, r7, lr} 0x1fff161e: mov r2, r0 0x1fff1620: ldr r0, [pc, #216] ; (0x1fff16fc) 0x1fff1622: mov r4, r1 0x1fff1624: ldr r0, [r0, #36] ; 0x24 0x1fff1626: str r0, [sp, #0] 0x1fff1628: bl 0x1fff1610 0x1fff162c: ldr r3, [pc, #208] ; (0x1fff1700) 0x1fff162e: ldr r0, [r3, #0] 0x1fff1630: movs r1, #64 ; 0x40 0x1fff1632: orrs r0, r1 0x1fff1634: str r0, [r3, #0] 0x1fff1636: ldr r0, [pc, #208] ; (0x1fff1708) 0x1fff1638: ldr r1, [pc, #200] ; (0x1fff1704) 0x1fff163a: str r1, [r0, #16] 0x1fff163c: ldr r5, [pc, #204] ; (0x1fff170c) 0x1fff163e: movs r1, #125 ; 0x7d 0x1fff1640: ldr r0, [r2, #0] 0x1fff1642: lsls r1, r1, #3 0x1fff1644: ldr r5, [r5, #0] 0x1fff1646: muls r1, r0 0x1fff1648: cmp r1, r5 0x1fff164a: bhi.n 0x1fff165c 0x1fff164c: cmp r0, #0 0x1fff164e: beq.n 0x1fff165c 0x1fff1650: ldr r0, [r2, #4] 0x1fff1652: cmp r0, #3 0x1fff1654: bls.n 0x1fff1660 0x1fff1656: movs r0, #2 0x1fff1658: str r0, [r4, #0] 0x1fff165a: b.n 0x1fff16e2 0x1fff165c: movs r0, #1 0x1fff165e: b.n 0x1fff1658 0x1fff1660: movs r0, #0 0x1fff1662: str r0, [r4, #0] 0x1fff1664: ldr r4, [pc, #148] ; (0x1fff16fc) 0x1fff1666: subs r4, #192 ; 0xc0 0x1fff1668: ldr r1, [r4, #32] 0x1fff166a: str r0, [r4, #32] 0x1fff166c: uxtb r1, r1 0x1fff166e: mov r12, r1 0x1fff1670: ldr r0, [r3, #16] 0x1fff1672: lsrs r0, r0, #8 0x1fff1674: lsls r0, r0, #8 0x1fff1676: adds r0, r0, #2 0x1fff1678: str r0, [r3, #16] 0x1fff167a: ldr r0, [r3, #0] 0x1fff167c: ldr r7, [pc, #144] ; (0x1fff1710) 0x1fff167e: ands r0, r7 0x1fff1680: str r0, [r3, #0] 0x1fff1682: ldr r0, [r2, #4] 0x1fff1684: cmp r0, #0 0x1fff1686: beq.n 0x1fff16ce 0x1fff1688: ldr r1, [r2, #0] 0x1fff168a: movs r5, #6 0x1fff168c: muls r1, r5 0x1fff168e: ldr r5, [pc, #132] ; (0x1fff1714) 0x1fff1690: lsls r0, r0, #1 0x1fff1692: adds r1, r1, r5 0x1fff1694: adds r0, r1, r0 0x1fff1696: subs r0, #8 0x1fff1698: ldrb r1, [r0, #0] 0x1fff169a: ldrb r0, [r0, #1] 0x1fff169c: str r0, [r4, #32] 0x1fff169e: ldr r5, [r3, #16] 0x1fff16a0: movs r4, #3 0x1fff16a2: lsls r4, r4, #14 0x1fff16a4: bics r5, r4 0x1fff16a6: lsrs r4, r1, #4 0x1fff16a8: ldr r6, [pc, #108] ; (0x1fff1718) 0x1fff16aa: lsls r4, r4, #1 0x1fff16ac: ldrh r6, [r6, r4] 0x1fff16ae: orrs r5, r6 0x1fff16b0: str r5, [r3, #16] 0x1fff16b2: ldr r5, [r3, #0] 0x1fff16b4: ldr r6, [pc, #96] ; (0x1fff1718) 0x1fff16b6: ands r5, r7 0x1fff16b8: subs r6, #12 0x1fff16ba: ldrh r4, [r6, r4] 0x1fff16bc: orrs r5, r4 0x1fff16be: str r5, [r3, #0] 0x1fff16c0: ldr r4, [r3, #16] 0x1fff16c2: lsls r1, r1, #28 0x1fff16c4: lsrs r4, r4, #8 0x1fff16c6: lsls r4, r4, #8 0x1fff16c8: lsrs r1, r1, #28 0x1fff16ca: orrs r4, r1 0x1fff16cc: str r4, [r3, #16] 0x1fff16ce: cmp r12, r0 0x1fff16d0: bls.n 0x1fff16e2 0x1fff16d2: ldr r1, [r2, #8] 0x1fff16d4: movs r0, #0 0x1fff16d6: movs r2, #25 0x1fff16d8: muls r1, r2 0x1fff16da: b.n 0x1fff16de 0x1fff16dc: adds r0, r0, #1 0x1fff16de: cmp r1, r0 0x1fff16e0: bhi.n 0x1fff16dc 0x1fff16e2: ldr r0, [pc, #36] ; (0x1fff1708) 0x1fff16e4: movs r1, #0 0x1fff16e6: str r1, [r0, #16] 0x1fff16e8: ldr r0, [r3, #0] 0x1fff16ea: movs r1, #64 ; 0x40 0x1fff16ec: bics r0, r1 0x1fff16ee: str r0, [r3, #0] 0x1fff16f0: ldr r0, [sp, #0] 0x1fff16f2: bl 0x1fff1600 0x1fff16f6: pop {r3, r4, r5, r6, r7, pc} 0x1fff16f0: 0xf7ff9800 0xbdf8ff85 0xc0de0000 0x40048200 0x1fff1700: 0x4003c000 0x12345678 0x400483c0 0x000005f4 0x1fff1710: 0xffffdfef 0x00000680 0x1fff1f80 0x1c04b510 0x1fff16f8: movs r0, r0 0x1fff16fa: stmia r0!, {r1, r2, r3, r4, r6, r7} 0x1fff16fc: strh r0, [r0, #16] 0x1fff16fe: ands r4, r0 0x1fff1700: stmia r0!, {} 0x1fff1702: ands r3, r0 0x1fff1704: ldrsb r0, [r7, r1] 0x1fff1706: asrs r4, r6, #8 0x1fff1708: strh r0, [r0, #30] 0x1fff170a: ands r4, r0 0x1fff170c: lsls r4, r6, #23 0x1fff170e: movs r0, r0 0x1fff1710: svc 239 ; 0xef 0x1fff1712: vcvt.f.u d16, d0 0x1fff1716: movs r0, r0 0x1fff1718: subs r0, r0, #6 0x1fff171a: subs r7, r7, #7 0x1fff171c: push {r4, lr} 0x1fff171e: adds r4, r0, #0 0x1fff1720: adds r0, r1, #0 0x1fff1722: adds r1, r2, #0 0x1fff1724: bl 0x1fff173c 0x1fff1728: stmia r4!, {r0, r1} 0x1fff172a: pop {r4, pc} 0x1fff172c: push {r4, lr} 0x1fff172e: adds r4, r0, #0 0x1fff1730: adds r0, r1, #0 0x1fff1732: adds r1, r2, #0 0x1fff1734: bl 0x1fff1742 0x1fff1738: stmia r4!, {r0, r1} 0x1fff173a: pop {r4, pc} 0x1fff173c: adds r3, r0, #0 0x1fff173e: orrs r3, r1 0x1fff1740: bmi.n 0x1fff17d8 0x1fff1742: push {r4, r5, lr} 0x1fff1744: mov r12, r0 0x1fff1746: mov lr, r1 0x1fff1748: subs r2, r1, #1 0x1fff174a: bmi.n 0x1fff17cc 0x1fff174c: movs r5, #30 0x1fff174e: lsrs r2, r1, #15 0x1fff1750: bne.n 0x1fff1756 0x1fff1752: subs r5, #16 0x1fff1754: lsls r1, r1, #16 0x1fff1756: lsrs r2, r1, #23 0x1fff1758: bne.n 0x1fff175e 0x1fff175a: subs r5, #8 0x1fff175c: lsls r1, r1, #8 0x1fff175e: lsrs r2, r1, #27 0x1fff1760: bne.n 0x1fff1768 0x1fff1762: subs r5, #4 0x1fff1764: lsls r1, r1, #4 0x1fff1766: lsrs r2, r1, #27 0x1fff1768: add r3, pc, #160 ; (adr r3, 0x1fff180c) 0x1fff176a: ldrb r2, [r3, r2] 0x1fff176c: subs r5, r5, r2 0x1fff176e: lsls r1, r2 0x1fff1770: subs r3, #111 ; 0x6f 0x1fff1772: lsrs r2, r1, #23 0x1fff1774: ldrb r3, [r3, r2] 0x1fff1776: adds r3, #255 ; 0xff 0x1fff1778: lsrs r2, r1, #10 0x1fff177a: muls r2, r3 0x1fff177c: asrs r2, r2, #6 0x1fff177e: muls r2, r3 0x1fff1780: lsls r3, r3, #24 0x1fff1782: subs r3, r3, r2 0x1fff1784: lsrs r3, r3, #15 0x1fff1786: subs r3, #1 0x1fff1788: lsrs r2, r0, #17 0x1fff178a: muls r2, r3 0x1fff178c: lsrs r2, r2, #21 0x1fff178e: lsls r4, r2, #11 0x1fff1790: lsls r0, r0, #9 0x1fff1792: muls r2, r1 0x1fff1794: subs r0, r0, r2 0x1fff1796: lsrs r2, r0, #16 0x1fff1798: muls r2, r3 0x1fff179a: lsrs r2, r2, #20 0x1fff179c: add r4, r2 0x1fff179e: lsls r4, r4, #10 0x1fff17a0: lsls r0, r0, #11 0x1fff17a2: muls r2, r1 0x1fff17a4: subs r0, r0, r2 0x1fff17a6: lsrs r2, r0, #16 0x1fff17a8: muls r2, r3 0x1fff17aa: lsrs r2, r2, #21 0x1fff17ac: add r4, r2 0x1fff17ae: lsls r0, r0, #10 0x1fff17b0: muls r2, r1 0x1fff17b2: subs r0, r0, r2 0x1fff17b4: movs r2, #0 0x1fff17b6: cmp r0, r1 0x1fff17b8: adcs r4, r2 0x1fff17ba: lsrs r4, r5 0x1fff17bc: asrs r5, r5, #8 0x1fff17be: eors r4, r5 0x1fff17c0: subs r0, r4, r5 0x1fff17c2: mov r1, lr 0x1fff17c4: muls r1, r0 0x1fff17c6: mov r2, r12 0x1fff17c8: subs r1, r2, r1 0x1fff17ca: pop {r4, r5, pc} 0x1fff17cc: cmp r1, #0 0x1fff17ce: beq.n 0x1fff17f4 0x1fff17d0: movs r4, #0 0x1fff17d2: cmp r0, r1 0x1fff17d4: adcs r4, r4 0x1fff17d6: b.n 0x1fff17bc 0x1fff17d8: push {r4, r5, lr} 0x1fff17da: mov r12, r0 0x1fff17dc: mov lr, r1 0x1fff17de: asrs r5, r1, #31 0x1fff17e0: eors r1, r5 0x1fff17e2: subs r1, r1, r5 0x1fff17e4: asrs r2, r0, #31 0x1fff17e6: eors r0, r2 0x1fff17e8: subs r0, r0, r2 0x1fff17ea: eors r5, r2 0x1fff17ec: lsls r5, r5, #8 0x1fff17ee: adds r5, #30 0x1fff17f0: cmp r1, #0 0x1fff17f2: bne.n 0x1fff174e 0x1fff17f4: movs r0, #0 0x1fff17f6: pop {r4, r5, pc} 0x1fff17f8: strh r3, [r0, r1] 0x1fff17fa: ldrsh r4, [r2, r5] 0x1fff17fc: ldr r1, [pc, #272] ; (0x1fff1910) 0x1fff17fe: ldr r1, [pc, #344] ; (0x1fff1958) 0x1fff1800: cmp r4, r8 0x1fff1802: strh r7, [r3, r1] 0x1fff1804: ldr r5, [pc, #316] ; (0x1fff1944) 0x1fff1806: movs r0, #32 0x1fff1808: movs r1, r0 0x1fff180a: movs r0, r0 0x1fff180c: lsls r0, r0, #12 0x1fff180e: lsls r2, r0, #8 0x1fff1810: lsls r1, r0, #4 0x1fff1812: lsls r1, r0, #4 0x1fff1814: movs r0, r0 0x1fff1816: movs r0, r0 0x1fff1818: movs r0, r0 0x1fff181a: movs r0, r0 0x1fff181c: vaba.u8 , q8, 0x1fff1820: blx 0x200e49fc 0x1fff1824: b.n 0x1fff1bf2 0x1fff1826: bge.n 0x1fff17e6 0x1fff1828: bcc.n 0x1fff17da 0x1fff182a: ldmia r5!, {r4, r6, r7} 0x1fff182c: stmia r7!, {r1, r3, r6, r7} 0x1fff182e: stmia r0!, {r0, r1, r6, r7} 0x1fff1830: hlt 0x003d 0x1fff1832: push {r0, r1, r2, r4, r5, r7} 0x1fff1834: add r7, sp, #712 ; 0x2c8 0x1fff1836: add r1, sp, #688 ; 0x2b0 0x1fff1838: add r4, pc, #664 ; (adr r4, 0x1fff1ad4) 0x1fff183a: ldr r6, [sp, #644] ; 0x284 0x1fff183c: ldr r1, [sp, #624] ; 0x270 0x1fff183e: str r4, [sp, #604] ; 0x25c 0x1fff1840: ldrh r2, [r2, #60] ; 0x3c 0x1fff1842: ldrh r5, [r1, #28] 0x1fff1844: strh r0, [r1, #52] ; 0x34 0x1fff1846: strh r4, [r0, #12] 0x1fff1848: ldrb r7, [r7, #21] 0x1fff184a: ldrb r3, [r7, #5] 0x1fff184c: strb r6, [r6, #17] 0x1fff184e: strb r2, [r6, #1] 0x1fff1850: ldr r6, [r5, #68] ; 0x44 0x1fff1852: ldr r2, [r5, #4] 0x1fff1854: str r6, [r4, #68] ; 0x44 0x1fff1856: str r2, [r4, #4] 0x1fff1858: ldrb r7, [r3, r5] 0x1fff185a: ldr r3, [r3, r5] 0x1fff185c: ldrsb r7, [r2, r1] 0x1fff185e: strh r4, [r2, r1] 0x1fff1860: ldr r7, [pc, #320] ; (0x1fff19a4) 0x1fff1862: ldr r3, [pc, #308] ; (0x1fff1998) 0x1fff1864: ldr r0, [pc, #296] ; (0x1fff1990) 0x1fff1866: cmp r6, r8 0x1fff1868: adcs r3, r0 0x1fff186a: subs r6, #64 ; 0x40 0x1fff186c: subs r3, #61 ; 0x3d 0x1fff186e: subs r0, #58 ; 0x3a 0x1fff1870: adds r5, #55 ; 0x37 0x1fff1872: adds r3, #52 ; 0x34 0x1fff1874: adds r0, #49 ; 0x31 0x1fff1876: cmp r5, #46 ; 0x2e 0x1fff1878: cmp r2, #44 ; 0x2c 0x1fff187a: cmp r0, #41 ; 0x29 0x1fff187c: movs r5, #38 ; 0x26 0x1fff187e: movs r2, #36 ; 0x24 0x1fff1880: movs r0, #33 ; 0x21 0x1fff1882: adds r7, r3, #4 0x1fff1884: subs r4, r3, r4 0x1fff1886: adds r2, r3, r0 0x1fff1888: asrs r7, r2, #24 0x1fff188a: asrs r5, r2, #16 0x1fff188c: asrs r3, r2, #4 0x1fff188e: lsrs r0, r2, #28 0x1fff1890: lsrs r6, r1, #20 0x1fff1892: lsrs r4, r1, #12 0x1fff1894: lsrs r2, r1, #4 0x1fff1896: lsls r0, r1, #28 0x1fff1898: lsls r6, r0, #20 0x1fff189a: lsls r4, r0, #12 0x1fff189c: lsls r1, r0, #4 0x1fff189e: nop ; (mov r8, r8) 0x1fff18a0: push {r4, r5, lr} 0x1fff18a2: mov r3, r1 0x1fff18a4: mov r1, r0 0x1fff18a6: movs r0, #0 0x1fff18a8: movs r2, #32 0x1fff18aa: movs r4, #1 0x1fff18ac: b.n 0x1fff18c2 0x1fff18ae: mov r5, r1 0x1fff18b0: lsrs r5, r2 0x1fff18b2: cmp r5, r3 0x1fff18b4: bcc.n 0x1fff18c2 0x1fff18b6: mov r5, r3 0x1fff18b8: lsls r5, r2 0x1fff18ba: subs r1, r1, r5 0x1fff18bc: mov r5, r4 0x1fff18be: lsls r5, r2 0x1fff18c0: adds r0, r0, r5 0x1fff18c2: mov r5, r2 0x1fff18c4: subs r2, r2, #1 0x1fff18c6: cmp r5, #0 0x1fff18c8: bgt.n 0x1fff18ae 0x1fff18ca: pop {r4, r5, pc} 0x1fff18cc: push {r3, r4, r5, r6, r7, lr} 0x1fff18ce: ldr r5, [pc, #208] ; (0x1fff19a0) 0x1fff18d0: mov r7, r0 0x1fff18d2: mov r4, r1 0x1fff18d4: ldr r6, [r5, #0] 0x1fff18d6: bl 0x1fff1616 0x1fff18da: str r0, [sp, #0] 0x1fff18dc: bl 0x1fff1610 0x1fff18e0: ldr r3, [r7, #0] 0x1fff18e2: movs r1, #0 0x1fff18e4: subs r3, #50 ; 0x32 0x1fff18e6: movs r0, #64 ; 0x40 0x1fff18e8: bl 0x1fff19b0 0x1fff18ec: lsrs r5, r1, #32 0x1fff18ee: asrs r5, r1, #8 0x1fff18f0: movs r1, #23 0x1fff18f2: adds r0, r7, #0 0x1fff18f4: movs r6, #70 ; 0x46 0x1fff18f6: strh r3, [r2, r5] 0x1fff18f8: ldr r5, [pc, #292] ; (0x1fff1a20) 0x1fff18fa: lsls r3, r2, #1 0x1fff18fc: mov r1, r4 0x1fff18fe: mov r0, r7 0x1fff1900: bl 0x1fff1e00 0x1fff1904: b.n 0x1fff1996 0x1fff1906: mov r1, r4 0x1fff1908: mov r0, r7 0x1fff190a: bl 0x1fff1c62 0x1fff190e: b.n 0x1fff1996 0x1fff1910: mov r1, r4 0x1fff1912: mov r0, r7 0x1fff1914: bl 0x1fff1b30 0x1fff1918: b.n 0x1fff1996 0x1fff191a: mov r1, r4 0x1fff191c: mov r0, r7 0x1fff191e: bl 0x1fff1a04 0x1fff1922: b.n 0x1fff1996 0x1fff1924: mov r1, r4 0x1fff1926: mov r0, r7 0x1fff1928: bl 0x1fff1e8c 0x1fff192c: b.n 0x1fff1996 0x1fff192e: ldr r0, [pc, #116] ; (0x1fff19a4) 0x1fff1930: str r1, [r4, #0] 0x1fff1932: ldr r0, [r0, #52] ; 0x34 0x1fff1934: str r0, [r4, #4] 0x1fff1936: b.n 0x1fff1996 0x1fff1938: str r1, [r4, #0] 0x1fff193a: ldr r1, [r5, #0] 0x1fff193c: orrs r1, r0 0x1fff193e: str r1, [r5, #0] 0x1fff1940: ldr r1, [pc, #100] ; (0x1fff19a8) 0x1fff1942: ldr r2, [r1, #0] 0x1fff1944: ldr r2, [r2, #0] 0x1fff1946: str r2, [r4, #4] 0x1fff1948: ldr r2, [r1, #0] 0x1fff194a: ldr r2, [r2, #4] 0x1fff194c: str r2, [r4, #8] 0x1fff194e: ldr r2, [r1, #0] 0x1fff1950: ldr r2, [r2, #8] 0x1fff1952: str r2, [r4, #12] 0x1fff1954: ldr r1, [r1, #0] 0x1fff1956: ldr r1, [r1, #12] 0x1fff1958: str r1, [r4, #16] 0x1fff195a: b.n 0x1fff196a 0x1fff195c: str r1, [r4, #0] 0x1fff195e: ldr r1, [r5, #0] 0x1fff1960: orrs r1, r0 0x1fff1962: str r1, [r5, #0] 0x1fff1964: ldr r1, [pc, #68] ; (0x1fff19ac) 0x1fff1966: ldr r1, [r1, #0] 0x1fff1968: str r1, [r4, #4] 0x1fff196a: ldr r1, [r5, #0] 0x1fff196c: bics r1, r0 0x1fff196e: str r1, [r5, #0] 0x1fff1970: ldr r1, [r5, #0] 0x1fff1972: bics r1, r0 0x1fff1974: str r1, [r5, #0] 0x1fff1976: b.n 0x1fff1996 0x1fff1978: bl 0x1fff1e7e 0x1fff197c: b.n 0x1fff1996 0x1fff197e: mov r2, r4 0x1fff1980: mov r1, r7 0x1fff1982: movs r0, #1 0x1fff1984: b.n 0x1fff198c 0x1fff1986: mov r2, r4 0x1fff1988: mov r1, r7 0x1fff198a: movs r0, #0 0x1fff198c: bl 0x1fff1e3c 0x1fff1990: b.n 0x1fff1996 0x1fff1992: movs r0, #1 0x1fff1994: str r0, [r4, #0] 0x1fff1996: str r6, [r5, #0] 0x1fff1998: ldr r0, [sp, #0] 0x1fff199a: bl 0x1fff1600 0x1fff199e: pop {r3, r4, r5, r6, r7, pc} 0x1fff19a0: stmia r0!, {} 0x1fff19a2: ands r3, r0 0x1fff19a4: strh r0, [r0, #30] 0x1fff19a6: ands r4, r0 0x1fff19a8: lsls r4, r3, #23 0x1fff19aa: movs r0, r0 0x1fff19ac: lsls r4, r6, #16 0x1fff19ae: movs r0, r0 0x1fff19b0: push {r4, r5} 0x1fff19b2: mov r4, lr 0x1fff19b4: subs r4, r4, #1 0x1fff19b6: ldrb r5, [r4, #0] 0x1fff19b8: adds r4, r4, #1 0x1fff19ba: cmp r3, r5 0x1fff19bc: bcs.n 0x1fff19c0 0x1fff19be: mov r5, r3 0x1fff19c0: ldrb r3, [r4, r5] 0x1fff19c2: lsls r3, r3, #1 0x1fff19c4: adds r3, r4, r3 0x1fff19c6: pop {r4, r5} 0x1fff19c8: bx r3 0x1fff19ca: vsli.32 d27, d16, #31 0x1fff19ce: ldr r2, [pc, #1016] ; (0x1fff1dc8) 0x1fff19d0: ldr r4, [r2, #0] 0x1fff19d2: movs r3, #64 ; 0x40 0x1fff19d4: orrs r4, r3 0x1fff19d6: str r4, [r2, #0] 0x1fff19d8: ldr r4, [pc, #1008] ; (0x1fff1dcc) 0x1fff19da: ldr r5, [r4, #0] 0x1fff19dc: cmp r0, r5 0x1fff19de: bhi.n 0x1fff19e4 0x1fff19e0: cmp r1, r5 0x1fff19e2: bls.n 0x1fff19ec 0x1fff19e4: ldr r0, [r2, #0] 0x1fff19e6: bics r0, r3 0x1fff19e8: str r0, [r2, #0] 0x1fff19ea: b.n 0x1fff19f6 0x1fff19ec: ldr r4, [r2, #0] 0x1fff19ee: bics r4, r3 0x1fff19f0: str r4, [r2, #0] 0x1fff19f2: cmp r0, r1 0x1fff19f4: bls.n 0x1fff19fa 0x1fff19f6: movs r0, #7 0x1fff19f8: pop {r4, r5, pc} 0x1fff19fa: ldr r0, [r2, #0] 0x1fff19fc: bics r0, r3 0x1fff19fe: str r0, [r2, #0] 0x1fff1a00: movs r0, #0 0x1fff1a02: pop {r4, r5, pc} 0x1fff1a04: push {r4, r5, r6, lr} 0x1fff1a06: mov r4, r1 0x1fff1a08: mov r5, r0 0x1fff1a0a: ldr r1, [r0, #8] 0x1fff1a0c: ldr r0, [r0, #4] 0x1fff1a0e: bl 0x1fff19cc 0x1fff1a12: str r0, [r4, #0] 0x1fff1a14: cmp r0, #0 0x1fff1a16: bne.n 0x1fff1a54 0x1fff1a18: ldr r0, [pc, #940] ; (0x1fff1dc8) 0x1fff1a1a: ldr r1, [r0, #0] 0x1fff1a1c: movs r6, #64 ; 0x40 0x1fff1a1e: orrs r1, r6 0x1fff1a20: str r1, [r0, #0] 0x1fff1a22: ldr r1, [r5, #4] 0x1fff1a24: ldr r3, [pc, #940] ; (0x1fff1dd4) 0x1fff1a26: lsls r2, r1, #2 0x1fff1a28: ldr r1, [pc, #932] ; (0x1fff1dd0) 0x1fff1a2a: ldr r1, [r1, r2] 0x1fff1a2c: ldr r2, [r5, #8] 0x1fff1a2e: ldr r5, [r0, #0] 0x1fff1a30: lsls r2, r2, #2 0x1fff1a32: ldr r3, [r3, r2] 0x1fff1a34: mov r2, r1 0x1fff1a36: bics r5, r6 0x1fff1a38: str r5, [r0, #0] 0x1fff1a3a: lsls r0, r6, #9 0x1fff1a3c: b.n 0x1fff1a58 0x1fff1a3e: adds r5, r2, r0 0x1fff1a40: ldr r5, [r5, #0] 0x1fff1a42: adds r5, r5, #1 0x1fff1a44: beq.n 0x1fff1a56 0x1fff1a46: movs r3, #8 0x1fff1a48: subs r1, r2, r1 0x1fff1a4a: str r3, [r4, #0] 0x1fff1a4c: adds r0, r2, r0 0x1fff1a4e: str r1, [r4, #4] 0x1fff1a50: ldr r0, [r0, #0] 0x1fff1a52: str r0, [r4, #8] 0x1fff1a54: pop {r4, r5, r6, pc} 0x1fff1a56: adds r2, r2, #4 0x1fff1a58: cmp r2, r3 0x1fff1a5a: bcc.n 0x1fff1a3e 0x1fff1a5c: movs r0, #0 0x1fff1a5e: str r0, [r4, #0] 0x1fff1a60: pop {r4, r5, r6, pc} 0x1fff1a62: push {r4, lr} 0x1fff1a64: ldr r4, [sp, #8] 0x1fff1a66: str r1, [r0, #0] 0x1fff1a68: cmp r2, #0 0x1fff1a6a: beq.n 0x1fff1a76 0x1fff1a6c: str r3, [r2, #0] 0x1fff1a6e: ldr r0, [r2, #0] 0x1fff1a70: tst r0, r3 0x1fff1a72: bne.n 0x1fff1a6e 0x1fff1a74: pop {r4, pc} 0x1fff1a76: ldr r0, [r4, #0] 0x1fff1a78: lsls r0, r0, #29 0x1fff1a7a: beq.n 0x1fff1a76 0x1fff1a7c: pop {r4, pc} 0x1fff1a7e: push {r3, r4, r5, r6, r7, lr} 0x1fff1a80: ldr r7, [pc, #836] ; (0x1fff1dc8) 0x1fff1a82: mov r4, r0 0x1fff1a84: ldr r0, [r7, #4] 0x1fff1a86: mov r12, r1 0x1fff1a88: mov r6, r2 0x1fff1a8a: movs r5, #0 0x1fff1a8c: movs r1, #5 0x1fff1a8e: bics r1, r0 0x1fff1a90: beq.n 0x1fff1ac6 0x1fff1a92: movs r0, #11 0x1fff1a94: pop {r3, r4, r5, r6, r7, pc} 0x1fff1a96: movs r0, #1 0x1fff1a98: lsls r0, r4 0x1fff1a9a: orrs r5, r0 0x1fff1a9c: ldr r1, [r7, #0] 0x1fff1a9e: mov r0, r7 0x1fff1aa0: movs r3, #64 ; 0x40 0x1fff1aa2: orrs r1, r3 0x1fff1aa4: str r1, [r7, #0] 0x1fff1aa6: ldr r2, [pc, #808] ; (0x1fff1dd0) 0x1fff1aa8: lsls r1, r4, #2 0x1fff1aaa: ldr r1, [r2, r1] 0x1fff1aac: lsls r2, r3, #9 0x1fff1aae: adds r2, r1, r2 0x1fff1ab0: ldr r1, [r7, #0] 0x1fff1ab2: bics r1, r3 0x1fff1ab4: str r1, [r7, #0] 0x1fff1ab6: str r6, [r2, #0] 0x1fff1ab8: movs r3, #0 0x1fff1aba: mov r2, r3 0x1fff1abc: ldr r1, [pc, #792] ; (0x1fff1dd8) 0x1fff1abe: str r7, [sp, #0] 0x1fff1ac0: bl 0x1fff1a62 0x1fff1ac4: adds r4, r4, #1 0x1fff1ac6: cmp r4, r12 0x1fff1ac8: bls.n 0x1fff1a96 0x1fff1aca: ldr r0, [r7, #0] 0x1fff1acc: movs r2, #64 ; 0x40 0x1fff1ace: orrs r0, r2 0x1fff1ad0: str r0, [r7, #0] 0x1fff1ad2: ldr r0, [pc, #776] ; (0x1fff1ddc) 0x1fff1ad4: ldr r0, [r0, #0] 0x1fff1ad6: subs r0, #63 ; 0x3f 0x1fff1ad8: cmp r6, #0 0x1fff1ada: bne.n 0x1fff1ae2 0x1fff1adc: ldr r1, [r0, #60] ; 0x3c 0x1fff1ade: bics r1, r5 0x1fff1ae0: str r1, [r0, #60] ; 0x3c 0x1fff1ae2: adds r6, r6, #1 0x1fff1ae4: bne.n 0x1fff1aec 0x1fff1ae6: ldr r1, [r0, #60] ; 0x3c 0x1fff1ae8: orrs r1, r5 0x1fff1aea: str r1, [r0, #60] ; 0x3c 0x1fff1aec: ldr r0, [r7, #0] 0x1fff1aee: bics r0, r2 0x1fff1af0: str r0, [r7, #0] 0x1fff1af2: movs r0, #0 0x1fff1af4: pop {r3, r4, r5, r6, r7, pc} 0x1fff1af6: push {r4, lr} 0x1fff1af8: movs r2, #0 0x1fff1afa: movs r4, #1 0x1fff1afc: b.n 0x1fff1b06 0x1fff1afe: mov r3, r4 0x1fff1b00: lsls r3, r0 0x1fff1b02: orrs r2, r3 0x1fff1b04: adds r0, r0, #1 0x1fff1b06: cmp r0, r1 0x1fff1b08: bls.n 0x1fff1afe 0x1fff1b0a: ldr r0, [pc, #700] ; (0x1fff1dc8) 0x1fff1b0c: ldr r1, [r0, #0] 0x1fff1b0e: movs r3, #64 ; 0x40 0x1fff1b10: orrs r1, r3 0x1fff1b12: str r1, [r0, #0] 0x1fff1b14: ldr r1, [pc, #708] ; (0x1fff1ddc) 0x1fff1b16: ldr r1, [r1, #0] 0x1fff1b18: subs r1, #63 ; 0x3f 0x1fff1b1a: ldr r1, [r1, #60] ; 0x3c 0x1fff1b1c: ands r1, r2 0x1fff1b1e: ldr r2, [r0, #0] 0x1fff1b20: bics r2, r3 0x1fff1b22: str r2, [r0, #0] 0x1fff1b24: cmp r1, #0 0x1fff1b26: beq.n 0x1fff1b2c 0x1fff1b28: movs r0, #9 0x1fff1b2a: pop {r4, pc} 0x1fff1b2c: movs r0, #0 0x1fff1b2e: pop {r4, pc} 0x1fff1b30: push {r3, r4, r5, r6, r7, lr} 0x1fff1b32: mov r6, r1 0x1fff1b34: mov r4, r0 0x1fff1b36: ldr r1, [r0, #8] 0x1fff1b38: ldr r0, [r0, #4] 0x1fff1b3a: bl 0x1fff19cc 0x1fff1b3e: str r0, [r6, #0] 0x1fff1b40: cmp r0, #0 0x1fff1b42: bne.n 0x1fff1c26 0x1fff1b44: ldr r1, [r4, #8] 0x1fff1b46: ldr r0, [r4, #4] 0x1fff1b48: bl 0x1fff1af6 0x1fff1b4c: str r0, [r6, #0] 0x1fff1b4e: cmp r0, #0 0x1fff1b50: bne.n 0x1fff1c26 0x1fff1b52: ldr r5, [pc, #628] ; (0x1fff1dc8) 0x1fff1b54: ldr r0, [r5, #0] 0x1fff1b56: movs r1, #64 ; 0x40 0x1fff1b58: orrs r0, r1 0x1fff1b5a: str r0, [r5, #0] 0x1fff1b5c: ldr r1, [pc, #640] ; (0x1fff1de0) 0x1fff1b5e: ldr r0, [r4, #12] 0x1fff1b60: ldr r1, [r1, #0] 0x1fff1b62: bl 0x1fff18a0 0x1fff1b66: str r0, [r5, #28] 0x1fff1b68: ldr r1, [pc, #632] ; (0x1fff1de4) 0x1fff1b6a: ldr r0, [r4, #12] 0x1fff1b6c: ldr r1, [r1, #0] 0x1fff1b6e: muls r0, r1 0x1fff1b70: lsrs r0, r0, #9 0x1fff1b72: adds r0, r0, #3 0x1fff1b74: movs r1, #1 0x1fff1b76: lsls r1, r1, #15 0x1fff1b78: orrs r0, r1 0x1fff1b7a: str r0, [r5, #8] 0x1fff1b7c: ldr r7, [r4, #4] 0x1fff1b7e: ldr r0, [r4, #8] 0x1fff1b80: cmp r7, r0 0x1fff1b82: bne.n 0x1fff1bb4 0x1fff1b84: b.n 0x1fff1bbc 0x1fff1b86: ldr r1, [r5, #0] 0x1fff1b88: mov r0, r5 0x1fff1b8a: movs r2, #64 ; 0x40 0x1fff1b8c: orrs r1, r2 0x1fff1b8e: str r1, [r5, #0] 0x1fff1b90: ldr r1, [pc, #572] ; (0x1fff1dd0) 0x1fff1b92: lsls r3, r7, #2 0x1fff1b94: ldr r3, [r1, r3] 0x1fff1b96: lsls r1, r2, #9 0x1fff1b98: adds r1, r3, r1 0x1fff1b9a: ldr r3, [r5, #0] 0x1fff1b9c: bics r3, r2 0x1fff1b9e: str r3, [r5, #0] 0x1fff1ba0: movs r2, #1 0x1fff1ba2: str r2, [r1, #0] 0x1fff1ba4: ldr r1, [pc, #560] ; (0x1fff1dd8) 0x1fff1ba6: movs r3, #0 0x1fff1ba8: mov r2, r3 0x1fff1baa: subs r1, r1, #2 0x1fff1bac: str r5, [sp, #0] 0x1fff1bae: bl 0x1fff1a62 0x1fff1bb2: adds r7, r7, #1 0x1fff1bb4: ldr r0, [r4, #8] 0x1fff1bb6: subs r0, r0, #1 0x1fff1bb8: cmp r0, r7 0x1fff1bba: bcs.n 0x1fff1b86 0x1fff1bbc: ldr r0, [r5, #0] 0x1fff1bbe: movs r1, #64 ; 0x40 0x1fff1bc0: orrs r0, r1 0x1fff1bc2: str r0, [r5, #0] 0x1fff1bc4: ldr r0, [r4, #8] 0x1fff1bc6: lsls r2, r0, #2 0x1fff1bc8: ldr r0, [pc, #516] ; (0x1fff1dd0) 0x1fff1bca: ldr r2, [r0, r2] 0x1fff1bcc: lsls r0, r1, #9 0x1fff1bce: adds r0, r2, r0 0x1fff1bd0: ldr r2, [r5, #0] 0x1fff1bd2: bics r2, r1 0x1fff1bd4: str r2, [r5, #0] 0x1fff1bd6: movs r1, #1 0x1fff1bd8: str r1, [r0, #0] 0x1fff1bda: ldr r1, [pc, #524] ; (0x1fff1de8) 0x1fff1bdc: movs r0, #7 0x1fff1bde: str r0, [r1, #40] ; 0x28 0x1fff1be0: ldr r0, [pc, #520] ; (0x1fff1dec) 0x1fff1be2: ldr r0, [r0, #32] 0x1fff1be4: ldr r7, [pc, #524] ; (0x1fff1df4) 0x1fff1be6: mov r12, r0 0x1fff1be8: ldr r0, [pc, #516] ; (0x1fff1df0) 0x1fff1bea: str r0, [r7, #16] 0x1fff1bec: ldr r1, [pc, #508] ; (0x1fff1dec) 0x1fff1bee: movs r0, #0 0x1fff1bf0: str r0, [r1, #32] 0x1fff1bf2: str r0, [r7, #16] 0x1fff1bf4: ldr r0, [pc, #496] ; (0x1fff1de8) 0x1fff1bf6: movs r3, #0 0x1fff1bf8: adds r0, #32 0x1fff1bfa: str r0, [sp, #0] 0x1fff1bfc: mov r2, r3 0x1fff1bfe: ldr r1, [pc, #504] ; (0x1fff1df8) 0x1fff1c00: mov r0, r5 0x1fff1c02: bl 0x1fff1a62 0x1fff1c06: ldr r0, [pc, #488] ; (0x1fff1df0) 0x1fff1c08: str r0, [r7, #16] 0x1fff1c0a: ldr r1, [pc, #480] ; (0x1fff1dec) 0x1fff1c0c: mov r0, r12 0x1fff1c0e: str r0, [r1, #32] 0x1fff1c10: movs r0, #0 0x1fff1c12: str r0, [r7, #16] 0x1fff1c14: movs r2, #0 0x1fff1c16: mvns r2, r2 0x1fff1c18: ldr r1, [r4, #8] 0x1fff1c1a: ldr r0, [r4, #4] 0x1fff1c1c: bl 0x1fff1a7e 0x1fff1c20: str r0, [r6, #0] 0x1fff1c22: movs r0, #0 0x1fff1c24: str r0, [r5, #28] 0x1fff1c26: pop {r3, r4, r5, r6, r7, pc} 0x1fff1c28: push {r4, r5, lr} 0x1fff1c2a: movs r5, #1 0x1fff1c2c: b.n 0x1fff1c40 0x1fff1c2e: ldmia r1!, {r4} 0x1fff1c30: stmia r0!, {r4} 0x1fff1c32: lsls r4, r5, #30 0x1fff1c34: beq.n 0x1fff1c3a 0x1fff1c36: b.n 0x1fff1c3e 0x1fff1c38: adds r4, r4, #1 0x1fff1c3a: cmp r4, r2 0x1fff1c3c: bcc.n 0x1fff1c38 0x1fff1c3e: adds r5, r5, #1 0x1fff1c40: cmp r5, r3 0x1fff1c42: bls.n 0x1fff1c2e 0x1fff1c44: pop {r4, r5, pc} 0x1fff1c46: push {lr} 0x1fff1c48: ldr r2, [pc, #380] ; (0x1fff1dc8) 0x1fff1c4a: ldr r3, [r2, #4] 0x1fff1c4c: movs r2, #5 0x1fff1c4e: bics r2, r3 0x1fff1c50: beq.n 0x1fff1c56 0x1fff1c52: movs r0, #11 0x1fff1c54: pop {pc} 0x1fff1c56: movs r3, #64 ; 0x40 0x1fff1c58: movs r2, #4 0x1fff1c5a: bl 0x1fff1c28 0x1fff1c5e: movs r0, #0 0x1fff1c60: pop {pc} 0x1fff1c62: push {r4, r5, r6, r7, lr} 0x1fff1c64: sub sp, #20 0x1fff1c66: mov r7, r0 0x1fff1c68: ldr r0, [r0, #4] 0x1fff1c6a: str r0, [sp, #8] 0x1fff1c6c: ldr r0, [r7, #8] 0x1fff1c6e: str r0, [sp, #4] 0x1fff1c70: ldr r0, [r7, #12] 0x1fff1c72: mov r5, r1 0x1fff1c74: movs r3, #0 0x1fff1c76: str r0, [sp, #12] 0x1fff1c78: movs r2, #101 ; 0x65 0x1fff1c7a: add r1, sp, #12 0x1fff1c7c: mov r0, r3 0x1fff1c7e: bl 0x1fff10a6 0x1fff1c82: str r0, [r5, #0] 0x1fff1c84: cmp r0, #0 0x1fff1c86: bne.n 0x1fff1d6e 0x1fff1c88: movs r2, #104 ; 0x68 0x1fff1c8a: add r1, sp, #8 0x1fff1c8c: ldr r3, [sp, #12] 0x1fff1c8e: bl 0x1fff10a6 0x1fff1c92: str r0, [r5, #0] 0x1fff1c94: cmp r0, #0 0x1fff1c96: bne.n 0x1fff1d6e 0x1fff1c98: movs r2, #103 ; 0x67 0x1fff1c9a: add r1, sp, #4 0x1fff1c9c: ldr r3, [sp, #12] 0x1fff1c9e: bl 0x1fff10a6 0x1fff1ca2: str r0, [r5, #0] 0x1fff1ca4: cmp r0, #0 0x1fff1ca6: bne.n 0x1fff1d6e 0x1fff1ca8: str r0, [sp, #16] 0x1fff1caa: movs r0, #1 0x1fff1cac: ldr r1, [sp, #8] 0x1fff1cae: lsls r0, r0, #15 0x1fff1cb0: adds r0, r1, r0 0x1fff1cb2: ldr r6, [pc, #276] ; (0x1fff1dc8) 0x1fff1cb4: str r0, [sp, #8] 0x1fff1cb6: ldr r0, [r6, #0] 0x1fff1cb8: movs r1, #64 ; 0x40 0x1fff1cba: orrs r0, r1 0x1fff1cbc: str r0, [r6, #0] 0x1fff1cbe: movs r4, #0 0x1fff1cc0: ldr r0, [pc, #272] ; (0x1fff1dd4) 0x1fff1cc2: ldr r1, [pc, #264] ; (0x1fff1dcc) 0x1fff1cc4: b.n 0x1fff1cec 0x1fff1cc6: lsls r3, r4, #2 0x1fff1cc8: ldr r3, [r0, r3] 0x1fff1cca: ldr r2, [r7, #4] 0x1fff1ccc: cmp r2, r3 0x1fff1cce: bcs.n 0x1fff1cea 0x1fff1cd0: mov r1, r2 0x1fff1cd2: ldr r2, [r7, #12] 0x1fff1cd4: adds r1, r1, r2 0x1fff1cd6: lsls r2, r4, #2 0x1fff1cd8: ldr r0, [r0, r2] 0x1fff1cda: adds r0, r0, #1 0x1fff1cdc: cmp r1, r0 0x1fff1cde: bhi.n 0x1fff1ce4 0x1fff1ce0: str r4, [sp, #16] 0x1fff1ce2: b.n 0x1fff1cf2 0x1fff1ce4: adds r0, r4, #1 0x1fff1ce6: str r0, [sp, #16] 0x1fff1ce8: b.n 0x1fff1cf2 0x1fff1cea: adds r4, r4, #1 0x1fff1cec: ldr r2, [r1, #0] 0x1fff1cee: cmp r4, r2 0x1fff1cf0: bls.n 0x1fff1cc6 0x1fff1cf2: ldr r1, [r6, #0] 0x1fff1cf4: movs r0, #64 ; 0x40 0x1fff1cf6: bics r1, r0 0x1fff1cf8: str r1, [r6, #0] 0x1fff1cfa: mov r0, r4 0x1fff1cfc: ldr r1, [sp, #16] 0x1fff1cfe: bl 0x1fff1af6 0x1fff1d02: str r0, [r5, #0] 0x1fff1d04: cmp r0, #0 0x1fff1d06: bne.n 0x1fff1d6e 0x1fff1d08: ldr r1, [r6, #0] 0x1fff1d0a: movs r0, #64 ; 0x40 0x1fff1d0c: orrs r1, r0 0x1fff1d0e: str r1, [r6, #0] 0x1fff1d10: ldr r1, [pc, #204] ; (0x1fff1de0) 0x1fff1d12: ldr r0, [r7, #16] 0x1fff1d14: ldr r1, [r1, #0] 0x1fff1d16: bl 0x1fff18a0 0x1fff1d1a: str r0, [r6, #28] 0x1fff1d1c: ldr r1, [pc, #220] ; (0x1fff1dfc) 0x1fff1d1e: ldr r0, [r7, #16] 0x1fff1d20: ldr r1, [r1, #0] 0x1fff1d22: muls r0, r1 0x1fff1d24: lsrs r7, r0, #9 0x1fff1d26: adds r7, r7, #3 0x1fff1d28: movs r0, #1 0x1fff1d2a: lsls r0, r0, #15 0x1fff1d2c: ldr r1, [r6, #0] 0x1fff1d2e: orrs r7, r0 0x1fff1d30: movs r0, #64 ; 0x40 0x1fff1d32: bics r1, r0 0x1fff1d34: str r1, [r6, #0] 0x1fff1d36: ldr r1, [pc, #180] ; (0x1fff1dec) 0x1fff1d38: ldr r0, [r1, #32] 0x1fff1d3a: ldr r3, [pc, #184] ; (0x1fff1df4) 0x1fff1d3c: ldr r2, [pc, #176] ; (0x1fff1df0) 0x1fff1d3e: mov r12, r0 0x1fff1d40: str r2, [r3, #16] 0x1fff1d42: movs r0, #0 0x1fff1d44: str r0, [r1, #32] 0x1fff1d46: str r0, [r3, #16] 0x1fff1d48: ldr r0, [sp, #12] 0x1fff1d4a: b.n 0x1fff1da6 0x1fff1d4c: movs r3, #0 0x1fff1d4e: mov r0, r6 0x1fff1d50: mov r2, r3 0x1fff1d52: movs r1, #7 0x1fff1d54: str r6, [sp, #0] 0x1fff1d56: bl 0x1fff1a62 0x1fff1d5a: ldr r1, [sp, #4] 0x1fff1d5c: ldr r0, [sp, #8] 0x1fff1d5e: bl 0x1fff1c46 0x1fff1d62: cmp r0, #0 0x1fff1d64: beq.n 0x1fff1d72 0x1fff1d66: movs r0, #11 0x1fff1d68: str r0, [r5, #0] 0x1fff1d6a: movs r0, #0 0x1fff1d6c: str r0, [r6, #28] 0x1fff1d6e: add sp, #20 0x1fff1d70: pop {r4, r5, r6, r7, pc} 0x1fff1d72: ldr r1, [pc, #116] ; (0x1fff1de8) 0x1fff1d74: movs r0, #7 0x1fff1d76: str r0, [r1, #40] ; 0x28 0x1fff1d78: mov r0, r6 0x1fff1d7a: str r7, [r6, #8] 0x1fff1d7c: ldr r1, [pc, #104] ; (0x1fff1de8) 0x1fff1d7e: movs r3, #0 0x1fff1d80: adds r1, #32 0x1fff1d82: str r1, [sp, #0] 0x1fff1d84: ldr r1, [pc, #112] ; (0x1fff1df8) 0x1fff1d86: mov r2, r3 0x1fff1d88: adds r1, r1, #2 0x1fff1d8a: bl 0x1fff1a62 0x1fff1d8e: ldr r0, [sp, #8] 0x1fff1d90: adds r0, #255 ; 0xff 0x1fff1d92: adds r0, #1 0x1fff1d94: str r0, [sp, #8] 0x1fff1d96: ldr r0, [sp, #4] 0x1fff1d98: adds r0, #255 ; 0xff 0x1fff1d9a: adds r0, #1 0x1fff1d9c: str r0, [sp, #4] 0x1fff1d9e: ldr r0, [sp, #12] 0x1fff1da0: subs r0, #255 ; 0xff 0x1fff1da2: subs r0, #1 0x1fff1da4: str r0, [sp, #12] 0x1fff1da6: cmp r0, #0 0x1fff1da8: bne.n 0x1fff1d4c 0x1fff1daa: ldr r0, [pc, #72] ; (0x1fff1df4) 0x1fff1dac: ldr r1, [pc, #64] ; (0x1fff1df0) 0x1fff1dae: str r1, [r0, #16] 0x1fff1db0: ldr r2, [pc, #56] ; (0x1fff1dec) 0x1fff1db2: mov r1, r12 0x1fff1db4: str r1, [r2, #32] 0x1fff1db6: movs r5, #0 0x1fff1db8: str r5, [r0, #16] 0x1fff1dba: subs r2, r5, #1 0x1fff1dbc: mov r0, r4 0x1fff1dbe: ldr r1, [sp, #16] 0x1fff1dc0: bl 0x1fff1a7e 0x1fff1dc4: str r5, [r6, #28] 0x1fff1dc6: b.n 0x1fff1d6e 0x1fff1dc8: stmia r0!, {} 0x1fff1dca: ands r3, r0 0x1fff1dcc: lsls r0, r0, #17 0x1fff1dce: movs r0, r0 0x1fff1dd0: lsls r0, r2, #18 0x1fff1dd2: movs r0, r0 0x1fff1dd4: lsls r0, r4, #20 0x1fff1dd6: movs r0, r0 0x1fff1dd8: strh r7, [r0, #4] 0x1fff1dda: movs r0, r0 0x1fff1ddc: lsls r4, r7, #16 0x1fff1dde: movs r0, r0 0x1fff1de0: lsls r4, r2, #17 0x1fff1de2: movs r0, r0 0x1fff1de4: lsls r0, r2, #17 0x1fff1de6: movs r0, r0 0x1fff1de8: ldmia r7, {r6, r7} 0x1fff1dea: ands r3, r0 0x1fff1dec: strh r0, [r0, #10] 0x1fff1dee: ands r4, r0 0x1fff1df0: ldrsb r0, [r7, r1] 0x1fff1df2: asrs r4, r6, #8 0x1fff1df4: strh r0, [r0, #30] 0x1fff1df6: ands r4, r0 0x1fff1df8: asrs r1, r0, #2 0x1fff1dfa: movs r0, r0 0x1fff1dfc: lsls r4, r1, #17 0x1fff1dfe: movs r0, r0 0x1fff1e00: push {r4, r5, r6, lr} 0x1fff1e02: mov r6, r1 0x1fff1e04: mov r4, r0 0x1fff1e06: ldr r1, [r0, #8] 0x1fff1e08: ldr r0, [r0, #4] 0x1fff1e0a: bl 0x1fff19cc 0x1fff1e0e: str r0, [r6, #0] 0x1fff1e10: cmp r0, #0 0x1fff1e12: bne.n 0x1fff1e36 0x1fff1e14: ldr r5, [pc, #32] ; (0x1fff1e38) 0x1fff1e16: ldr r0, [r5, #28] 0x1fff1e18: cmp r0, #0 0x1fff1e1a: bne.n 0x1fff1e20 0x1fff1e1c: movs r0, #64 ; 0x40 0x1fff1e1e: str r0, [r5, #28] 0x1fff1e20: movs r2, #0 0x1fff1e22: ldr r1, [r4, #8] 0x1fff1e24: ldr r0, [r4, #4] 0x1fff1e26: bl 0x1fff1a7e 0x1fff1e2a: str r0, [r6, #0] 0x1fff1e2c: ldr r0, [r5, #28] 0x1fff1e2e: cmp r0, #64 ; 0x40 0x1fff1e30: bne.n 0x1fff1e36 0x1fff1e32: movs r0, #0 0x1fff1e34: str r0, [r5, #28] 0x1fff1e36: pop {r4, r5, r6, pc} 0x1fff1e38: stmia r0!, {} 0x1fff1e3a: ands r3, r0 0x1fff1e3c: push {r0, r1, r2, r4, r5, r6, r7, lr} 0x1fff1e3e: sub sp, #8 0x1fff1e40: ldr r0, [r1, #4] 0x1fff1e42: str r0, [sp, #0] 0x1fff1e44: ldr r5, [r1, #12] 0x1fff1e46: ldr r7, [r1, #8] 0x1fff1e48: mov r4, r1 0x1fff1e4a: mov r6, r2 0x1fff1e4c: mov r2, r5 0x1fff1e4e: mov r1, r7 0x1fff1e50: bl 0x1fff1198 0x1fff1e54: str r0, [r6, #0] 0x1fff1e56: cmp r0, #0 0x1fff1e58: bne.n 0x1fff1e74 0x1fff1e5a: cmp r5, #0 0x1fff1e5c: beq.n 0x1fff1e74 0x1fff1e5e: ldr r0, [r4, #16] 0x1fff1e60: bl 0x1fff1200 0x1fff1e64: ldr r0, [sp, #8] 0x1fff1e66: mov r2, r5 0x1fff1e68: cmp r0, #0 0x1fff1e6a: ldr r0, [sp, #0] 0x1fff1e6c: mov r1, r7 0x1fff1e6e: beq.n 0x1fff1e78 0x1fff1e70: bl 0x1fff1306 0x1fff1e74: add sp, #20 0x1fff1e76: pop {r4, r5, r6, r7, pc} 0x1fff1e78: bl 0x1fff138c 0x1fff1e7c: b.n 0x1fff1e74 0x1fff1e7e: push {r4, lr} 0x1fff1e80: ldr r1, [pc, #136] ; (0x1fff1f0c) 0x1fff1e82: movs r0, #0 0x1fff1e84: str r0, [r1, #0] 0x1fff1e86: bl 0x1fff02e4 0x1fff1e8a: pop {r4, pc} 0x1fff1e8c: push {r3, r4, r5, r6, r7, lr} 0x1fff1e8e: mov r5, r1 0x1fff1e90: mov r1, r0 0x1fff1e92: mov r4, r0 0x1fff1e94: movs r3, #0 0x1fff1e96: movs r2, #100 ; 0x64 0x1fff1e98: adds r1, #12 0x1fff1e9a: mov r0, r3 0x1fff1e9c: bl 0x1fff10a6 0x1fff1ea0: str r0, [r5, #0] 0x1fff1ea2: cmp r0, #0 0x1fff1ea4: bne.n 0x1fff1ef8 0x1fff1ea6: movs r2, #102 ; 0x66 0x1fff1ea8: adds r1, r4, #4 0x1fff1eaa: ldr r3, [r4, #12] 0x1fff1eac: bl 0x1fff10a6 0x1fff1eb0: str r0, [r5, #0] 0x1fff1eb2: cmp r0, #0 0x1fff1eb4: bne.n 0x1fff1ef8 0x1fff1eb6: mov r1, r4 0x1fff1eb8: movs r2, #102 ; 0x66 0x1fff1eba: adds r1, #8 0x1fff1ebc: ldr r3, [r4, #12] 0x1fff1ebe: bl 0x1fff10a6 0x1fff1ec2: str r0, [r5, #0] 0x1fff1ec4: cmp r0, #0 0x1fff1ec6: bne.n 0x1fff1ef8 0x1fff1ec8: movs r3, #1 0x1fff1eca: ldr r2, [r4, #4] 0x1fff1ecc: lsls r3, r3, #15 0x1fff1ece: cmp r2, r3 0x1fff1ed0: bcs.n 0x1fff1ed4 0x1fff1ed2: adds r2, r2, r3 0x1fff1ed4: ldr r0, [r4, #8] 0x1fff1ed6: cmp r0, r3 0x1fff1ed8: bcs.n 0x1fff1edc 0x1fff1eda: adds r0, r0, r3 0x1fff1edc: ldr r1, [r4, #12] 0x1fff1ede: b.n 0x1fff1f00 0x1fff1ee0: ldr r6, [r0, #0] 0x1fff1ee2: ldr r7, [r2, #0] 0x1fff1ee4: cmp r6, r7 0x1fff1ee6: beq.n 0x1fff1efa 0x1fff1ee8: movs r0, #10 0x1fff1eea: str r0, [r5, #0] 0x1fff1eec: ldr r0, [r4, #4] 0x1fff1eee: cmp r0, r3 0x1fff1ef0: bcs.n 0x1fff1ef4 0x1fff1ef2: subs r2, r2, r3 0x1fff1ef4: subs r0, r2, r0 0x1fff1ef6: str r0, [r5, #4] 0x1fff1ef8: pop {r3, r4, r5, r6, r7, pc} 0x1fff1efa: adds r0, r0, #4 0x1fff1efc: adds r2, r2, #4 0x1fff1efe: subs r1, r1, #4 0x1fff1f00: cmp r1, #0 0x1fff1f02: bne.n 0x1fff1ee0 0x1fff1f04: movs r0, #0 0x1fff1f06: str r0, [r5, #0] 0x1fff1f08: pop {r3, r4, r5, r6, r7, pc} 0x1fff1f00: 0xd1ed2900 0x60282000 0x0000bdf8 0x40048000 0x1fff1f10: 0x636e7953 0x6e6f7268 0x64657a69 0xffffff00 0x1fff1f20: 0x00005a5a 0x74004b4f 0x00547345 0x45534552 0x1fff1f30: 0xff00444e 0x1fff13dd 0x1fff161d 0x1fff1601 0x1fff1f40: 0x1fff1617 0x1fff173d 0x1fff1743 0x1fff171d 0x1fff1f50: 0x1fff172d 0xffffffff 0xffffffff 0xffffffff 0x1fff1f60: 0x1fff1f34 0x1fff1f44 0xffffffff 0xffffffff 0x1fff1f70: 0xffffffff 0x00002000 0x1fff1f0a: movs r0, r0 0x1fff1f0c: strh r0, [r0, #0] 0x1fff1f0e: ands r4, r0 0x1fff1f10: ldrb r3, [r2, #5] 0x1fff1f12: str r6, [r5, #52] ; 0x34 0x1fff1f14: strb r0, [r5, #9] 0x1fff1f16: ldr r7, [r5, #100] ; 0x64 0x1fff1f18: ldrb r1, [r5, #9] 0x1fff1f1a: str r5, [r4, #68] ; 0x44 0x1fff1f1c: vmaxnm.f32 , q8, 0x1fff1f20: ldrh r2, [r3, r1] 0x1fff1f22: movs r0, r0 0x1fff1f24: ldr r3, [pc, #316] ; (0x1fff2064) 0x1fff1f26: strb r0, [r0, #16] 0x1fff1f28: strb r5, [r0, #13] 0x1fff1f2a: lsls r4, r2, #1 0x1fff1f2c: cmp r2, r10 0x1fff1f2e: cmp r3, r10 0x1fff1f30: add r6, r9 0x1fff1f32: vcge.u8 , q8, 0x1fff1f36: subs r7, r7, #7 0x1fff1f38: asrs r5, r3, #24 0x1fff1f3a: subs r7, r7, #7 0x1fff1f3c: asrs r1, r0, #24 0x1fff1f3e: subs r7, r7, #7 0x1fff1f40: asrs r7, r2, #24 0x1fff1f42: subs r7, r7, #7 0x1fff1f44: asrs r5, r7, #28 0x1fff1f46: subs r7, r7, #7 0x1fff1f48: asrs r3, r0, #29 0x1fff1f4a: subs r7, r7, #7 0x1fff1f4c: asrs r5, r3, #28 0x1fff1f4e: subs r7, r7, #7 0x1fff1f50: asrs r5, r5, #28 0x1fff1f52: subs r7, r7, #7 0x1fff1f54: ; instruction: 0xffffffff 0x1fff1f58: ; instruction: 0xffffffff 0x1fff1f5c: ; instruction: 0xffffffff 0x1fff1f60: subs r4, r6, #4 0x1fff1f62: subs r7, r7, #7 0x1fff1f64: subs r4, r0, #5 0x1fff1f66: subs r7, r7, #7 0x1fff1f68: ; instruction: 0xffffffff 0x1fff1f6c: ; instruction: 0xffffffff 0x1fff1f70: ; instruction: 0xffffffff 0x1fff1f74: movs r0, #0 0x1fff1f76: movs r0, r0 0x1fff1f78: movs r0, #16 0x1fff1f7a: movs r0, r2 0x1fff1f7c: movs r0, r2 0x1fff1f7e: movs r0, r2 0x1fff1f80: movs r0, r0 0x1fff1f82: movs r0, r0 0x1fff1f84: movs r0, r0 0x1fff1f86: movs r0, r0 0x1fff1f88: strh r0, [r0, #0] 0x1fff1f8a: stmia r0!, {} 0x1fff1f8c: ; instruction: 0xffffffff 0x1fff1f90: ; instruction: 0xffffffff 0x1fff1f94: ; instruction: 0xffffffff 0x1fff1f98: ; instruction: 0xffffffff 0x1fff1f9c: ; instruction: 0xffffffff 0x1fff1fa0: ; instruction: 0xffffffff 0x1fff1fa4: ; instruction: 0xffffffff 0x1fff1fa8: ; instruction: 0xffffffff 0x1fff1fac: ; instruction: 0xffffffff 0x1fff1fb0: ; instruction: 0xffffffff 0x1fff1fb4: ; instruction: 0xffffffff 0x1fff1fb8: ; instruction: 0xffffffff 0x1fff1fbc: ; instruction: 0xffffffff 0x1fff1fc0: ; instruction: 0xffffffff 0x1fff1fc4: ; instruction: 0xffffffff 0x1fff1fc8: ; instruction: 0xffffffff 0x1fff1fcc: ; instruction: 0xffffffff 0x1fff1fd0: ; instruction: 0xffffffff 0x1fff1fd4: ; instruction: 0xffffffff 0x1fff1fd8: ; instruction: 0xffffffff 0x1fff1fdc: ; instruction: 0xffffffff 0x1fff1fe0: ; instruction: 0xffffffff 0x1fff1fe4: ; instruction: 0xffffffff 0x1fff1fe8: ; instruction: 0xffffffff 0x1fff1fec: ; instruction: 0xffffffff 0x1fff1ff0: 0xf7ffb510 0xbd10fc6b 0x1fff1f54 0xffffffff 0x1fff1ff0: push {r4, lr} 0x1fff1ff2: bl 0x1fff18cc 0x1fff1ff6: pop {r4, pc} 0x1fff1ff8: subs r4, r2, #5 0x1fff1ffa: subs r7, r7, #7 0x1fff1ffc: ; instruction: 0xffffffff