FreeCalypso > hg > freecalypso-reveng
changeset 162:8d30e1722e0f
locked C139 bootloader reverse-engineered
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Thu, 15 May 2014 20:55:39 +0000 |
parents | 237bb836521d |
children | 644b45342ab8 |
files | compal/c139-tfboot.disasm |
diffstat | 1 files changed, 2683 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compal/c139-tfboot.disasm Thu May 15 20:55:39 2014 +0000 @@ -0,0 +1,2683 @@ +Disassembly of TF's locked C139 bootloader +same as the classic C139 version up to 0x958 + +RESET entry and exception vectors: + 0: ea000225 b 0x89c + 4: ea000825 b 0x20a0 + 8: ea000825 b 0x20a4 + c: ea000825 b 0x20a8 + 10: ea000825 b 0x20ac + 14: ea000825 b 0x20b0 + 18: ea000825 b 0x20b4 + 1c: ea000825 b 0x20b8 + +; ID words or whatever + 20: 449e10f0 + 24: 449e10f1 + 28: 449e1120 + 2c: 449e1121 + +<30-7FF: all FFs> + +00000800: 42 4F 4F 54 2E 39 30 2E 30 34 00 00 00 00 00 00 BOOT.90.04...... +00000810: 31 30 30 33 01 01 00 00 FF FF FF FF FF FF FF FF 1003............ +00000820: FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF ................ + + 830: 00000006 + ... + 83c: 00000048 + 840: 00000044 + 844: 00000052 + 848: 0000001b + 84c: 00000005 + ... + 860: 000000fa + 864: ffff5800 + 868: ffff5000 + 86c: fffffb00 + 870: 02a1 + 872: 02a1 + 874: 02a1 + 876: 0283 + 878: 0281 + 87a: 00c0 + 87c: 0040 + 87e: 002a + 880: 00000040 + 884: fffffd00 + 888: ffff9800 + 88c: fffffb10 + 890: ffffff08 + 894: 1081 + 896: 2006 + 898: 0800 + 89a: 0000 + +; RESET entry point, same as classic C139 version + 89c: e51f1020 ldr r1, =0xfffffd00 ; via 0x884 + 8a0: e1d120b2 ldrh r2, [r1, #2] + 8a4: e51f002c ldr r0, =0x40 ; via 0x880 + 8a8: e1800002 orr r0, r0, r2 + 8ac: e1c100b2 strh r0, [r1, #2] + 8b0: e51f1030 ldr r1, =0xffff9800 ; via 0x888 + 8b4: e15f22b6 ldrh r2, =0x2006 ; via 0x896 + 8b8: e1c120b0 strh r2, [r1] + 8bc: e5912000 ldr r2, [r1] + 8c0: e2022001 and r2, r2, #1 + 8c4: e3520001 cmp r2, #1 + 8c8: 0afffffb beq 0x8bc + 8cc: e51f1050 ldr r1, =0xfffffd00 ; via 0x884 + 8d0: e15f24b4 ldrh r2, =0x1081 ; via 0x894 + 8d4: e1c120b0 strh r2, [r1] + 8d8: e51f1054 ldr r1, =0xfffffb10 ; via 0x88c + 8dc: e15f24bc ldrh r2, =0x800 ; via 0x898 + 8e0: e1d100b0 ldrh r0, [r1] + 8e4: e1800002 orr r0, r0, r2 + 8e8: e1c100b0 strh r0, [r1] + 8ec: e51f1064 ldr r1, =0xffffff08 ; via 0x890 + 8f0: e15f25be ldrh r2, =0x0 ; via 0x89a + 8f4: e1c120b0 strh r2, [r1] + 8f8: e51f1094 ldr r1, =0xfffffb00 ; via 0x86c + 8fc: e15f29b4 ldrh r2, =0x2a1 ; via 0x870 + 900: e1c120b0 strh r2, [r1] + 904: e15f29ba ldrh r2, =0x2a1 ; via 0x872 + 908: e1c120b2 strh r2, [r1, #2] + 90c: e15f2ab0 ldrh r2, =0x2a1 ; via 0x874 + 910: e1c120b4 strh r2, [r1, #4] + 914: e15f2ab6 ldrh r2, =0x283 ; via 0x876 + 918: e1c120b6 strh r2, [r1, #6] + 91c: e15f2abc ldrh r2, =0x281 ; via 0x878 + 920: e1c120ba strh r2, [r1, #10] ; 0xa + 924: e15f2bb2 ldrh r2, =0xc0 ; via 0x87a + 928: e1c120bc strh r2, [r1, #12] ; 0xc + 92c: e15f2bb8 ldrh r2, =0x40 ; via 0x87c + 930: e1c120b8 strh r2, [r1, #8] + 934: e15f2bbe ldrh r2, =0x2a ; via 0x87e + 938: e1c120be strh r2, [r1, #14] ; 0xe + 93c: e59f0020 ldr r0, =0x837770 ; via 0x964 + 940: e3a01b01 mov r1, #1024 ; 0x400 + 944: e2411004 sub r1, r1, #4 + 948: e0802001 add r2, r0, r1 + 94c: e3c22003 bic r2, r2, #3 + 950: e1a0d002 mov sp, r2 +; business logic + 954: e92d100f stmdb sp!, {r0, r1, r2, r3, r12} + 958: eb00053a bl 0x1e48 + 95c: e8bd100f ldmia sp!, {r0, r1, r2, r3, r12} + 960: ea0005e4 b 0x20f8 + + 964: 00837770 + + 968: 4961 ldr r1, =0xfffffa08 ; via 0xaf0 + 96a: 4862 ldr r0, =0xffff ; via 0xaf4 + 96c: 8008 strh r0, [r1, #0] + 96e: 4862 ldr r0, =0xfffffa0a ; via 0xaf8 + 970: 211f mov r1, #31 ; 0x1f + 972: 8001 strh r1, [r0, #0] + 974: 4861 ldr r0, =0xfffff804 ; via 0xafc + 976: 21f5 mov r1, #245 ; 0xf5 + 978: 8001 strh r1, [r0, #0] + 97a: 21a0 mov r1, #160 ; 0xa0 + 97c: 8001 strh r1, [r0, #0] + 97e: 4860 ldr r0, =0xffff9800 ; via 0xb00 + 980: 4960 ldr r1, =0x2002 ; via 0xb04 + 982: 8001 strh r1, [r0, #0] + 984: 485e ldr r0, =0xffff9800 ; via 0xb00 + 986: 8800 ldrh r0, [r0, #0] + 988: 0840 lsr r0, r0, #1 + 98a: d2fb bcs 0x984 + 98c: 495e ldr r1, =0xfffffd00 ; via 0xb08 + 98e: 485f ldr r0, =0x1001 ; via 0xb0c + 990: 8008 strh r0, [r1, #0] + 992: 46f7 mov pc, lr + + 994: b500 push {lr} + 996: b0ff sub sp, #508 ; 0x1fc + 998: b0ca sub sp, #296 ; 0x128 + 99a: 2000 mov r0, #0 + 99c: 9001 str r0, [sp, #4] + 99e: 9801 ldr r0, [sp, #4] + 9a0: 2800 cmp r0, #0 + 9a2: d14e bne 0xa42 + 9a4: a846 add r0, sp, #280 ; 0x118 + 9a6: 2100 mov r1, #0 + 9a8: f001 f87a bl 0x1aa0 + 9ac: a9c8 add r1, sp, #800 ; 0x320 + 9ae: 7008 strb r0, [r1, #0] + 9b0: a846 add r0, sp, #280 ; 0x118 + 9b2: a902 add r1, sp, #8 + 9b4: f000 fb38 bl 0x1028 + 9b8: 9000 str r0, [sp, #0] + 9ba: 9800 ldr r0, [sp, #0] + 9bc: 2800 cmp r0, #0 + 9be: d01b beq 0x9f8 + 9c0: a924 add r1, sp, #144 ; 0x90 + 9c2: 4668 mov r0, sp + 9c4: 7a00 ldrb r0, [r0, #8] + 9c6: 7008 strb r0, [r1, #0] + 9c8: 2191 mov r1, #145 ; 0x91 + 9ca: 466a mov r2, sp + 9cc: 4668 mov r0, sp + 9ce: 7800 ldrb r0, [r0, #0] + 9d0: 5488 strb r0, [r1, r2] + 9d2: e01b b 0xa0c + 9d4: a802 add r0, sp, #8 + 9d6: a924 add r1, sp, #144 ; 0x90 + 9d8: f000 fe14 bl 0x1604 + 9dc: e016 b 0xa0c + 9de: a802 add r0, sp, #8 + 9e0: a924 add r1, sp, #144 ; 0x90 + 9e2: aac8 add r2, sp, #800 ; 0x320 + 9e4: 7812 ldrb r2, [r2, #0] + 9e6: f000 fe21 bl 0x162c + 9ea: e00f b 0xa0c + 9ec: a802 add r0, sp, #8 + 9ee: a924 add r1, sp, #144 ; 0x90 + 9f0: f000 fe53 bl 0x169a + 9f4: 90c7 str r0, [sp, #796] ; 0x31c + 9f6: e009 b 0xa0c + 9f8: 4668 mov r0, sp + 9fa: 7a00 ldrb r0, [r0, #8] + 9fc: 2800 cmp r0, #0 + 9fe: d0e9 beq 0x9d4 + a00: 3809 sub r0, #9 + a02: 2800 cmp r0, #0 + a04: d0eb beq 0x9de + a06: 3801 sub r0, #1 + a08: 2800 cmp r0, #0 + a0a: d0ef beq 0x9ec + a0c: a824 add r0, sp, #144 ; 0x90 + a0e: a986 add r1, sp, #536 ; 0x218 + a10: f000 fbed bl 0x11ee + a14: 2800 cmp r0, #0 + a16: d111 bne 0xa3c + a18: a886 add r0, sp, #536 ; 0x218 + a1a: a9c8 add r1, sp, #800 ; 0x320 + a1c: 7809 ldrb r1, [r1, #0] + a1e: f001 f814 bl 0x1a4a + a22: 2800 cmp r0, #0 + a24: d00a beq 0xa3c + a26: 4668 mov r0, sp + a28: 7a00 ldrb r0, [r0, #8] + a2a: 280a cmp r0, #10 ; 0xa + a2c: d106 bne 0xa3c + a2e: a8c8 add r0, sp, #800 ; 0x320 + a30: 7800 ldrb r0, [r0, #0] + a32: f001 f965 bl 0x1d00 + a36: 98c7 ldr r0, [sp, #796] ; 0x31c + a38: f000 faf4 bl 0x1024 + a3c: 9801 ldr r0, [sp, #4] + a3e: 2800 cmp r0, #0 + a40: d0b0 beq 0x9a4 + a42: b07f add sp, #508 ; 0x1fc + a44: b04a add sp, #296 ; 0x128 + a46: bd00 pop {pc} + + a48: b500 push {lr} + a4a: b0ff sub sp, #508 ; 0x1fc + a4c: b0c8 sub sp, #288 ; 0x120 + a4e: 2000 mov r0, #0 + a50: 9000 str r0, [sp, #0] + a52: a846 add r0, sp, #280 ; 0x118 + a54: 2101 mov r1, #1 + a56: f001 f823 bl 0x1aa0 + a5a: a9c6 add r1, sp, #792 ; 0x318 + a5c: 7008 strb r0, [r1, #0] + a5e: a8c6 add r0, sp, #792 ; 0x318 + a60: 7800 ldrb r0, [r0, #0] + a62: 28ff cmp r0, #255 ; 0xff + a64: d031 beq 0xaca + a66: a846 add r0, sp, #280 ; 0x118 + a68: a902 add r1, sp, #8 + a6a: f000 fadd bl 0x1028 + a6e: 9001 str r0, [sp, #4] + a70: 9801 ldr r0, [sp, #4] + a72: 2800 cmp r0, #0 + a74: d014 beq 0xaa0 + a76: a924 add r1, sp, #144 ; 0x90 + a78: 4668 mov r0, sp + a7a: 7a00 ldrb r0, [r0, #8] + a7c: 7008 strb r0, [r1, #0] + a7e: 2291 mov r2, #145 ; 0x91 + a80: 4668 mov r0, sp + a82: 4669 mov r1, sp + a84: 7909 ldrb r1, [r1, #4] + a86: 5411 strb r1, [r2, r0] + a88: a824 add r0, sp, #144 ; 0x90 + a8a: a986 add r1, sp, #536 ; 0x218 + a8c: f000 fbaf bl 0x11ee + a90: 2800 cmp r0, #0 + a92: d11a bne 0xaca + a94: a886 add r0, sp, #536 ; 0x218 + a96: a9c6 add r1, sp, #792 ; 0x318 + a98: 7809 ldrb r1, [r1, #0] + a9a: f000 ffd6 bl 0x1a4a + a9e: e014 b 0xaca + aa0: 4668 mov r0, sp + aa2: 7a00 ldrb r0, [r0, #8] + aa4: 2800 cmp r0, #0 + aa6: d110 bne 0xaca + aa8: a802 add r0, sp, #8 + aaa: a924 add r1, sp, #144 ; 0x90 + aac: f000 fdaa bl 0x1604 + ab0: a824 add r0, sp, #144 ; 0x90 + ab2: a986 add r1, sp, #536 ; 0x218 + ab4: f000 fb9b bl 0x11ee + ab8: 2800 cmp r0, #0 + aba: d104 bne 0xac6 + abc: a886 add r0, sp, #536 ; 0x218 + abe: a9c6 add r1, sp, #792 ; 0x318 + ac0: 7809 ldrb r1, [r1, #0] + ac2: f000 ffc2 bl 0x1a4a + ac6: 2001 mov r0, #1 + ac8: 9000 str r0, [sp, #0] + aca: 9800 ldr r0, [sp, #0] + acc: b07f add sp, #508 ; 0x1fc + ace: b048 add sp, #288 ; 0x120 + ad0: bd00 pop {pc} + + ad2: b500 push {lr} + ad4: b082 sub sp, #8 + ad6: f7ff ff47 bl 0x968 + ada: f001 f8b9 bl 0x1c50 + ade: f000 fd7f bl 0x15e0 + ae2: f000 f81f bl 0xb24 + ae6: f000 f972 bl 0xdce + aea: b002 add sp, #8 + aec: bd00 pop {pc} + aee: 46c0 nop (mov r8, r8) + + af0: fffffa08 + af4: 0000ffff + af8: fffffa0a + afc: fffff804 + b00: ffff9800 + b04: 00002002 + b08: fffffd00 + b0c: 00001001 + + b10: e3a0d502 mov sp, #8388608 ; 0x800000 + b14: e28dd802 add sp, sp, #131072 ; 0x20000 + b18: e28fe005 add lr, pc, #5 + b1c: e12fff1e bx lr + b20: e1a00000 mov r0, r0 + + b24: b500 push {lr} + b26: b082 sub sp, #8 + b28: 49f1 ldr r1, =0x83ff00 ; via 0xef0 + b2a: 48f2 ldr r0, =0xffff5800 ; via 0xef4 + b2c: 6008 str r0, [r1, #0] + b2e: 2000 mov r0, #0 + b30: 2102 mov r1, #2 + b32: f000 fa07 bl 0xf44 + b36: 2000 mov r0, #0 + b38: 9000 str r0, [sp, #0] + b3a: 9900 ldr r1, [sp, #0] + b3c: 2005 mov r0, #5 + b3e: 0300 lsl r0, r0, #12 + b40: 4281 cmp r1, r0 + b42: d207 bcs 0xb54 + b44: 9800 ldr r0, [sp, #0] + b46: 3001 add r0, #1 + b48: 9000 str r0, [sp, #0] + b4a: 9900 ldr r1, [sp, #0] + b4c: 2005 mov r0, #5 + b4e: 0300 lsl r0, r0, #12 + b50: 4281 cmp r1, r0 + b52: d3f7 bcc 0xb44 + b54: f000 f82a bl 0xbac + b58: 2000 mov r0, #0 + b5a: 2107 mov r1, #7 + b5c: f000 f9f2 bl 0xf44 + b60: 2000 mov r0, #0 + b62: 9000 str r0, [sp, #0] + b64: 9900 ldr r1, [sp, #0] + b66: 2005 mov r0, #5 + b68: 0300 lsl r0, r0, #12 + b6a: 4281 cmp r1, r0 + b6c: d207 bcs 0xb7e + b6e: 9800 ldr r0, [sp, #0] + b70: 3001 add r0, #1 + b72: 9000 str r0, [sp, #0] + b74: 9900 ldr r1, [sp, #0] + b76: 2005 mov r0, #5 + b78: 0300 lsl r0, r0, #12 + b7a: 4281 cmp r1, r0 + b7c: d3f7 bcc 0xb6e + b7e: f000 f815 bl 0xbac + b82: 2000 mov r0, #0 + b84: 9001 str r0, [sp, #4] + b86: 9000 str r0, [sp, #0] + b88: 9900 ldr r1, [sp, #0] + b8a: 2005 mov r0, #5 + b8c: 0400 lsl r0, r0, #16 + b8e: 4281 cmp r1, r0 + b90: d20a bcs 0xba8 + b92: 9801 ldr r0, [sp, #4] + b94: 3001 add r0, #1 + b96: 9001 str r0, [sp, #4] + b98: 9800 ldr r0, [sp, #0] + b9a: 3001 add r0, #1 + b9c: 9000 str r0, [sp, #0] + b9e: 9900 ldr r1, [sp, #0] + ba0: 2005 mov r0, #5 + ba2: 0400 lsl r0, r0, #16 + ba4: 4281 cmp r1, r0 + ba6: d3f4 bcc 0xb92 + ba8: b002 add sp, #8 + baa: bd00 pop {pc} + + bac: b500 push {lr} + bae: b089 sub sp, #36 ; 0x24 + bb0: 48e1 ldr r0, =0x800100 ; via 0xf38 + bb2: 9005 str r0, [sp, #20] ; 0x14 + bb4: 48e1 ldr r0, =0x2060 ; via 0xf3c + bb6: 9008 str r0, [sp, #32] ; 0x20 + bb8: 9808 ldr r0, [sp, #32] ; 0x20 + bba: 6801 ldr r1, [r0, #0] + bbc: 48e0 ldr r0, =0xdddddddd ; via 0xf40 + bbe: 4281 cmp r1, r0 + bc0: d000 beq 0xbc4 + bc2: e102 b 0xdca + bc4: 201b mov r0, #27 ; 0x1b + bc6: f000 f95f bl 0xe88 + bca: 20f6 mov r0, #246 ; 0xf6 + bcc: f000 f95c bl 0xe88 + bd0: 2002 mov r0, #2 + bd2: f000 f959 bl 0xe88 + bd6: 2000 mov r0, #0 + bd8: f000 f956 bl 0xe88 + bdc: 2041 mov r0, #65 ; 0x41 + bde: f000 f953 bl 0xe88 + be2: 2001 mov r0, #1 + be4: f000 f950 bl 0xe88 + be8: 2040 mov r0, #64 ; 0x40 + bea: f000 f94d bl 0xe88 + bee: 2001 mov r0, #1 + bf0: 0300 lsl r0, r0, #12 + bf2: f000 f961 bl 0xeb8 + bf6: 281b cmp r0, #27 ; 0x1b + bf8: d000 beq 0xbfc + bfa: e0e6 b 0xdca + bfc: 2001 mov r0, #1 + bfe: 0300 lsl r0, r0, #12 + c00: f000 f95a bl 0xeb8 + c04: 28f6 cmp r0, #246 ; 0xf6 + c06: d000 beq 0xc0a + c08: e0df b 0xdca + c0a: 2001 mov r0, #1 + c0c: 0300 lsl r0, r0, #12 + c0e: f000 f953 bl 0xeb8 + c12: 2802 cmp r0, #2 + c14: d000 beq 0xc18 + c16: e0d8 b 0xdca + c18: 2001 mov r0, #1 + c1a: 0300 lsl r0, r0, #12 + c1c: f000 f94c bl 0xeb8 + c20: 2800 cmp r0, #0 + c22: d000 beq 0xc26 + c24: e0d1 b 0xdca + c26: 2001 mov r0, #1 + c28: 0300 lsl r0, r0, #12 + c2a: f000 f945 bl 0xeb8 + c2e: 2852 cmp r0, #82 ; 0x52 + c30: d000 beq 0xc34 + c32: e0ca b 0xdca + c34: 2001 mov r0, #1 + c36: 0300 lsl r0, r0, #12 + c38: f000 f93e bl 0xeb8 + c3c: 2801 cmp r0, #1 + c3e: d000 beq 0xc42 + c40: e0c3 b 0xdca + c42: 2001 mov r0, #1 + c44: 0300 lsl r0, r0, #12 + c46: f000 f937 bl 0xeb8 + c4a: 2853 cmp r0, #83 ; 0x53 + c4c: d000 beq 0xc50 + c4e: e0bc b 0xdca + c50: 201b mov r0, #27 ; 0x1b + c52: f000 f919 bl 0xe88 + c56: 20f6 mov r0, #246 ; 0xf6 + c58: f000 f916 bl 0xe88 + c5c: 2002 mov r0, #2 + c5e: f000 f913 bl 0xe88 + c62: 2000 mov r0, #0 + c64: f000 f910 bl 0xe88 + c68: 2041 mov r0, #65 ; 0x41 + c6a: f000 f90d bl 0xe88 + c6e: 2002 mov r0, #2 + c70: f000 f90a bl 0xe88 + c74: 2043 mov r0, #67 ; 0x43 + c76: f000 f907 bl 0xe88 + c7a: 2001 mov r0, #1 + c7c: 0300 lsl r0, r0, #12 + c7e: f000 f91b bl 0xeb8 + c82: 4669 mov r1, sp + c84: 7208 strb r0, [r1, #8] + c86: 2002 mov r0, #2 + c88: 7448 strb r0, [r1, #17] ; 0x11 + c8a: 2000 mov r0, #0 + c8c: 9000 str r0, [sp, #0] + c8e: 9800 ldr r0, [sp, #0] + c90: 2802 cmp r0, #2 + c92: d215 bcs 0xcc0 + c94: 2001 mov r0, #1 + c96: 0300 lsl r0, r0, #12 + c98: f000 f90e bl 0xeb8 + c9c: 4669 mov r1, sp + c9e: 9a00 ldr r2, [sp, #0] + ca0: 1a89 sub r1, r1, r2 + ca2: 7348 strb r0, [r1, #13] ; 0xd + ca4: 4669 mov r1, sp + ca6: 9800 ldr r0, [sp, #0] + ca8: 1a08 sub r0, r1, r0 + caa: 7b40 ldrb r0, [r0, #13] ; 0xd + cac: 7c49 ldrb r1, [r1, #17] ; 0x11 + cae: 4048 eor r0, r1 + cb0: 4669 mov r1, sp + cb2: 7448 strb r0, [r1, #17] ; 0x11 + cb4: 9800 ldr r0, [sp, #0] + cb6: 3001 add r0, #1 + cb8: 9000 str r0, [sp, #0] + cba: 9800 ldr r0, [sp, #0] + cbc: 2802 cmp r0, #2 + cbe: d3e9 bcc 0xc94 + cc0: 4668 mov r0, sp + cc2: 8980 ldrh r0, [r0, #12] ; 0xc + cc4: 466a mov r2, sp + cc6: 1e41 sub r1, r0, #1 + cc8: 8191 strh r1, [r2, #12] ; 0xc + cca: 2800 cmp r0, #0 + ccc: d016 beq 0xcfc + cce: 2001 mov r0, #1 + cd0: 0300 lsl r0, r0, #12 + cd2: f000 f8f1 bl 0xeb8 + cd6: 9905 ldr r1, [sp, #20] ; 0x14 + cd8: 7008 strb r0, [r1, #0] + cda: 9805 ldr r0, [sp, #20] ; 0x14 + cdc: 7800 ldrb r0, [r0, #0] + cde: 4669 mov r1, sp + ce0: 7c49 ldrb r1, [r1, #17] ; 0x11 + ce2: 4048 eor r0, r1 + ce4: 4669 mov r1, sp + ce6: 7448 strb r0, [r1, #17] ; 0x11 + ce8: 9805 ldr r0, [sp, #20] ; 0x14 + cea: 3001 add r0, #1 + cec: 9005 str r0, [sp, #20] ; 0x14 + cee: 4668 mov r0, sp + cf0: 8981 ldrh r1, [r0, #12] ; 0xc + cf2: 466a mov r2, sp + cf4: 1e48 sub r0, r1, #1 + cf6: 8190 strh r0, [r2, #12] ; 0xc + cf8: 2900 cmp r1, #0 + cfa: d1e8 bne 0xcce + cfc: 2001 mov r0, #1 + cfe: 0300 lsl r0, r0, #12 + d00: f000 f8da bl 0xeb8 + d04: 4669 mov r1, sp + d06: 7408 strb r0, [r1, #16] ; 0x10 + d08: 4668 mov r0, sp + d0a: 7c01 ldrb r1, [r0, #16] ; 0x10 + d0c: 7c40 ldrb r0, [r0, #17] ; 0x11 + d0e: 4281 cmp r1, r0 + d10: d015 beq 0xd3e + d12: 201b mov r0, #27 ; 0x1b + d14: f000 f8b8 bl 0xe88 + d18: 20f6 mov r0, #246 ; 0xf6 + d1a: f000 f8b5 bl 0xe88 + d1e: 2002 mov r0, #2 + d20: f000 f8b2 bl 0xe88 + d24: 2000 mov r0, #0 + d26: f000 f8af bl 0xe88 + d2a: 2045 mov r0, #69 ; 0x45 + d2c: f000 f8ac bl 0xe88 + d30: 2053 mov r0, #83 ; 0x53 + d32: f000 f8a9 bl 0xe88 + d36: 2016 mov r0, #22 ; 0x16 + d38: f000 f8a6 bl 0xe88 + d3c: e045 b 0xdca + d3e: 2081 mov r0, #129 ; 0x81 + d40: 0100 lsl r0, r0, #4 + d42: 9006 str r0, [sp, #24] ; 0x18 + d44: 48b1 ldr r0, =0x803ce0 ; via 0x100c + d46: 9007 str r0, [sp, #28] ; 0x1c + d48: 2000 mov r0, #0 + d4a: 9000 str r0, [sp, #0] + d4c: 9800 ldr r0, [sp, #0] + d4e: 2804 cmp r0, #4 + d50: d221 bcs 0xd96 + d52: 9900 ldr r1, [sp, #0] + d54: 9806 ldr r0, [sp, #24] ; 0x18 + d56: 5c0a ldrb r2, [r1, r0] + d58: 9900 ldr r1, [sp, #0] + d5a: 9807 ldr r0, [sp, #28] ; 0x1c + d5c: 5c08 ldrb r0, [r1, r0] + d5e: 4282 cmp r2, r0 + d60: dd13 ble 0xd8a + d62: 201b mov r0, #27 ; 0x1b + d64: f000 f890 bl 0xe88 + d68: 20f6 mov r0, #246 ; 0xf6 + d6a: f000 f88d bl 0xe88 + d6e: 2002 mov r0, #2 + d70: f000 f88a bl 0xe88 + d74: 2000 mov r0, #0 + d76: f000 f887 bl 0xe88 + d7a: 2041 mov r0, #65 ; 0x41 + d7c: f000 f884 bl 0xe88 + d80: 2003 mov r0, #3 + d82: f000 f881 bl 0xe88 + d86: 2057 mov r0, #87 ; 0x57 + d88: e7d6 b 0xd38 + d8a: 9800 ldr r0, [sp, #0] + d8c: 3001 add r0, #1 + d8e: 9000 str r0, [sp, #0] + d90: 9800 ldr r0, [sp, #0] + d92: 2804 cmp r0, #4 + d94: d3dd bcc 0xd52 + d96: 201b mov r0, #27 ; 0x1b + d98: f000 f876 bl 0xe88 + d9c: 20f6 mov r0, #246 ; 0xf6 + d9e: f000 f873 bl 0xe88 + da2: 2002 mov r0, #2 + da4: f000 f870 bl 0xe88 + da8: 2000 mov r0, #0 + daa: f000 f86d bl 0xe88 + dae: 2041 mov r0, #65 ; 0x41 + db0: f000 f86a bl 0xe88 + db4: 2003 mov r0, #3 + db6: f000 f867 bl 0xe88 + dba: 2042 mov r0, #66 ; 0x42 + dbc: f000 f864 bl 0xe88 + dc0: 484b ldr r0, =0x83ff00 ; via 0xef0 + dc2: 6800 ldr r0, [r0, #0] + dc4: 4992 ldr r1, =0x800100 ; via 0x1010 + dc6: f000 f85e bl 0xe86 + dca: b009 add sp, #36 ; 0x24 + dcc: bd00 pop {pc} + + dce: b500 push {lr} + dd0: b081 sub sp, #4 + dd2: 2066 mov r0, #102 ; 0x66 + dd4: f000 f858 bl 0xe88 + dd8: 2074 mov r0, #116 ; 0x74 + dda: f000 f855 bl 0xe88 + dde: 206d mov r0, #109 ; 0x6d + de0: f000 f852 bl 0xe88 + de4: 2074 mov r0, #116 ; 0x74 + de6: f000 f84f bl 0xe88 + dea: 206f mov r0, #111 ; 0x6f + dec: f000 f84c bl 0xe88 + df0: 206f mov r0, #111 ; 0x6f + df2: f000 f849 bl 0xe88 + df6: 206c mov r0, #108 ; 0x6c + df8: f000 f846 bl 0xe88 + dfc: 4985 ldr r1, =0x83ff80 ; via 0x1014 + dfe: 2000 mov r0, #0 + e00: 7008 strb r0, [r1, #0] + e02: 9000 str r0, [sp, #0] + e04: 9800 ldr r0, [sp, #0] + e06: 0c00 lsr r0, r0, #16 + e08: d105 bne 0xe16 + e0a: 9800 ldr r0, [sp, #0] + e0c: 3001 add r0, #1 + e0e: 9000 str r0, [sp, #0] + e10: 9800 ldr r0, [sp, #0] + e12: 0c00 lsr r0, r0, #16 + e14: d0f9 beq 0xe0a + e16: 2007 mov r0, #7 + e18: 0400 lsl r0, r0, #16 + e1a: f000 f84d bl 0xeb8 + e1e: 2879 cmp r0, #121 ; 0x79 + e20: d10e bne 0xe40 + e22: 2001 mov r0, #1 + e24: 0300 lsl r0, r0, #12 + e26: f000 f847 bl 0xeb8 + e2a: 2865 cmp r0, #101 ; 0x65 + e2c: d108 bne 0xe40 + e2e: 2001 mov r0, #1 + e30: 0300 lsl r0, r0, #12 + e32: f000 f841 bl 0xeb8 + e36: 2873 cmp r0, #115 ; 0x73 + e38: d102 bne 0xe40 + e3a: 4876 ldr r0, =0x83ff80 ; via 0x1014 + e3c: 2101 mov r1, #1 + e3e: 7001 strb r1, [r0, #0] + e40: f000 f8d2 bl 0xfe8 + e44: 2800 cmp r0, #0 + e46: d00d beq 0xe64 + e48: 206d mov r0, #109 ; 0x6d + e4a: f000 f81d bl 0xe88 + e4e: 206f mov r0, #111 ; 0x6f + e50: f000 f81a bl 0xe88 + e54: 2064 mov r0, #100 ; 0x64 + e56: f000 f817 bl 0xe88 + e5a: 2065 mov r0, #101 ; 0x65 + e5c: f000 f814 bl 0xe88 + e60: 206d mov r0, #109 ; 0x6d + e62: e00c b 0xe7e + e64: 2065 mov r0, #101 ; 0x65 + e66: f000 f80f bl 0xe88 + e6a: 2072 mov r0, #114 ; 0x72 + e6c: f000 f80c bl 0xe88 + e70: 2072 mov r0, #114 ; 0x72 + e72: f000 f809 bl 0xe88 + e76: 206f mov r0, #111 ; 0x6f + e78: f000 f806 bl 0xe88 + e7c: 2072 mov r0, #114 ; 0x72 + e7e: f000 f803 bl 0xe88 + e82: b001 add sp, #4 + e84: bd00 pop {pc} + + e86: 4708 bx r1 + + e88: b081 sub sp, #4 + e8a: 4669 mov r1, sp + e8c: 7008 strb r0, [r1, #0] + e8e: 4818 ldr r0, =0x83ff00 ; via 0xef0 + e90: 6800 ldr r0, [r0, #0] + e92: 7940 ldrb r0, [r0, #5] + e94: 0980 lsr r0, r0, #6 + e96: d3fa bcc 0xe8e + e98: 4815 ldr r0, =0x83ff00 ; via 0xef0 + e9a: 6800 ldr r0, [r0, #0] + e9c: 4669 mov r1, sp + e9e: 7809 ldrb r1, [r1, #0] + ea0: 7001 strb r1, [r0, #0] + ea2: b001 add sp, #4 + ea4: 46f7 mov pc, lr + ea6: 4812 ldr r0, =0x83ff00 ; via 0xef0 + ea8: 6800 ldr r0, [r0, #0] + eaa: 7940 ldrb r0, [r0, #5] + eac: 0840 lsr r0, r0, #1 + eae: d3fa bcc 0xea6 + eb0: 480f ldr r0, =0x83ff00 ; via 0xef0 + eb2: 6800 ldr r0, [r0, #0] + eb4: 7800 ldrb r0, [r0, #0] + eb6: 4770 bx lr + eb8: b083 sub sp, #12 ; 0xc + eba: 9000 str r0, [sp, #0] + ebc: 9800 ldr r0, [sp, #0] + ebe: 9002 str r0, [sp, #8] + ec0: 480b ldr r0, =0x83ff00 ; via 0xef0 + ec2: 6800 ldr r0, [r0, #0] + ec4: 7940 ldrb r0, [r0, #5] + ec6: 0840 lsr r0, r0, #1 + ec8: d20c bcs 0xee4 + eca: 9802 ldr r0, [sp, #8] + ecc: 3801 sub r0, #1 + ece: 9002 str r0, [sp, #8] + ed0: 9802 ldr r0, [sp, #8] + ed2: 2800 cmp r0, #0 + ed4: d101 bne 0xeda + ed6: 20ff mov r0, #255 ; 0xff + ed8: e007 b 0xeea + eda: 484f ldr r0, =0x83ff00 ; via 0x1018 + edc: 6800 ldr r0, [r0, #0] + ede: 7940 ldrb r0, [r0, #5] + ee0: 0840 lsr r0, r0, #1 + ee2: d3f2 bcc 0xeca + ee4: 484c ldr r0, =0x83ff00 ; via 0x1018 + ee6: 6800 ldr r0, [r0, #0] + ee8: 7800 ldrb r0, [r0, #0] + eea: b003 add sp, #12 ; 0xc + eec: 4770 bx lr + eee: 46c0 nop (mov r8, r8) + ef0: ff00 <half-bl> + ef2: 0083 lsl r3, r0, #2 + ef4: 5800 ldr r0, [r0, r0] + ef6: ffff <half-bl> + ef8: b081 sub sp, #4 + efa: e001 b 0xf00 + efc: 9800 ldr r0, [sp, #0] + efe: 3801 sub r0, #1 + f00: 9000 str r0, [sp, #0] + f02: 4845 ldr r0, =0x83ff00 ; via 0x1018 + f04: 6800 ldr r0, [r0, #0] + f06: 7940 ldrb r0, [r0, #5] + f08: 0840 lsr r0, r0, #1 + f0a: d202 bcs 0xf12 + f0c: 9800 ldr r0, [sp, #0] + f0e: 2800 cmp r0, #0 + f10: dcf4 bgt 0xefc + f12: 9800 ldr r0, [sp, #0] + f14: 2800 cmp r0, #0 + f16: dd01 ble 0xf1c + f18: 2000 mov r0, #0 + f1a: e000 b 0xf1e + f1c: 2001 mov r0, #1 + f1e: b001 add sp, #4 + f20: 4770 bx lr + f22: b082 sub sp, #8 + f24: 9000 str r0, [sp, #0] + f26: 4669 mov r1, sp + f28: 2000 mov r0, #0 + f2a: 7188 strb r0, [r1, #6] + f2c: 9900 ldr r1, [sp, #0] + f2e: 483b ldr r0, =0xfffef000 ; via 0x101c + f30: 8800 ldrh r0, [r0, #0] + f32: 8008 strh r0, [r1, #0] + f34: b002 add sp, #8 + f36: 4770 bx lr + f38: 0100 lsl r0, r0, #4 + f3a: 0080 lsl r0, r0, #2 + f3c: 2060 mov r0, #96 ; 0x60 + f3e: 0000 lsl r0, r0, #0 + f40: dddd ble 0xefe + f42: dddd ble 0xf00 + f44: b081 sub sp, #4 + f46: 466a mov r2, sp + f48: 7051 strb r1, [r2, #1] + f4a: 4669 mov r1, sp + f4c: 7008 strb r0, [r1, #0] + f4e: 4934 ldr r1, =0xffff6000 ; via 0x1020 + f50: 2002 mov r0, #2 + f52: 880a ldrh r2, [r1, #0] + f54: 4310 orr r0, r2 + f56: 8008 strh r0, [r1, #0] + f58: 4831 ldr r0, =0xffff6000 ; via 0x1020 + f5a: 8801 ldrh r1, [r0, #0] + f5c: 0849 lsr r1, r1, #1 + f5e: 0049 lsl r1, r1, #1 + f60: 8001 strh r1, [r0, #0] + f62: 492f ldr r1, =0xffff6000 ; via 0x1020 + f64: 8808 ldrh r0, [r1, #0] + f66: 2202 mov r2, #2 + f68: 4390 bic r0, r2 + f6a: 8008 strh r0, [r1, #0] + f6c: 482a ldr r0, =0x83ff00 ; via 0x1018 + f6e: 6801 ldr r1, [r0, #0] + f70: 2007 mov r0, #7 + f72: 7208 strb r0, [r1, #8] + f74: 4828 ldr r0, =0x83ff00 ; via 0x1018 + f76: 6801 ldr r1, [r0, #0] + f78: 20bf mov r0, #191 ; 0xbf + f7a: 70c8 strb r0, [r1, #3] + f7c: 4826 ldr r0, =0x83ff00 ; via 0x1018 + f7e: 6800 ldr r0, [r0, #0] + f80: 1c80 add r0, r0, #2 + f82: 2110 mov r1, #16 ; 0x10 + f84: 8802 ldrh r2, [r0, #0] + f86: 4311 orr r1, r2 + f88: 8001 strh r1, [r0, #0] + f8a: 4823 ldr r0, =0x83ff00 ; via 0x1018 + f8c: 6801 ldr r1, [r0, #0] + f8e: 2080 mov r0, #128 ; 0x80 + f90: 70c8 strb r0, [r1, #3] + f92: 4821 ldr r0, =0x83ff00 ; via 0x1018 + f94: 6800 ldr r0, [r0, #0] + f96: 2107 mov r1, #7 + f98: 7081 strb r1, [r0, #2] + f9a: 481f ldr r0, =0x83ff00 ; via 0x1018 + f9c: 6800 ldr r0, [r0, #0] + f9e: 21bf mov r1, #191 ; 0xbf + fa0: 70c1 strb r1, [r0, #3] + fa2: 481d ldr r0, =0x83ff00 ; via 0x1018 + fa4: 6801 ldr r1, [r0, #0] + fa6: 4668 mov r0, sp + fa8: 7840 ldrb r0, [r0, #1] + faa: 7008 strb r0, [r1, #0] + fac: 481a ldr r0, =0x83ff00 ; via 0x1018 + fae: 6801 ldr r1, [r0, #0] + fb0: 4668 mov r0, sp + fb2: 7800 ldrb r0, [r0, #0] + fb4: 7048 strb r0, [r1, #1] + fb6: 4818 ldr r0, =0x83ff00 ; via 0x1018 + fb8: 6801 ldr r1, [r0, #0] + fba: 2003 mov r0, #3 + fbc: 70c8 strb r0, [r1, #3] + fbe: 4816 ldr r0, =0x83ff00 ; via 0x1018 + fc0: 6800 ldr r0, [r0, #0] + fc2: 2100 mov r1, #0 + fc4: 7201 strb r1, [r0, #8] + fc6: 4814 ldr r0, =0x83ff00 ; via 0x1018 + fc8: 6800 ldr r0, [r0, #0] + fca: 7940 ldrb r0, [r0, #5] + fcc: 0840 lsr r0, r0, #1 + fce: d309 bcc 0xfe4 + fd0: 4669 mov r1, sp + fd2: 4811 ldr r0, =0x83ff00 ; via 0x1018 + fd4: 6800 ldr r0, [r0, #0] + fd6: 7800 ldrb r0, [r0, #0] + fd8: 7088 strb r0, [r1, #2] + fda: 480f ldr r0, =0x83ff00 ; via 0x1018 + fdc: 6800 ldr r0, [r0, #0] + fde: 7940 ldrb r0, [r0, #5] + fe0: 0840 lsr r0, r0, #1 + fe2: d2f5 bcs 0xfd0 + fe4: b001 add sp, #4 + fe6: 4770 bx lr + fe8: 480a ldr r0, =0x83ff80 ; via 0x1014 + fea: 7800 ldrb r0, [r0, #0] + fec: 4770 bx lr + fee: b500 push {lr} + ff0: b081 sub sp, #4 + ff2: 4669 mov r1, sp + ff4: 7008 strb r0, [r1, #0] + ff6: 4668 mov r0, sp + ff8: 7800 ldrb r0, [r0, #0] + ffa: f7ff ff45 bl 0xe88 + ffe: b001 add sp, #4 + 1000: bd00 pop {pc} + 1002: b500 push {lr} + 1004: f7ff ff4f bl 0xea6 + 1008: bd00 pop {pc} + 100a: 46c0 nop (mov r8, r8) + 100c: 3ce0 sub r4, #224 ; 0xe0 + 100e: 0080 lsl r0, r0, #2 + 1010: 0100 lsl r0, r0, #4 + 1012: 0080 lsl r0, r0, #2 + 1014: ff80 <half-bl> + 1016: 0083 lsl r3, r0, #2 + 1018: ff00 <half-bl> + 101a: 0083 lsl r3, r0, #2 + 101c: f000 fffe bl 0x201c + 1020: 6000 str r0, [r0, #0] + 1022: ffff <half-bl> + 1024: 4700 bx r0 + 1026: 0000 lsl r0, r0, #0 + 1028: b08c sub sp, #48 ; 0x30 + 102a: 9101 str r1, [sp, #4] + 102c: 9000 str r0, [sp, #0] + 102e: 2000 mov r0, #0 + 1030: 9003 str r0, [sp, #12] ; 0xc + 1032: 9800 ldr r0, [sp, #0] + 1034: 7801 ldrb r1, [r0, #0] + 1036: 3001 add r0, #1 + 1038: 9000 str r0, [sp, #0] + 103a: 9105 str r1, [sp, #20] ; 0x14 + 103c: 9800 ldr r0, [sp, #0] + 103e: 7801 ldrb r1, [r0, #0] + 1040: 3001 add r0, #1 + 1042: 9000 str r0, [sp, #0] + 1044: 9801 ldr r0, [sp, #4] + 1046: 7001 strb r1, [r0, #0] + 1048: 2001 mov r0, #1 + 104a: 9004 str r0, [sp, #16] ; 0x10 + 104c: e0a8 b 0x11a0 + 104e: 9804 ldr r0, [sp, #16] ; 0x10 + 1050: 3002 add r0, #2 + 1052: 9004 str r0, [sp, #16] ; 0x10 + 1054: 9800 ldr r0, [sp, #0] + 1056: 7801 ldrb r1, [r0, #0] + 1058: 3001 add r0, #1 + 105a: 9000 str r0, [sp, #0] + 105c: 4668 mov r0, sp + 105e: 8441 strh r1, [r0, #34] ; 0x22 + 1060: 9800 ldr r0, [sp, #0] + 1062: 7801 ldrb r1, [r0, #0] + 1064: 3001 add r0, #1 + 1066: 9000 str r0, [sp, #0] + 1068: 4668 mov r0, sp + 106a: 8401 strh r1, [r0, #32] ; 0x20 + 106c: 8c00 ldrh r0, [r0, #32] ; 0x20 + 106e: 4669 mov r1, sp + 1070: 8c49 ldrh r1, [r1, #34] ; 0x22 + 1072: 0209 lsl r1, r1, #8 + 1074: 1840 add r0, r0, r1 + 1076: 9901 ldr r1, [sp, #4] + 1078: 8088 strh r0, [r1, #4] + 107a: 9804 ldr r0, [sp, #16] ; 0x10 + 107c: 3001 add r0, #1 + 107e: 9004 str r0, [sp, #16] ; 0x10 + 1080: 9800 ldr r0, [sp, #0] + 1082: 7801 ldrb r1, [r0, #0] + 1084: 3001 add r0, #1 + 1086: 9000 str r0, [sp, #0] + 1088: 4668 mov r0, sp + 108a: 7601 strb r1, [r0, #24] ; 0x18 + 108c: 9901 ldr r1, [sp, #4] + 108e: 7e00 ldrb r0, [r0, #24] ; 0x18 + 1090: 7188 strb r0, [r1, #6] + 1092: 4668 mov r0, sp + 1094: 7e00 ldrb r0, [r0, #24] ; 0x18 + 1096: 2840 cmp r0, #64 ; 0x40 + 1098: dc00 bgt 0x109c + 109a: e09f b 0x11dc + 109c: 2004 mov r0, #4 + 109e: 9003 str r0, [sp, #12] ; 0xc + 10a0: e09c b 0x11dc + 10a2: 9804 ldr r0, [sp, #16] ; 0x10 + 10a4: 3002 add r0, #2 + 10a6: 9004 str r0, [sp, #16] ; 0x10 + 10a8: 9800 ldr r0, [sp, #0] + 10aa: 7801 ldrb r1, [r0, #0] + 10ac: 3001 add r0, #1 + 10ae: 9000 str r0, [sp, #0] + 10b0: 4668 mov r0, sp + 10b2: 8441 strh r1, [r0, #34] ; 0x22 + 10b4: 9800 ldr r0, [sp, #0] + 10b6: 7801 ldrb r1, [r0, #0] + 10b8: 3001 add r0, #1 + 10ba: 9000 str r0, [sp, #0] + 10bc: 4668 mov r0, sp + 10be: 8401 strh r1, [r0, #32] ; 0x20 + 10c0: 8c00 ldrh r0, [r0, #32] ; 0x20 + 10c2: 4669 mov r1, sp + 10c4: 8c49 ldrh r1, [r1, #34] ; 0x22 + 10c6: 0209 lsl r1, r1, #8 + 10c8: 1841 add r1, r0, r1 + 10ca: 9801 ldr r0, [sp, #4] + 10cc: 8081 strh r1, [r0, #4] + 10ce: 9804 ldr r0, [sp, #16] ; 0x10 + 10d0: 3001 add r0, #1 + 10d2: 9004 str r0, [sp, #16] ; 0x10 + 10d4: 9800 ldr r0, [sp, #0] + 10d6: 7801 ldrb r1, [r0, #0] + 10d8: 3001 add r0, #1 + 10da: 9000 str r0, [sp, #0] + 10dc: 4668 mov r0, sp + 10de: 7601 strb r1, [r0, #24] ; 0x18 + 10e0: 9901 ldr r1, [sp, #4] + 10e2: 7e00 ldrb r0, [r0, #24] ; 0x18 + 10e4: 7188 strb r0, [r1, #6] + 10e6: 4668 mov r0, sp + 10e8: 7e00 ldrb r0, [r0, #24] ; 0x18 + 10ea: 2840 cmp r0, #64 ; 0x40 + 10ec: dcd6 bgt 0x109c + 10ee: 9801 ldr r0, [sp, #4] + 10f0: 3008 add r0, #8 + 10f2: 9007 str r0, [sp, #28] ; 0x1c + 10f4: 2000 mov r0, #0 + 10f6: 9002 str r0, [sp, #8] + 10f8: 9902 ldr r1, [sp, #8] + 10fa: 4668 mov r0, sp + 10fc: 7e00 ldrb r0, [r0, #24] ; 0x18 + 10fe: 4281 cmp r1, r0 + 1100: da6c bge 0x11dc + 1102: 9800 ldr r0, [sp, #0] + 1104: 7801 ldrb r1, [r0, #0] + 1106: 3001 add r0, #1 + 1108: 9000 str r0, [sp, #0] + 110a: 4668 mov r0, sp + 110c: 84c1 strh r1, [r0, #38] ; 0x26 + 110e: 9800 ldr r0, [sp, #0] + 1110: 7801 ldrb r1, [r0, #0] + 1112: 3001 add r0, #1 + 1114: 9000 str r0, [sp, #0] + 1116: 4668 mov r0, sp + 1118: 8481 strh r1, [r0, #36] ; 0x24 + 111a: 9807 ldr r0, [sp, #28] ; 0x1c + 111c: 1c81 add r1, r0, #2 + 111e: 9107 str r1, [sp, #28] ; 0x1c + 1120: 4669 mov r1, sp + 1122: 8c89 ldrh r1, [r1, #36] ; 0x24 + 1124: 466a mov r2, sp + 1126: 8cd2 ldrh r2, [r2, #38] ; 0x26 + 1128: 0212 lsl r2, r2, #8 + 112a: 1889 add r1, r1, r2 + 112c: 8001 strh r1, [r0, #0] + 112e: 9804 ldr r0, [sp, #16] ; 0x10 + 1130: 3002 add r0, #2 + 1132: 9004 str r0, [sp, #16] ; 0x10 + 1134: 9802 ldr r0, [sp, #8] + 1136: 3001 add r0, #1 + 1138: 9002 str r0, [sp, #8] + 113a: 9902 ldr r1, [sp, #8] + 113c: 4668 mov r0, sp + 113e: 7e00 ldrb r0, [r0, #24] ; 0x18 + 1140: 4281 cmp r1, r0 + 1142: dbde blt 0x1102 + 1144: e04a b 0x11dc + 1146: 9804 ldr r0, [sp, #16] ; 0x10 + 1148: 3002 add r0, #2 + 114a: 9004 str r0, [sp, #16] ; 0x10 + 114c: 9800 ldr r0, [sp, #0] + 114e: 7801 ldrb r1, [r0, #0] + 1150: 3001 add r0, #1 + 1152: 9000 str r0, [sp, #0] + 1154: 4668 mov r0, sp + 1156: 8501 strh r1, [r0, #40] ; 0x28 + 1158: 9800 ldr r0, [sp, #0] + 115a: 7801 ldrb r1, [r0, #0] + 115c: 3001 add r0, #1 + 115e: 9000 str r0, [sp, #0] + 1160: 4668 mov r0, sp + 1162: 8541 strh r1, [r0, #42] ; 0x2a + 1164: 8d41 ldrh r1, [r0, #42] ; 0x2a + 1166: 8d00 ldrh r0, [r0, #40] ; 0x28 + 1168: 0200 lsl r0, r0, #8 + 116a: 1809 add r1, r1, r0 + 116c: 9801 ldr r0, [sp, #4] + 116e: 8081 strh r1, [r0, #4] + 1170: 9804 ldr r0, [sp, #16] ; 0x10 + 1172: 3002 add r0, #2 + 1174: 9004 str r0, [sp, #16] ; 0x10 + 1176: 9800 ldr r0, [sp, #0] + 1178: 7801 ldrb r1, [r0, #0] + 117a: 3001 add r0, #1 + 117c: 9000 str r0, [sp, #0] + 117e: 4668 mov r0, sp + 1180: 8581 strh r1, [r0, #44] ; 0x2c + 1182: 9800 ldr r0, [sp, #0] + 1184: 7801 ldrb r1, [r0, #0] + 1186: 3001 add r0, #1 + 1188: 9000 str r0, [sp, #0] + 118a: 4668 mov r0, sp + 118c: 85c1 strh r1, [r0, #46] ; 0x2e + 118e: 8dc1 ldrh r1, [r0, #46] ; 0x2e + 1190: 8d80 ldrh r0, [r0, #44] ; 0x2c + 1192: 0200 lsl r0, r0, #8 + 1194: 1808 add r0, r1, r0 + 1196: 9901 ldr r1, [sp, #4] + 1198: 80c8 strh r0, [r1, #6] + 119a: e01f b 0x11dc + 119c: 2008 mov r0, #8 + 119e: e77e b 0x109e + 11a0: 9801 ldr r0, [sp, #4] + 11a2: 7801 ldrb r1, [r0, #0] + 11a4: 290a cmp r1, #10 ; 0xa + 11a6: d8f9 bhi 0x119c + 11a8: a001 add r0, pc, #4 + 11aa: 0089 lsl r1, r1, #2 + 11ac: 5840 ldr r0, [r0, r1] + 11ae: 4687 mov pc, r0 + 11b0: 11dc asr r4, r3, #7 + 11b2: 0000 lsl r0, r0, #0 + 11b4: 11dc asr r4, r3, #7 + 11b6: 0000 lsl r0, r0, #0 + 11b8: 11dc asr r4, r3, #7 + 11ba: 0000 lsl r0, r0, #0 + 11bc: 11dc asr r4, r3, #7 + 11be: 0000 lsl r0, r0, #0 + 11c0: 11dc asr r4, r3, #7 + 11c2: 0000 lsl r0, r0, #0 + 11c4: 11dc asr r4, r3, #7 + 11c6: 0000 lsl r0, r0, #0 + 11c8: 11dc asr r4, r3, #7 + 11ca: 0000 lsl r0, r0, #0 + 11cc: 104e asr r6, r1, #1 + 11ce: 0000 lsl r0, r0, #0 + 11d0: 10a2 asr r2, r4, #2 + 11d2: 0000 lsl r0, r0, #0 + 11d4: 11dc asr r4, r3, #7 + 11d6: 0000 lsl r0, r0, #0 + 11d8: 1146 asr r6, r0, #5 + 11da: 0000 lsl r0, r0, #0 + 11dc: 9905 ldr r1, [sp, #20] ; 0x14 + 11de: 9804 ldr r0, [sp, #16] ; 0x10 + 11e0: 4281 cmp r1, r0 + 11e2: d001 beq 0x11e8 + 11e4: 2004 mov r0, #4 + 11e6: 9003 str r0, [sp, #12] ; 0xc + 11e8: 9803 ldr r0, [sp, #12] ; 0xc + 11ea: b00c add sp, #48 ; 0x30 + 11ec: 4770 bx lr + 11ee: b089 sub sp, #36 ; 0x24 + 11f0: 9101 str r1, [sp, #4] + 11f2: 9000 str r0, [sp, #0] + 11f4: 2000 mov r0, #0 + 11f6: 9003 str r0, [sp, #12] ; 0xc + 11f8: 9801 ldr r0, [sp, #4] + 11fa: 1c41 add r1, r0, #1 + 11fc: 9101 str r1, [sp, #4] + 11fe: 9005 str r0, [sp, #20] ; 0x14 + 1200: 9801 ldr r0, [sp, #4] + 1202: 1c41 add r1, r0, #1 + 1204: 9101 str r1, [sp, #4] + 1206: 9900 ldr r1, [sp, #0] + 1208: 7809 ldrb r1, [r1, #0] + 120a: 7001 strb r1, [r0, #0] + 120c: 4669 mov r1, sp + 120e: 2001 mov r0, #1 + 1210: 7408 strb r0, [r1, #16] ; 0x10 + 1212: 9801 ldr r0, [sp, #4] + 1214: 1c41 add r1, r0, #1 + 1216: 9101 str r1, [sp, #4] + 1218: 9900 ldr r1, [sp, #0] + 121a: 7849 ldrb r1, [r1, #1] + 121c: 7001 strb r1, [r0, #0] + 121e: 4669 mov r1, sp + 1220: 4668 mov r0, sp + 1222: 7c00 ldrb r0, [r0, #16] ; 0x10 + 1224: 3001 add r0, #1 + 1226: 7408 strb r0, [r1, #16] ; 0x10 + 1228: e0e4 b 0x13f4 + 122a: 9800 ldr r0, [sp, #0] + 122c: 7840 ldrb r0, [r0, #1] + 122e: 2800 cmp r0, #0 + 1230: d000 beq 0x1234 + 1232: e0fd b 0x1430 + 1234: 9801 ldr r0, [sp, #4] + 1236: 1c41 add r1, r0, #1 + 1238: 9101 str r1, [sp, #4] + 123a: 9900 ldr r1, [sp, #0] + 123c: 7909 ldrb r1, [r1, #4] + 123e: 7001 strb r1, [r0, #0] + 1240: 9801 ldr r0, [sp, #4] + 1242: 1c41 add r1, r0, #1 + 1244: 9101 str r1, [sp, #4] + 1246: 9900 ldr r1, [sp, #0] + 1248: 7949 ldrb r1, [r1, #5] + 124a: 7001 strb r1, [r0, #0] + 124c: 9801 ldr r0, [sp, #4] + 124e: 1c41 add r1, r0, #1 + 1250: 9101 str r1, [sp, #4] + 1252: 9900 ldr r1, [sp, #0] + 1254: 7989 ldrb r1, [r1, #6] + 1256: 7001 strb r1, [r0, #0] + 1258: 4668 mov r0, sp + 125a: 7c00 ldrb r0, [r0, #16] ; 0x10 + 125c: 3003 add r0, #3 + 125e: 4669 mov r1, sp + 1260: 7408 strb r0, [r1, #16] ; 0x10 + 1262: e0e5 b 0x1430 + 1264: 9800 ldr r0, [sp, #0] + 1266: 7840 ldrb r0, [r0, #1] + 1268: 2800 cmp r0, #0 + 126a: d000 beq 0x126e + 126c: e0e0 b 0x1430 + 126e: 9801 ldr r0, [sp, #4] + 1270: 1c41 add r1, r0, #1 + 1272: 9101 str r1, [sp, #4] + 1274: 9900 ldr r1, [sp, #0] + 1276: 7909 ldrb r1, [r1, #4] + 1278: 7001 strb r1, [r0, #0] + 127a: 4668 mov r0, sp + 127c: 7c00 ldrb r0, [r0, #16] ; 0x10 + 127e: 3001 add r0, #1 + 1280: e7ed b 0x125e + 1282: 9800 ldr r0, [sp, #0] + 1284: 7840 ldrb r0, [r0, #1] + 1286: 2800 cmp r0, #0 + 1288: d000 beq 0x128c + 128a: e0d1 b 0x1430 + 128c: e7ef b 0x126e + 128e: 9800 ldr r0, [sp, #0] + 1290: 7840 ldrb r0, [r0, #1] + 1292: 2800 cmp r0, #0 + 1294: d000 beq 0x1298 + 1296: e0cb b 0x1430 + 1298: e7e9 b 0x126e + 129a: 9800 ldr r0, [sp, #0] + 129c: 7840 ldrb r0, [r0, #1] + 129e: 2800 cmp r0, #0 + 12a0: d000 beq 0x12a4 + 12a2: e0c5 b 0x1430 + 12a4: 4669 mov r1, sp + 12a6: 9800 ldr r0, [sp, #0] + 12a8: 8880 ldrh r0, [r0, #4] + 12aa: 8408 strh r0, [r1, #32] ; 0x20 + 12ac: 9801 ldr r0, [sp, #4] + 12ae: 1c41 add r1, r0, #1 + 12b0: 9101 str r1, [sp, #4] + 12b2: 4669 mov r1, sp + 12b4: 8c09 ldrh r1, [r1, #32] ; 0x20 + 12b6: 0409 lsl r1, r1, #16 + 12b8: 0e09 lsr r1, r1, #24 + 12ba: 0209 lsl r1, r1, #8 + 12bc: 1209 asr r1, r1, #8 + 12be: 7001 strb r1, [r0, #0] + 12c0: 9801 ldr r0, [sp, #4] + 12c2: 1c41 add r1, r0, #1 + 12c4: 9101 str r1, [sp, #4] + 12c6: 4669 mov r1, sp + 12c8: 8c09 ldrh r1, [r1, #32] ; 0x20 + 12ca: 0609 lsl r1, r1, #24 + 12cc: 0e09 lsr r1, r1, #24 + 12ce: 7001 strb r1, [r0, #0] + 12d0: 4669 mov r1, sp + 12d2: 9800 ldr r0, [sp, #0] + 12d4: 88c0 ldrh r0, [r0, #6] + 12d6: 8408 strh r0, [r1, #32] ; 0x20 + 12d8: 9801 ldr r0, [sp, #4] + 12da: 1c41 add r1, r0, #1 + 12dc: 9101 str r1, [sp, #4] + 12de: 4669 mov r1, sp + 12e0: 8c09 ldrh r1, [r1, #32] ; 0x20 + 12e2: 0409 lsl r1, r1, #16 + 12e4: 0e09 lsr r1, r1, #24 + 12e6: 0209 lsl r1, r1, #8 + 12e8: 1209 asr r1, r1, #8 + 12ea: 7001 strb r1, [r0, #0] + 12ec: 9801 ldr r0, [sp, #4] + 12ee: 1c41 add r1, r0, #1 + 12f0: 9101 str r1, [sp, #4] + 12f2: 4669 mov r1, sp + 12f4: 8c09 ldrh r1, [r1, #32] ; 0x20 + 12f6: 0609 lsl r1, r1, #24 + 12f8: 0e09 lsr r1, r1, #24 + 12fa: 7001 strb r1, [r0, #0] + 12fc: 4668 mov r0, sp + 12fe: 7c00 ldrb r0, [r0, #16] ; 0x10 + 1300: 3004 add r0, #4 + 1302: e7ac b 0x125e + 1304: 9800 ldr r0, [sp, #0] + 1306: 7840 ldrb r0, [r0, #1] + 1308: 2800 cmp r0, #0 + 130a: d000 beq 0x130e + 130c: e090 b 0x1430 + 130e: e7ae b 0x126e + 1310: 9800 ldr r0, [sp, #0] + 1312: 7840 ldrb r0, [r0, #1] + 1314: 2800 cmp r0, #0 + 1316: d000 beq 0x131a + 1318: e08a b 0x1430 + 131a: 4669 mov r1, sp + 131c: 4668 mov r0, sp + 131e: 7c00 ldrb r0, [r0, #16] ; 0x10 + 1320: 3001 add r0, #1 + 1322: 7408 strb r0, [r1, #16] ; 0x10 + 1324: 4668 mov r0, sp + 1326: 9900 ldr r1, [sp, #0] + 1328: 7909 ldrb r1, [r1, #4] + 132a: 7601 strb r1, [r0, #24] ; 0x18 + 132c: 9801 ldr r0, [sp, #4] + 132e: 1c41 add r1, r0, #1 + 1330: 9101 str r1, [sp, #4] + 1332: 4669 mov r1, sp + 1334: 7e09 ldrb r1, [r1, #24] ; 0x18 + 1336: 7001 strb r1, [r0, #0] + 1338: 4668 mov r0, sp + 133a: 7e00 ldrb r0, [r0, #24] ; 0x18 + 133c: 2840 cmp r0, #64 ; 0x40 + 133e: dd01 ble 0x1344 + 1340: 2004 mov r0, #4 + 1342: e055 b 0x13f0 + 1344: 9800 ldr r0, [sp, #0] + 1346: 3006 add r0, #6 + 1348: 9007 str r0, [sp, #28] ; 0x1c + 134a: 2000 mov r0, #0 + 134c: 9002 str r0, [sp, #8] + 134e: 9902 ldr r1, [sp, #8] + 1350: 4668 mov r0, sp + 1352: 7e00 ldrb r0, [r0, #24] ; 0x18 + 1354: 4281 cmp r1, r0 + 1356: da6b bge 0x1430 + 1358: 9801 ldr r0, [sp, #4] + 135a: 1c41 add r1, r0, #1 + 135c: 9101 str r1, [sp, #4] + 135e: 9907 ldr r1, [sp, #28] ; 0x1c + 1360: 8809 ldrh r1, [r1, #0] + 1362: 0409 lsl r1, r1, #16 + 1364: 0e09 lsr r1, r1, #24 + 1366: 0209 lsl r1, r1, #8 + 1368: 1209 asr r1, r1, #8 + 136a: 7001 strb r1, [r0, #0] + 136c: 9807 ldr r0, [sp, #28] ; 0x1c + 136e: 8801 ldrh r1, [r0, #0] + 1370: 3002 add r0, #2 + 1372: 9007 str r0, [sp, #28] ; 0x1c + 1374: 0608 lsl r0, r1, #24 + 1376: 0e01 lsr r1, r0, #24 + 1378: 9801 ldr r0, [sp, #4] + 137a: 1c42 add r2, r0, #1 + 137c: 9201 str r2, [sp, #4] + 137e: 7001 strb r1, [r0, #0] + 1380: 4669 mov r1, sp + 1382: 4668 mov r0, sp + 1384: 7c00 ldrb r0, [r0, #16] ; 0x10 + 1386: 3002 add r0, #2 + 1388: 7408 strb r0, [r1, #16] ; 0x10 + 138a: 9802 ldr r0, [sp, #8] + 138c: 3001 add r0, #1 + 138e: 9002 str r0, [sp, #8] + 1390: 9902 ldr r1, [sp, #8] + 1392: 4668 mov r0, sp + 1394: 7e00 ldrb r0, [r0, #24] ; 0x18 + 1396: 4281 cmp r1, r0 + 1398: dbde blt 0x1358 + 139a: e049 b 0x1430 + 139c: 9800 ldr r0, [sp, #0] + 139e: 7840 ldrb r0, [r0, #1] + 13a0: 2800 cmp r0, #0 + 13a2: d145 bne 0x1430 + 13a4: 4669 mov r1, sp + 13a6: 9800 ldr r0, [sp, #0] + 13a8: 8880 ldrh r0, [r0, #4] + 13aa: 8408 strh r0, [r1, #32] ; 0x20 + 13ac: 9801 ldr r0, [sp, #4] + 13ae: 1c41 add r1, r0, #1 + 13b0: 9101 str r1, [sp, #4] + 13b2: 4669 mov r1, sp + 13b4: 8c09 ldrh r1, [r1, #32] ; 0x20 + 13b6: 0409 lsl r1, r1, #16 + 13b8: 0e09 lsr r1, r1, #24 + 13ba: 0209 lsl r1, r1, #8 + 13bc: 1209 asr r1, r1, #8 + 13be: 7001 strb r1, [r0, #0] + 13c0: 9801 ldr r0, [sp, #4] + 13c2: 1c41 add r1, r0, #1 + 13c4: 9101 str r1, [sp, #4] + 13c6: 4669 mov r1, sp + 13c8: 8c09 ldrh r1, [r1, #32] ; 0x20 + 13ca: 0609 lsl r1, r1, #24 + 13cc: 0e09 lsr r1, r1, #24 + 13ce: 7001 strb r1, [r0, #0] + 13d0: 4668 mov r0, sp + 13d2: 9900 ldr r1, [sp, #0] + 13d4: 88c9 ldrh r1, [r1, #6] + 13d6: 8401 strh r1, [r0, #32] ; 0x20 + 13d8: 9901 ldr r1, [sp, #4] + 13da: 1c48 add r0, r1, #1 + 13dc: 9001 str r0, [sp, #4] + 13de: 4668 mov r0, sp + 13e0: 8c00 ldrh r0, [r0, #32] ; 0x20 + 13e2: 0400 lsl r0, r0, #16 + 13e4: 0e00 lsr r0, r0, #24 + 13e6: 0200 lsl r0, r0, #8 + 13e8: 1200 asr r0, r0, #8 + 13ea: 7008 strb r0, [r1, #0] + 13ec: e77e b 0x12ec + 13ee: 2008 mov r0, #8 + 13f0: 9003 str r0, [sp, #12] ; 0xc + 13f2: e01d b 0x1430 + 13f4: 9800 ldr r0, [sp, #0] + 13f6: 7800 ldrb r0, [r0, #0] + 13f8: 280a cmp r0, #10 ; 0xa + 13fa: d8f8 bhi 0x13ee + 13fc: a101 add r1, pc, #4 + 13fe: 0080 lsl r0, r0, #2 + 1400: 5808 ldr r0, [r1, r0] + 1402: 4687 mov pc, r0 + 1404: 122a asr r2, r5, #8 + 1406: 0000 lsl r0, r0, #0 + 1408: 1264 asr r4, r4, #9 + 140a: 0000 lsl r0, r0, #0 + 140c: 1282 asr r2, r0, #10 + 140e: 0000 lsl r0, r0, #0 + 1410: 128e asr r6, r1, #10 + 1412: 0000 lsl r0, r0, #0 + 1414: 1430 asr r0, r6, #16 + 1416: 0000 lsl r0, r0, #0 + 1418: 129a asr r2, r3, #10 + 141a: 0000 lsl r0, r0, #0 + 141c: 1304 asr r4, r0, #12 + 141e: 0000 lsl r0, r0, #0 + 1420: 1310 asr r0, r2, #12 + 1422: 0000 lsl r0, r0, #0 + 1424: 1430 asr r0, r6, #16 + 1426: 0000 lsl r0, r0, #0 + 1428: 139c asr r4, r3, #14 + 142a: 0000 lsl r0, r0, #0 + 142c: 1430 asr r0, r6, #16 + 142e: 0000 lsl r0, r0, #0 + 1430: 9805 ldr r0, [sp, #20] ; 0x14 + 1432: 4669 mov r1, sp + 1434: 7c09 ldrb r1, [r1, #16] ; 0x10 + 1436: 7001 strb r1, [r0, #0] + 1438: 9803 ldr r0, [sp, #12] ; 0xc + 143a: b009 add sp, #36 ; 0x24 + 143c: 4770 bx lr + 143e: 0000 lsl r0, r0, #0 + 1440: b500 push {lr} + 1442: b083 sub sp, #12 ; 0xc + 1444: 9101 str r1, [sp, #4] + 1446: 4669 mov r1, sp + 1448: 7008 strb r0, [r1, #0] + 144a: 2000 mov r0, #0 + 144c: 9002 str r0, [sp, #8] + 144e: e073 b 0x1538 + 1450: 4668 mov r0, sp + 1452: 7800 ldrb r0, [r0, #0] + 1454: 28aa cmp r0, #170 ; 0xaa + 1456: d106 bne 0x1466 + 1458: 4965 ldr r1, =0x83ff10 ; via 0x15f0 + 145a: 4865 ldr r0, =0x83ff10 ; via 0x15f0 + 145c: 6800 ldr r0, [r0, #0] + 145e: 3001 add r0, #1 + 1460: 07c0 lsl r0, r0, #31 + 1462: 0fc0 lsr r0, r0, #31 + 1464: e013 b 0x148e + 1466: 4862 ldr r0, =0x83ff10 ; via 0x15f0 + 1468: 6800 ldr r0, [r0, #0] + 146a: 2800 cmp r0, #0 + 146c: d06b beq 0x1546 + 146e: 4961 ldr r1, =0x83ff04 ; via 0x15f4 + 1470: 9801 ldr r0, [sp, #4] + 1472: 3001 add r0, #1 + 1474: 6008 str r0, [r1, #0] + 1476: 4960 ldr r1, =0x83ff0e ; via 0x15f8 + 1478: 2000 mov r0, #0 + 147a: 7008 strb r0, [r1, #0] + 147c: 495f ldr r1, =0x83ff0c ; via 0x15fc + 147e: 4668 mov r0, sp + 1480: 7800 ldrb r0, [r0, #0] + 1482: 8008 strh r0, [r1, #0] + 1484: 495a ldr r1, =0x83ff10 ; via 0x15f0 + 1486: 2000 mov r0, #0 + 1488: 6008 str r0, [r1, #0] + 148a: 495d ldr r1, =0x83ff08 ; via 0x1600 + 148c: 2001 mov r0, #1 + 148e: 6008 str r0, [r1, #0] + 1490: e059 b 0x1546 + 1492: 4668 mov r0, sp + 1494: 7800 ldrb r0, [r0, #0] + 1496: 28aa cmp r0, #170 ; 0xaa + 1498: d113 bne 0x14c2 + 149a: 4855 ldr r0, =0x83ff10 ; via 0x15f0 + 149c: 6800 ldr r0, [r0, #0] + 149e: 2800 cmp r0, #0 + 14a0: d00b beq 0x14ba + 14a2: 4954 ldr r1, =0x83ff04 ; via 0x15f4 + 14a4: 6808 ldr r0, [r1, #0] + 14a6: 1c42 add r2, r0, #1 + 14a8: 600a str r2, [r1, #0] + 14aa: 4669 mov r1, sp + 14ac: 7809 ldrb r1, [r1, #0] + 14ae: 7001 strb r1, [r0, #0] + 14b0: 4951 ldr r1, =0x83ff0e ; via 0x15f8 + 14b2: 7808 ldrb r0, [r1, #0] + 14b4: 3001 add r0, #1 + 14b6: 7008 strb r0, [r1, #0] + 14b8: e013 b 0x14e2 + 14ba: 2101 mov r1, #1 + 14bc: 484c ldr r0, =0x83ff10 ; via 0x15f0 + 14be: 6001 str r1, [r0, #0] + 14c0: e01c b 0x14fc + 14c2: 484b ldr r0, =0x83ff10 ; via 0x15f0 + 14c4: 6800 ldr r0, [r0, #0] + 14c6: 2800 cmp r0, #0 + 14c8: d00d beq 0x14e6 + 14ca: 494a ldr r1, =0x83ff04 ; via 0x15f4 + 14cc: 9801 ldr r0, [sp, #4] + 14ce: 3001 add r0, #1 + 14d0: 6008 str r0, [r1, #0] + 14d2: 4849 ldr r0, =0x83ff0e ; via 0x15f8 + 14d4: 2100 mov r1, #0 + 14d6: 7001 strb r1, [r0, #0] + 14d8: 4948 ldr r1, =0x83ff0c ; via 0x15fc + 14da: 4668 mov r0, sp + 14dc: 7800 ldrb r0, [r0, #0] + 14de: 3001 add r0, #1 + 14e0: 8008 strh r0, [r1, #0] + 14e2: 2100 mov r1, #0 + 14e4: e7ea b 0x14bc + 14e6: 4843 ldr r0, =0x83ff04 ; via 0x15f4 + 14e8: 6801 ldr r1, [r0, #0] + 14ea: 1c4a add r2, r1, #1 + 14ec: 6002 str r2, [r0, #0] + 14ee: 4668 mov r0, sp + 14f0: 7800 ldrb r0, [r0, #0] + 14f2: 7008 strb r0, [r1, #0] + 14f4: 4940 ldr r1, =0x83ff0e ; via 0x15f8 + 14f6: 7808 ldrb r0, [r1, #0] + 14f8: 3001 add r0, #1 + 14fa: 7008 strb r0, [r1, #0] + 14fc: 483f ldr r0, =0x83ff0c ; via 0x15fc + 14fe: 8801 ldrh r1, [r0, #0] + 1500: 3901 sub r1, #1 + 1502: 8001 strh r1, [r0, #0] + 1504: 483d ldr r0, =0x83ff0c ; via 0x15fc + 1506: 8800 ldrh r0, [r0, #0] + 1508: 2800 cmp r0, #0 + 150a: d11c bne 0x1546 + 150c: 9901 ldr r1, [sp, #4] + 150e: 483a ldr r0, =0x83ff0e ; via 0x15f8 + 1510: 7800 ldrb r0, [r0, #0] + 1512: 7008 strb r0, [r1, #0] + 1514: 2001 mov r0, #1 + 1516: 9002 str r0, [sp, #8] + 1518: 4839 ldr r0, =0x83ff08 ; via 0x1600 + 151a: 2100 mov r1, #0 + 151c: 6001 str r1, [r0, #0] + 151e: 4834 ldr r0, =0x83ff10 ; via 0x15f0 + 1520: 6001 str r1, [r0, #0] + 1522: 9801 ldr r0, [sp, #4] + 1524: 7800 ldrb r0, [r0, #0] + 1526: 2801 cmp r0, #1 + 1528: d10d bne 0x1546 + 152a: 9801 ldr r0, [sp, #4] + 152c: 7840 ldrb r0, [r0, #1] + 152e: 28dd cmp r0, #221 ; 0xdd + 1530: d109 bne 0x1546 + 1532: f7ff faf7 bl 0xb24 + 1536: e006 b 0x1546 + 1538: 4831 ldr r0, =0x83ff08 ; via 0x1600 + 153a: 6800 ldr r0, [r0, #0] + 153c: 2800 cmp r0, #0 + 153e: d087 beq 0x1450 + 1540: 3801 sub r0, #1 + 1542: 2800 cmp r0, #0 + 1544: d0a5 beq 0x1492 + 1546: 9802 ldr r0, [sp, #8] + 1548: b003 add sp, #12 ; 0xc + 154a: bd00 pop {pc} + 154c: b086 sub sp, #24 ; 0x18 + 154e: 9202 str r2, [sp, #8] + 1550: 9101 str r1, [sp, #4] + 1552: 9000 str r0, [sp, #0] + 1554: 9801 ldr r0, [sp, #4] + 1556: 3001 add r0, #1 + 1558: 9004 str r0, [sp, #16] ; 0x10 + 155a: 9800 ldr r0, [sp, #0] + 155c: 1c41 add r1, r0, #1 + 155e: 9100 str r1, [sp, #0] + 1560: 9005 str r0, [sp, #20] ; 0x14 + 1562: 9901 ldr r1, [sp, #4] + 1564: 20aa mov r0, #170 ; 0xaa + 1566: 7008 strb r0, [r1, #0] + 1568: 9801 ldr r0, [sp, #4] + 156a: 3002 add r0, #2 + 156c: 9001 str r0, [sp, #4] + 156e: 9902 ldr r1, [sp, #8] + 1570: 2000 mov r0, #0 + 1572: 8008 strh r0, [r1, #0] + 1574: 4669 mov r1, sp + 1576: 8188 strh r0, [r1, #12] ; 0xc + 1578: 4668 mov r0, sp + 157a: 8981 ldrh r1, [r0, #12] ; 0xc + 157c: 9805 ldr r0, [sp, #20] ; 0x14 + 157e: 7800 ldrb r0, [r0, #0] + 1580: 4281 cmp r1, r0 + 1582: da23 bge 0x15cc + 1584: 9800 ldr r0, [sp, #0] + 1586: 7800 ldrb r0, [r0, #0] + 1588: 28aa cmp r0, #170 ; 0xaa + 158a: d108 bne 0x159e + 158c: 9801 ldr r0, [sp, #4] + 158e: 1c41 add r1, r0, #1 + 1590: 9101 str r1, [sp, #4] + 1592: 21aa mov r1, #170 ; 0xaa + 1594: 7001 strb r1, [r0, #0] + 1596: 9902 ldr r1, [sp, #8] + 1598: 8808 ldrh r0, [r1, #0] + 159a: 3001 add r0, #1 + 159c: 8008 strh r0, [r1, #0] + 159e: 9800 ldr r0, [sp, #0] + 15a0: 7801 ldrb r1, [r0, #0] + 15a2: 3001 add r0, #1 + 15a4: 9000 str r0, [sp, #0] + 15a6: 9801 ldr r0, [sp, #4] + 15a8: 1c42 add r2, r0, #1 + 15aa: 9201 str r2, [sp, #4] + 15ac: 7001 strb r1, [r0, #0] + 15ae: 9902 ldr r1, [sp, #8] + 15b0: 8808 ldrh r0, [r1, #0] + 15b2: 3001 add r0, #1 + 15b4: 8008 strh r0, [r1, #0] + 15b6: 4669 mov r1, sp + 15b8: 4668 mov r0, sp + 15ba: 8980 ldrh r0, [r0, #12] ; 0xc + 15bc: 3001 add r0, #1 + 15be: 8188 strh r0, [r1, #12] ; 0xc + 15c0: 4668 mov r0, sp + 15c2: 8980 ldrh r0, [r0, #12] ; 0xc + 15c4: 9905 ldr r1, [sp, #20] ; 0x14 + 15c6: 7809 ldrb r1, [r1, #0] + 15c8: 4288 cmp r0, r1 + 15ca: dbdb blt 0x1584 + 15cc: 9904 ldr r1, [sp, #16] ; 0x10 + 15ce: 9802 ldr r0, [sp, #8] + 15d0: 7800 ldrb r0, [r0, #0] + 15d2: 7008 strb r0, [r1, #0] + 15d4: 9902 ldr r1, [sp, #8] + 15d6: 8808 ldrh r0, [r1, #0] + 15d8: 3002 add r0, #2 + 15da: 8008 strh r0, [r1, #0] + 15dc: b006 add sp, #24 ; 0x18 + 15de: 4770 bx lr + 15e0: 4907 ldr r1, =0x83ff08 ; via 0x1600 + 15e2: 2000 mov r0, #0 + 15e4: 6008 str r0, [r1, #0] + 15e6: 4802 ldr r0, =0x83ff10 ; via 0x15f0 + 15e8: 2100 mov r1, #0 + 15ea: 6001 str r1, [r0, #0] + 15ec: 4770 bx lr + 15ee: 46c0 nop (mov r8, r8) + 15f0: ff10 <half-bl> + 15f2: 0083 lsl r3, r0, #2 + 15f4: ff04 <half-bl> + 15f6: 0083 lsl r3, r0, #2 + 15f8: ff0e <half-bl> + 15fa: 0083 lsl r3, r0, #2 + 15fc: ff0c <half-bl> + 15fe: 0083 lsl r3, r0, #2 + 1600: ff08 <half-bl> + 1602: 0083 lsl r3, r0, #2 + 1604: b082 sub sp, #8 + 1606: 9101 str r1, [sp, #4] + 1608: 9000 str r0, [sp, #0] + 160a: 9901 ldr r1, [sp, #4] + 160c: 2000 mov r0, #0 + 160e: 7008 strb r0, [r1, #0] + 1610: 9801 ldr r0, [sp, #4] + 1612: 2100 mov r1, #0 + 1614: 7041 strb r1, [r0, #1] + 1616: 9801 ldr r0, [sp, #4] + 1618: 2102 mov r1, #2 + 161a: 7101 strb r1, [r0, #4] + 161c: 9801 ldr r0, [sp, #4] + 161e: 2106 mov r1, #6 + 1620: 7141 strb r1, [r0, #5] + 1622: 9801 ldr r0, [sp, #4] + 1624: 2102 mov r1, #2 + 1626: 7181 strb r1, [r0, #6] + 1628: b002 add sp, #8 + 162a: 4770 bx lr + 162c: b500 push {lr} + 162e: b084 sub sp, #16 ; 0x10 + 1630: 466b mov r3, sp + 1632: 721a strb r2, [r3, #8] + 1634: 9101 str r1, [sp, #4] + 1636: 9000 str r0, [sp, #0] + 1638: 9901 ldr r1, [sp, #4] + 163a: 2009 mov r0, #9 + 163c: 7008 strb r0, [r1, #0] + 163e: e015 b 0x166c + 1640: 9801 ldr r0, [sp, #4] + 1642: 2100 mov r1, #0 + 1644: 7041 strb r1, [r0, #1] + 1646: 9901 ldr r1, [sp, #4] + 1648: 4668 mov r0, sp + 164a: 8940 ldrh r0, [r0, #10] ; 0xa + 164c: 8088 strh r0, [r1, #4] + 164e: 9901 ldr r1, [sp, #4] + 1650: 4668 mov r0, sp + 1652: 8980 ldrh r0, [r0, #12] ; 0xc + 1654: 80c8 strh r0, [r1, #6] + 1656: e01e b 0x1696 + 1658: 2101 mov r1, #1 + 165a: e004 b 0x1666 + 165c: 2103 mov r1, #3 + 165e: e002 b 0x1666 + 1660: 2105 mov r1, #5 + 1662: e000 b 0x1666 + 1664: 2106 mov r1, #6 + 1666: 9801 ldr r0, [sp, #4] + 1668: 7041 strb r1, [r0, #1] + 166a: e014 b 0x1696 + 166c: 200a mov r0, #10 ; 0xa + 166e: 4468 add r0, sp + 1670: a903 add r1, sp, #12 ; 0xc + 1672: 466a mov r2, sp + 1674: 7a12 ldrb r2, [r2, #8] + 1676: f000 fb71 bl 0x1d5c + 167a: 2800 cmp r0, #0 + 167c: d0e0 beq 0x1640 + 167e: 3801 sub r0, #1 + 1680: 2800 cmp r0, #0 + 1682: d0e9 beq 0x1658 + 1684: 3801 sub r0, #1 + 1686: 2800 cmp r0, #0 + 1688: d0e8 beq 0x165c + 168a: 3801 sub r0, #1 + 168c: 2800 cmp r0, #0 + 168e: d0e7 beq 0x1660 + 1690: 3801 sub r0, #1 + 1692: 2800 cmp r0, #0 + 1694: d0e6 beq 0x1664 + 1696: b004 add sp, #16 ; 0x10 + 1698: bd00 pop {pc} + 169a: b084 sub sp, #16 ; 0x10 + 169c: 9101 str r1, [sp, #4] + 169e: 9000 str r0, [sp, #0] + 16a0: 9901 ldr r1, [sp, #4] + 16a2: 200a mov r0, #10 ; 0xa + 16a4: 7008 strb r0, [r1, #0] + 16a6: 9801 ldr r0, [sp, #4] + 16a8: 2100 mov r1, #0 + 16aa: 7041 strb r1, [r0, #1] + 16ac: 4669 mov r1, sp + 16ae: 9800 ldr r0, [sp, #0] + 16b0: 8880 ldrh r0, [r0, #4] + 16b2: 8108 strh r0, [r1, #8] + 16b4: 9800 ldr r0, [sp, #0] + 16b6: 88c0 ldrh r0, [r0, #6] + 16b8: 8148 strh r0, [r1, #10] ; 0xa + 16ba: 4668 mov r0, sp + 16bc: 8941 ldrh r1, [r0, #10] ; 0xa + 16be: 8900 ldrh r0, [r0, #8] + 16c0: 0400 lsl r0, r0, #16 + 16c2: 1808 add r0, r1, r0 + 16c4: 9003 str r0, [sp, #12] ; 0xc + 16c6: 9803 ldr r0, [sp, #12] ; 0xc + 16c8: b004 add sp, #16 ; 0x10 + 16ca: 4770 bx lr + 16cc: b085 sub sp, #20 ; 0x14 + 16ce: 9303 str r3, [sp, #12] ; 0xc + 16d0: 9202 str r2, [sp, #8] + 16d2: 9101 str r1, [sp, #4] + 16d4: 4669 mov r1, sp + 16d6: 7008 strb r0, [r1, #0] + 16d8: 48ea ldr r0, =0x83ff19 ; via 0x1a84 + 16da: 7809 ldrb r1, [r1, #0] + 16dc: 7802 ldrb r2, [r0, #0] + 16de: 1889 add r1, r1, r2 + 16e0: 7001 strb r1, [r0, #0] + 16e2: 48e9 ldr r0, =0x83ff1a ; via 0x1a88 + 16e4: 7800 ldrb r0, [r0, #0] + 16e6: 2800 cmp r0, #0 + 16e8: d00e beq 0x1708 + 16ea: 48e8 ldr r0, =0x83ff26 ; via 0x1a8c + 16ec: 4669 mov r1, sp + 16ee: 780a ldrb r2, [r1, #0] + 16f0: 8801 ldrh r1, [r0, #0] + 16f2: 1851 add r1, r2, r1 + 16f4: 8001 strh r1, [r0, #0] + 16f6: 9903 ldr r1, [sp, #12] ; 0xc + 16f8: 48e4 ldr r0, =0x83ff26 ; via 0x1a8c + 16fa: 8800 ldrh r0, [r0, #0] + 16fc: 8008 strh r0, [r1, #0] + 16fe: 9801 ldr r0, [sp, #4] + 1700: 2100 mov r1, #0 + 1702: 6001 str r1, [r0, #0] + 1704: 2000 mov r0, #0 + 1706: e009 b 0x171c + 1708: 9902 ldr r1, [sp, #8] + 170a: 6808 ldr r0, [r1, #0] + 170c: 3002 add r0, #2 + 170e: 6008 str r0, [r1, #0] + 1710: 49de ldr r1, =0x83ff26 ; via 0x1a8c + 1712: 4668 mov r0, sp + 1714: 7800 ldrb r0, [r0, #0] + 1716: 0200 lsl r0, r0, #8 + 1718: 8008 strh r0, [r1, #0] + 171a: 2001 mov r0, #1 + 171c: 9004 str r0, [sp, #16] ; 0x10 + 171e: 2001 mov r0, #1 + 1720: 49d9 ldr r1, =0x83ff1a ; via 0x1a88 + 1722: 7809 ldrb r1, [r1, #0] + 1724: 4388 bic r0, r1 + 1726: 49d8 ldr r1, =0x83ff1a ; via 0x1a88 + 1728: 7008 strb r0, [r1, #0] + 172a: 48d9 ldr r0, =0x83ff24 ; via 0x1a90 + 172c: 7801 ldrb r1, [r0, #0] + 172e: 3901 sub r1, #1 + 1730: 7001 strb r1, [r0, #0] + 1732: 48d7 ldr r0, =0x83ff24 ; via 0x1a90 + 1734: 7800 ldrb r0, [r0, #0] + 1736: 2800 cmp r0, #0 + 1738: d102 bne 0x1740 + 173a: 48d6 ldr r0, =0x83ff20 ; via 0x1a94 + 173c: 2106 mov r1, #6 + 173e: 6001 str r1, [r0, #0] + 1740: 9804 ldr r0, [sp, #16] ; 0x10 + 1742: b005 add sp, #20 ; 0x14 + 1744: 46f7 mov pc, lr + 1746: b083 sub sp, #12 ; 0xc + 1748: 9101 str r1, [sp, #4] + 174a: 4669 mov r1, sp + 174c: 7008 strb r0, [r1, #0] + 174e: 2001 mov r0, #1 + 1750: 9002 str r0, [sp, #8] + 1752: 48d1 ldr r0, =0x83ff1b ; via 0x1a98 + 1754: 7800 ldrb r0, [r0, #0] + 1756: 2800 cmp r0, #0 + 1758: d10a bne 0x1770 + 175a: 4668 mov r0, sp + 175c: 7800 ldrb r0, [r0, #0] + 175e: 2853 cmp r0, #83 ; 0x53 + 1760: d102 bne 0x1768 + 1762: 48cd ldr r0, =0x83ff1b ; via 0x1a98 + 1764: 2101 mov r1, #1 + 1766: e01a b 0x179e + 1768: 2101 mov r1, #1 + 176a: 9801 ldr r0, [sp, #4] + 176c: 6001 str r1, [r0, #0] + 176e: e03b b 0x17e8 + 1770: 49c9 ldr r1, =0x83ff1b ; via 0x1a98 + 1772: 2000 mov r0, #0 + 1774: 7008 strb r0, [r1, #0] + 1776: 4668 mov r0, sp + 1778: 7800 ldrb r0, [r0, #0] + 177a: 2830 cmp r0, #48 ; 0x30 + 177c: d111 bne 0x17a2 + 177e: 48c7 ldr r0, =0x83ff18 ; via 0x1a9c + 1780: 7800 ldrb r0, [r0, #0] + 1782: 2800 cmp r0, #0 + 1784: d006 beq 0x1794 + 1786: 9901 ldr r1, [sp, #4] + 1788: 2001 mov r0, #1 + 178a: 6008 str r0, [r1, #0] + 178c: 49c3 ldr r1, =0x83ff18 ; via 0x1a9c + 178e: 2000 mov r0, #0 + 1790: 7008 strb r0, [r1, #0] + 1792: e02a b 0x17ea + 1794: 48bf ldr r0, =0x83ff20 ; via 0x1a94 + 1796: 2102 mov r1, #2 + 1798: 6001 str r1, [r0, #0] + 179a: 48ef ldr r0, =0x83ff1c ; via 0x1b58 + 179c: 2100 mov r1, #0 + 179e: 7001 strb r1, [r0, #0] + 17a0: e024 b 0x17ec + 17a2: 4668 mov r0, sp + 17a4: 7800 ldrb r0, [r0, #0] + 17a6: 2833 cmp r0, #51 ; 0x33 + 17a8: d105 bne 0x17b6 + 17aa: 48bc ldr r0, =0x83ff18 ; via 0x1a9c + 17ac: 7800 ldrb r0, [r0, #0] + 17ae: 2800 cmp r0, #0 + 17b0: d0da beq 0x1768 + 17b2: 2004 mov r0, #4 + 17b4: e00c b 0x17d0 + 17b6: 4668 mov r0, sp + 17b8: 7800 ldrb r0, [r0, #0] + 17ba: 2837 cmp r0, #55 ; 0x37 + 17bc: d10e bne 0x17dc + 17be: 48b7 ldr r0, =0x83ff18 ; via 0x1a9c + 17c0: 7800 ldrb r0, [r0, #0] + 17c2: 2800 cmp r0, #0 + 17c4: d103 bne 0x17ce + 17c6: 9901 ldr r1, [sp, #4] + 17c8: 2001 mov r0, #1 + 17ca: 6008 str r0, [r1, #0] + 17cc: e00c b 0x17e8 + 17ce: 2003 mov r0, #3 + 17d0: 49b0 ldr r1, =0x83ff20 ; via 0x1a94 + 17d2: 6008 str r0, [r1, #0] + 17d4: 2000 mov r0, #0 + 17d6: 49e0 ldr r1, =0x83ff1c ; via 0x1b58 + 17d8: 7008 strb r0, [r1, #0] + 17da: e007 b 0x17ec + 17dc: 9901 ldr r1, [sp, #4] + 17de: 2001 mov r0, #1 + 17e0: 6008 str r0, [r1, #0] + 17e2: 48ae ldr r0, =0x83ff18 ; via 0x1a9c + 17e4: 2100 mov r1, #0 + 17e6: 7001 strb r1, [r0, #0] + 17e8: 2000 mov r0, #0 + 17ea: 9002 str r0, [sp, #8] + 17ec: 9802 ldr r0, [sp, #8] + 17ee: b003 add sp, #12 ; 0xc + 17f0: 46f7 mov pc, lr + 17f2: b083 sub sp, #12 ; 0xc + 17f4: 9101 str r1, [sp, #4] + 17f6: 4669 mov r1, sp + 17f8: 7008 strb r0, [r1, #0] + 17fa: 2001 mov r0, #1 + 17fc: 9002 str r0, [sp, #8] + 17fe: 49d7 ldr r1, =0x830 ; via 0x1b5c + 1800: 48d5 ldr r0, =0x83ff1c ; via 0x1b58 + 1802: 7800 ldrb r0, [r0, #0] + 1804: 0080 lsl r0, r0, #2 + 1806: 5808 ldr r0, [r1, r0] + 1808: 4669 mov r1, sp + 180a: 7809 ldrb r1, [r1, #0] + 180c: 4281 cmp r1, r0 + 180e: d10d bne 0x182c + 1810: 49d1 ldr r1, =0x83ff1c ; via 0x1b58 + 1812: 7808 ldrb r0, [r1, #0] + 1814: 3001 add r0, #1 + 1816: 7008 strb r0, [r1, #0] + 1818: 48cf ldr r0, =0x83ff1c ; via 0x1b58 + 181a: 7800 ldrb r0, [r0, #0] + 181c: 2807 cmp r0, #7 + 181e: d10d bne 0x183c + 1820: 489c ldr r0, =0x83ff20 ; via 0x1a94 + 1822: 2101 mov r1, #1 + 1824: 6001 str r1, [r0, #0] + 1826: 489d ldr r0, =0x83ff18 ; via 0x1a9c + 1828: 7001 strb r1, [r0, #0] + 182a: e007 b 0x183c + 182c: 9801 ldr r0, [sp, #4] + 182e: 2101 mov r1, #1 + 1830: 6001 str r1, [r0, #0] + 1832: 4998 ldr r1, =0x83ff20 ; via 0x1a94 + 1834: 2001 mov r0, #1 + 1836: 6008 str r0, [r1, #0] + 1838: 2000 mov r0, #0 + 183a: 9002 str r0, [sp, #8] + 183c: 9802 ldr r0, [sp, #8] + 183e: b003 add sp, #12 ; 0xc + 1840: 46f7 mov pc, lr + 1842: b083 sub sp, #12 ; 0xc + 1844: 9101 str r1, [sp, #4] + 1846: 4669 mov r1, sp + 1848: 7008 strb r0, [r1, #0] + 184a: 2001 mov r0, #1 + 184c: 9002 str r0, [sp, #8] + 184e: 49c4 ldr r1, =0x84c ; via 0x1b60 + 1850: 48c1 ldr r0, =0x83ff1c ; via 0x1b58 + 1852: 7800 ldrb r0, [r0, #0] + 1854: 0080 lsl r0, r0, #2 + 1856: 5808 ldr r0, [r1, r0] + 1858: 4669 mov r1, sp + 185a: 7809 ldrb r1, [r1, #0] + 185c: 4281 cmp r1, r0 + 185e: d112 bne 0x1886 + 1860: 49bd ldr r1, =0x83ff1c ; via 0x1b58 + 1862: 7808 ldrb r0, [r1, #0] + 1864: 3001 add r0, #1 + 1866: 7008 strb r0, [r1, #0] + 1868: 48bb ldr r0, =0x83ff1c ; via 0x1b58 + 186a: 7800 ldrb r0, [r0, #0] + 186c: 2806 cmp r0, #6 + 186e: d114 bne 0x189a + 1870: 9801 ldr r0, [sp, #4] + 1872: 2102 mov r1, #2 + 1874: 6001 str r1, [r0, #0] + 1876: 4887 ldr r0, =0x83ff20 ; via 0x1a94 + 1878: 2101 mov r1, #1 + 187a: 6001 str r1, [r0, #0] + 187c: 4887 ldr r0, =0x83ff18 ; via 0x1a9c + 187e: 2100 mov r1, #0 + 1880: 7001 strb r1, [r0, #0] + 1882: 2000 mov r0, #0 + 1884: e008 b 0x1898 + 1886: 9801 ldr r0, [sp, #4] + 1888: 2101 mov r1, #1 + 188a: 6001 str r1, [r0, #0] + 188c: 4981 ldr r1, =0x83ff20 ; via 0x1a94 + 188e: 2001 mov r0, #1 + 1890: 6008 str r0, [r1, #0] + 1892: 4982 ldr r1, =0x83ff18 ; via 0x1a9c + 1894: 2000 mov r0, #0 + 1896: 7008 strb r0, [r1, #0] + 1898: 9002 str r0, [sp, #8] + 189a: 9802 ldr r0, [sp, #8] + 189c: b003 add sp, #12 ; 0xc + 189e: 46f7 mov pc, lr + 18a0: b081 sub sp, #4 + 18a2: 4669 mov r1, sp + 18a4: 7008 strb r0, [r1, #0] + 18a6: 497a ldr r1, =0x83ff24 ; via 0x1a90 + 18a8: 4668 mov r0, sp + 18aa: 7800 ldrb r0, [r0, #0] + 18ac: 3801 sub r0, #1 + 18ae: 7008 strb r0, [r1, #0] + 18b0: 4874 ldr r0, =0x83ff19 ; via 0x1a84 + 18b2: 4669 mov r1, sp + 18b4: 7809 ldrb r1, [r1, #0] + 18b6: 7001 strb r1, [r0, #0] + 18b8: 48a7 ldr r0, =0x83ff1c ; via 0x1b58 + 18ba: 2100 mov r1, #0 + 18bc: 7001 strb r1, [r0, #0] + 18be: 48e3 ldr r0, =0x83ff14 ; via 0x1c4c + 18c0: 6001 str r1, [r0, #0] + 18c2: 4874 ldr r0, =0x83ff20 ; via 0x1a94 + 18c4: 2105 mov r1, #5 + 18c6: 6001 str r1, [r0, #0] + 18c8: b001 add sp, #4 + 18ca: 46f7 mov pc, lr + 18cc: b084 sub sp, #16 ; 0x10 + 18ce: 9202 str r2, [sp, #8] + 18d0: 9101 str r1, [sp, #4] + 18d2: 4669 mov r1, sp + 18d4: 7008 strb r0, [r1, #0] + 18d6: 2001 mov r0, #1 + 18d8: 9003 str r0, [sp, #12] ; 0xc + 18da: 496d ldr r1, =0x83ff24 ; via 0x1a90 + 18dc: 7808 ldrb r0, [r1, #0] + 18de: 3801 sub r0, #1 + 18e0: 7008 strb r0, [r1, #0] + 18e2: 486b ldr r0, =0x83ff24 ; via 0x1a90 + 18e4: 7800 ldrb r0, [r0, #0] + 18e6: 2800 cmp r0, #0 + 18e8: d026 beq 0x1938 + 18ea: 4866 ldr r0, =0x83ff19 ; via 0x1a84 + 18ec: 4669 mov r1, sp + 18ee: 780a ldrb r2, [r1, #0] + 18f0: 7801 ldrb r1, [r0, #0] + 18f2: 1851 add r1, r2, r1 + 18f4: 7001 strb r1, [r0, #0] + 18f6: 4998 ldr r1, =0x83ff1c ; via 0x1b58 + 18f8: 7808 ldrb r0, [r1, #0] + 18fa: 3001 add r0, #1 + 18fc: 7008 strb r0, [r1, #0] + 18fe: 49d3 ldr r1, =0x83ff14 ; via 0x1c4c + 1900: 2204 mov r2, #4 + 1902: 4895 ldr r0, =0x83ff1c ; via 0x1b58 + 1904: 7800 ldrb r0, [r0, #0] + 1906: 1a10 sub r0, r2, r0 + 1908: 00c2 lsl r2, r0, #3 + 190a: 4668 mov r0, sp + 190c: 7800 ldrb r0, [r0, #0] + 190e: 4090 lsl r0, r2 + 1910: 680a ldr r2, [r1, #0] + 1912: 1880 add r0, r0, r2 + 1914: 6008 str r0, [r1, #0] + 1916: 4890 ldr r0, =0x83ff1c ; via 0x1b58 + 1918: 7800 ldrb r0, [r0, #0] + 191a: 2804 cmp r0, #4 + 191c: d117 bne 0x194e + 191e: 9902 ldr r1, [sp, #8] + 1920: 48ca ldr r0, =0x83ff14 ; via 0x1c4c + 1922: 6800 ldr r0, [r0, #0] + 1924: 3802 sub r0, #2 + 1926: 6008 str r0, [r1, #0] + 1928: 485a ldr r0, =0x83ff20 ; via 0x1a94 + 192a: 2100 mov r1, #0 + 192c: 6001 str r1, [r0, #0] + 192e: 4856 ldr r0, =0x83ff1a ; via 0x1a88 + 1930: 7001 strb r1, [r0, #0] + 1932: 4889 ldr r0, =0x83ff1c ; via 0x1b58 + 1934: 7001 strb r1, [r0, #0] + 1936: e00a b 0x194e + 1938: 9801 ldr r0, [sp, #4] + 193a: 2101 mov r1, #1 + 193c: 6001 str r1, [r0, #0] + 193e: 4955 ldr r1, =0x83ff20 ; via 0x1a94 + 1940: 2001 mov r0, #1 + 1942: 6008 str r0, [r1, #0] + 1944: 4855 ldr r0, =0x83ff18 ; via 0x1a9c + 1946: 2100 mov r1, #0 + 1948: 7001 strb r1, [r0, #0] + 194a: 2000 mov r0, #0 + 194c: 9003 str r0, [sp, #12] ; 0xc + 194e: 9803 ldr r0, [sp, #12] ; 0xc + 1950: b004 add sp, #16 ; 0x10 + 1952: 46f7 mov pc, lr + 1954: b083 sub sp, #12 ; 0xc + 1956: 9101 str r1, [sp, #4] + 1958: 4669 mov r1, sp + 195a: 7008 strb r0, [r1, #0] + 195c: 2001 mov r0, #1 + 195e: 9002 str r0, [sp, #8] + 1960: 494c ldr r1, =0x83ff20 ; via 0x1a94 + 1962: 6008 str r0, [r1, #0] + 1964: 20ff mov r0, #255 ; 0xff + 1966: 4669 mov r1, sp + 1968: 7809 ldrb r1, [r1, #0] + 196a: 4388 bic r0, r1 + 196c: 4945 ldr r1, =0x83ff19 ; via 0x1a84 + 196e: 7809 ldrb r1, [r1, #0] + 1970: 4281 cmp r1, r0 + 1972: d007 beq 0x1984 + 1974: 9801 ldr r0, [sp, #4] + 1976: 2101 mov r1, #1 + 1978: 6001 str r1, [r0, #0] + 197a: 4848 ldr r0, =0x83ff18 ; via 0x1a9c + 197c: 2100 mov r1, #0 + 197e: 7001 strb r1, [r0, #0] + 1980: 2000 mov r0, #0 + 1982: 9002 str r0, [sp, #8] + 1984: 9802 ldr r0, [sp, #8] + 1986: b003 add sp, #12 ; 0xc + 1988: 46f7 mov pc, lr + 198a: b085 sub sp, #20 ; 0x14 + 198c: 466b mov r3, sp + 198e: 719a strb r2, [r3, #6] + 1990: 466a mov r2, sp + 1992: 8091 strh r1, [r2, #4] + 1994: 9000 str r0, [sp, #0] + 1996: 9800 ldr r0, [sp, #0] + 1998: 9002 str r0, [sp, #8] + 199a: 4669 mov r1, sp + 199c: 4668 mov r0, sp + 199e: 8880 ldrh r0, [r0, #4] + 19a0: 8208 strh r0, [r1, #16] ; 0x10 + 19a2: 4668 mov r0, sp + 19a4: 8a00 ldrh r0, [r0, #16] ; 0x10 + 19a6: 2800 cmp r0, #0 + 19a8: d01e beq 0x19e8 + 19aa: 49e3 ldr r1, =0x864 ; via 0x1d38 + 19ac: 4668 mov r0, sp + 19ae: 7980 ldrb r0, [r0, #6] + 19b0: 0080 lsl r0, r0, #2 + 19b2: 5808 ldr r0, [r1, r0] + 19b4: 7941 ldrb r1, [r0, #5] + 19b6: 4668 mov r0, sp + 19b8: 7301 strb r1, [r0, #12] ; 0xc + 19ba: 7b00 ldrb r0, [r0, #12] ; 0xc + 19bc: 0980 lsr r0, r0, #6 + 19be: d3f4 bcc 0x19aa + 19c0: 49dd ldr r1, =0x864 ; via 0x1d38 + 19c2: 4668 mov r0, sp + 19c4: 7980 ldrb r0, [r0, #6] + 19c6: 0080 lsl r0, r0, #2 + 19c8: 5809 ldr r1, [r1, r0] + 19ca: 9802 ldr r0, [sp, #8] + 19cc: 7800 ldrb r0, [r0, #0] + 19ce: 7008 strb r0, [r1, #0] + 19d0: 9802 ldr r0, [sp, #8] + 19d2: 3001 add r0, #1 + 19d4: 9002 str r0, [sp, #8] + 19d6: 4669 mov r1, sp + 19d8: 4668 mov r0, sp + 19da: 8a00 ldrh r0, [r0, #16] ; 0x10 + 19dc: 3801 sub r0, #1 + 19de: 8208 strh r0, [r1, #16] ; 0x10 + 19e0: 4668 mov r0, sp + 19e2: 8a00 ldrh r0, [r0, #16] ; 0x10 + 19e4: 2800 cmp r0, #0 + 19e6: d1e0 bne 0x19aa + 19e8: b005 add sp, #20 ; 0x14 + 19ea: 46f7 mov pc, lr + 19ec: b082 sub sp, #8 + 19ee: 4669 mov r1, sp + 19f0: 7008 strb r0, [r1, #0] + 19f2: 2000 mov r0, #0 + 19f4: 8088 strh r0, [r1, #4] + 19f6: 4668 mov r0, sp + 19f8: 8881 ldrh r1, [r0, #4] + 19fa: 20ff mov r0, #255 ; 0xff + 19fc: 30f5 add r0, #245 ; 0xf5 + 19fe: 4281 cmp r1, r0 + 1a00: da21 bge 0x1a46 + 1a02: 4669 mov r1, sp + 1a04: 4668 mov r0, sp + 1a06: 8880 ldrh r0, [r0, #4] + 1a08: 3001 add r0, #1 + 1a0a: 8088 strh r0, [r1, #4] + 1a0c: 48ca ldr r0, =0x864 ; via 0x1d38 + 1a0e: 7809 ldrb r1, [r1, #0] + 1a10: 0089 lsl r1, r1, #2 + 1a12: 5840 ldr r0, [r0, r1] + 1a14: 7940 ldrb r0, [r0, #5] + 1a16: 4669 mov r1, sp + 1a18: 7048 strb r0, [r1, #1] + 1a1a: 4668 mov r0, sp + 1a1c: 7840 ldrb r0, [r0, #1] + 1a1e: 0840 lsr r0, r0, #1 + 1a20: d30b bcc 0x1a3a + 1a22: 49c5 ldr r1, =0x864 ; via 0x1d38 + 1a24: 4668 mov r0, sp + 1a26: 7800 ldrb r0, [r0, #0] + 1a28: 0080 lsl r0, r0, #2 + 1a2a: 5808 ldr r0, [r1, r0] + 1a2c: 7800 ldrb r0, [r0, #0] + 1a2e: 0600 lsl r0, r0, #24 + 1a30: 0e00 lsr r0, r0, #24 + 1a32: 4669 mov r1, sp + 1a34: 7088 strb r0, [r1, #2] + 1a36: 2000 mov r0, #0 + 1a38: 8088 strh r0, [r1, #4] + 1a3a: 4668 mov r0, sp + 1a3c: 8881 ldrh r1, [r0, #4] + 1a3e: 20ff mov r0, #255 ; 0xff + 1a40: 30f5 add r0, #245 ; 0xf5 + 1a42: 4281 cmp r1, r0 + 1a44: dbdd blt 0x1a02 + 1a46: b002 add sp, #8 + 1a48: 4770 bx lr + 1a4a: b500 push {lr} + 1a4c: b08c sub sp, #48 ; 0x30 + 1a4e: 466a mov r2, sp + 1a50: 7111 strb r1, [r2, #4] + 1a52: 9000 str r0, [sp, #0] + 1a54: 2001 mov r0, #1 + 1a56: 9002 str r0, [sp, #8] + 1a58: 9800 ldr r0, [sp, #0] + 1a5a: a904 add r1, sp, #16 ; 0x10 + 1a5c: aa03 add r2, sp, #12 ; 0xc + 1a5e: f7ff fd75 bl 0x154c + 1a62: 4668 mov r0, sp + 1a64: 8980 ldrh r0, [r0, #12] ; 0xc + 1a66: 2820 cmp r0, #32 ; 0x20 + 1a68: dd02 ble 0x1a70 + 1a6a: 2000 mov r0, #0 + 1a6c: 9002 str r0, [sp, #8] + 1a6e: e006 b 0x1a7e + 1a70: a804 add r0, sp, #16 ; 0x10 + 1a72: 4669 mov r1, sp + 1a74: 8989 ldrh r1, [r1, #12] ; 0xc + 1a76: 466a mov r2, sp + 1a78: 7912 ldrb r2, [r2, #4] + 1a7a: f7ff ff86 bl 0x198a + 1a7e: 9802 ldr r0, [sp, #8] + 1a80: b00c add sp, #48 ; 0x30 + 1a82: bd00 pop {pc} + 1a84: ff19 <half-bl> + 1a86: 0083 lsl r3, r0, #2 + 1a88: ff1a <half-bl> + 1a8a: 0083 lsl r3, r0, #2 + 1a8c: ff26 <half-bl> + 1a8e: 0083 lsl r3, r0, #2 + 1a90: ff24 <half-bl> + 1a92: 0083 lsl r3, r0, #2 + 1a94: ff20 <half-bl> + 1a96: 0083 lsl r3, r0, #2 + 1a98: ff1b <half-bl> + 1a9a: 0083 lsl r3, r0, #2 + 1a9c: ff18 <half-bl> + 1a9e: 0083 lsl r3, r0, #2 + 1aa0: b500 push {lr} + 1aa2: b084 sub sp, #16 ; 0x10 + 1aa4: 9101 str r1, [sp, #4] + 1aa6: 9000 str r0, [sp, #0] + 1aa8: 4669 mov r1, sp + 1aaa: 20ff mov r0, #255 ; 0xff + 1aac: 7308 strb r0, [r1, #12] ; 0xc + 1aae: 2000 mov r0, #0 + 1ab0: 9002 str r0, [sp, #8] + 1ab2: 4669 mov r1, sp + 1ab4: 48a1 ldr r0, =0xffff5805 ; via 0x1d3c + 1ab6: 7800 ldrb r0, [r0, #0] + 1ab8: 7348 strb r0, [r1, #13] ; 0xd + 1aba: 48a1 ldr r0, =0xffff5005 ; via 0x1d40 + 1abc: 7800 ldrb r0, [r0, #0] + 1abe: 7388 strb r0, [r1, #14] ; 0xe + 1ac0: 4668 mov r0, sp + 1ac2: 7b40 ldrb r0, [r0, #13] ; 0xd + 1ac4: 0840 lsr r0, r0, #1 + 1ac6: d206 bcs 0x1ad6 + 1ac8: 4668 mov r0, sp + 1aca: 7b80 ldrb r0, [r0, #14] ; 0xe + 1acc: 0840 lsr r0, r0, #1 + 1ace: d202 bcs 0x1ad6 + 1ad0: 9801 ldr r0, [sp, #4] + 1ad2: 2800 cmp r0, #0 + 1ad4: d0ed beq 0x1ab2 + 1ad6: 4668 mov r0, sp + 1ad8: 7b40 ldrb r0, [r0, #13] ; 0xd + 1ada: 0840 lsr r0, r0, #1 + 1adc: d316 bcc 0x1b0c + 1ade: 4669 mov r1, sp + 1ae0: 2000 mov r0, #0 + 1ae2: 7308 strb r0, [r1, #12] ; 0xc + 1ae4: 4994 ldr r1, =0x864 ; via 0x1d38 + 1ae6: 4668 mov r0, sp + 1ae8: 7b00 ldrb r0, [r0, #12] ; 0xc + 1aea: 0080 lsl r0, r0, #2 + 1aec: 5808 ldr r0, [r1, r0] + 1aee: 7800 ldrb r0, [r0, #0] + 1af0: 0600 lsl r0, r0, #24 + 1af2: 0e00 lsr r0, r0, #24 + 1af4: 4669 mov r1, sp + 1af6: 73c8 strb r0, [r1, #15] ; 0xf + 1af8: 4668 mov r0, sp + 1afa: 7bc0 ldrb r0, [r0, #15] ; 0xf + 1afc: 9900 ldr r1, [sp, #0] + 1afe: f7ff fc9f bl 0x1440 + 1b02: 9002 str r0, [sp, #8] + 1b04: 9802 ldr r0, [sp, #8] + 1b06: 2800 cmp r0, #0 + 1b08: d11c bne 0x1b44 + 1b0a: e018 b 0x1b3e + 1b0c: 4668 mov r0, sp + 1b0e: 7b80 ldrb r0, [r0, #14] ; 0xe + 1b10: 0840 lsr r0, r0, #1 + 1b12: d317 bcc 0x1b44 + 1b14: 4669 mov r1, sp + 1b16: 2001 mov r0, #1 + 1b18: 7308 strb r0, [r1, #12] ; 0xc + 1b1a: 4987 ldr r1, =0x864 ; via 0x1d38 + 1b1c: 4668 mov r0, sp + 1b1e: 7b00 ldrb r0, [r0, #12] ; 0xc + 1b20: 0080 lsl r0, r0, #2 + 1b22: 5808 ldr r0, [r1, r0] + 1b24: 7800 ldrb r0, [r0, #0] + 1b26: 0600 lsl r0, r0, #24 + 1b28: 0e01 lsr r1, r0, #24 + 1b2a: 4668 mov r0, sp + 1b2c: 73c1 strb r1, [r0, #15] ; 0xf + 1b2e: 7bc0 ldrb r0, [r0, #15] ; 0xf + 1b30: 9900 ldr r1, [sp, #0] + 1b32: f7ff fc85 bl 0x1440 + 1b36: 9002 str r0, [sp, #8] + 1b38: 9802 ldr r0, [sp, #8] + 1b3a: 2800 cmp r0, #0 + 1b3c: d102 bne 0x1b44 + 1b3e: 20ff mov r0, #255 ; 0xff + 1b40: 4669 mov r1, sp + 1b42: 7308 strb r0, [r1, #12] ; 0xc + 1b44: 9802 ldr r0, [sp, #8] + 1b46: 2800 cmp r0, #0 + 1b48: d102 bne 0x1b50 + 1b4a: 9801 ldr r0, [sp, #4] + 1b4c: 2800 cmp r0, #0 + 1b4e: d0b0 beq 0x1ab2 + 1b50: 4668 mov r0, sp + 1b52: 7b00 ldrb r0, [r0, #12] ; 0xc + 1b54: b004 add sp, #16 ; 0x10 + 1b56: bd00 pop {pc} + 1b58: ff1c <half-bl> + 1b5a: 0083 lsl r3, r0, #2 + 1b5c: 0830 lsr r0, r6, #32 + 1b5e: 0000 lsl r0, r0, #0 + 1b60: 084c lsr r4, r1, #1 + 1b62: 0000 lsl r0, r0, #0 + 1b64: b500 push {lr} + 1b66: b086 sub sp, #24 ; 0x18 + 1b68: 466b mov r3, sp + 1b6a: 721a strb r2, [r3, #8] + 1b6c: 9101 str r1, [sp, #4] + 1b6e: 9000 str r0, [sp, #0] + 1b70: 2001 mov r0, #1 + 1b72: 9004 str r0, [sp, #16] ; 0x10 + 1b74: 9804 ldr r0, [sp, #16] ; 0x10 + 1b76: 2800 cmp r0, #0 + 1b78: d05b beq 0x1c32 + 1b7a: 496f ldr r1, =0x864 ; via 0x1d38 + 1b7c: 4668 mov r0, sp + 1b7e: 7a00 ldrb r0, [r0, #8] + 1b80: 0080 lsl r0, r0, #2 + 1b82: 5808 ldr r0, [r1, r0] + 1b84: 7941 ldrb r1, [r0, #5] + 1b86: 4668 mov r0, sp + 1b88: 7301 strb r1, [r0, #12] ; 0xc + 1b8a: 7b00 ldrb r0, [r0, #12] ; 0xc + 1b8c: 0840 lsr r0, r0, #1 + 1b8e: d3f4 bcc 0x1b7a + 1b90: 4969 ldr r1, =0x864 ; via 0x1d38 + 1b92: 4668 mov r0, sp + 1b94: 7a00 ldrb r0, [r0, #8] + 1b96: 0080 lsl r0, r0, #2 + 1b98: 5808 ldr r0, [r1, r0] + 1b9a: 7800 ldrb r0, [r0, #0] + 1b9c: 0600 lsl r0, r0, #24 + 1b9e: 0e01 lsr r1, r0, #24 + 1ba0: 4668 mov r0, sp + 1ba2: 7341 strb r1, [r0, #13] ; 0xd + 1ba4: e02c b 0x1c00 + 1ba6: 4668 mov r0, sp + 1ba8: 7b40 ldrb r0, [r0, #13] ; 0xd + 1baa: a905 add r1, sp, #20 ; 0x14 + 1bac: 9a00 ldr r2, [sp, #0] + 1bae: 9b01 ldr r3, [sp, #4] + 1bb0: f7ff fd8c bl 0x16cc + 1bb4: 9004 str r0, [sp, #16] ; 0x10 + 1bb6: e039 b 0x1c2c + 1bb8: 4668 mov r0, sp + 1bba: 7b40 ldrb r0, [r0, #13] ; 0xd + 1bbc: a905 add r1, sp, #20 ; 0x14 + 1bbe: f7ff fdc2 bl 0x1746 + 1bc2: e7f7 b 0x1bb4 + 1bc4: 4668 mov r0, sp + 1bc6: 7b40 ldrb r0, [r0, #13] ; 0xd + 1bc8: a905 add r1, sp, #20 ; 0x14 + 1bca: f7ff fe12 bl 0x17f2 + 1bce: e7f1 b 0x1bb4 + 1bd0: 4668 mov r0, sp + 1bd2: 7b40 ldrb r0, [r0, #13] ; 0xd + 1bd4: a905 add r1, sp, #20 ; 0x14 + 1bd6: f7ff fe34 bl 0x1842 + 1bda: e7eb b 0x1bb4 + 1bdc: 4668 mov r0, sp + 1bde: 7b40 ldrb r0, [r0, #13] ; 0xd + 1be0: f7ff fe5e bl 0x18a0 + 1be4: e022 b 0x1c2c + 1be6: 4668 mov r0, sp + 1be8: 7b40 ldrb r0, [r0, #13] ; 0xd + 1bea: a905 add r1, sp, #20 ; 0x14 + 1bec: 9a00 ldr r2, [sp, #0] + 1bee: f7ff fe6d bl 0x18cc + 1bf2: e7df b 0x1bb4 + 1bf4: 4668 mov r0, sp + 1bf6: 7b40 ldrb r0, [r0, #13] ; 0xd + 1bf8: a905 add r1, sp, #20 ; 0x14 + 1bfa: f7ff feab bl 0x1954 + 1bfe: e7d9 b 0x1bb4 + 1c00: 4850 ldr r0, =0x83ff20 ; via 0x1d44 + 1c02: 6800 ldr r0, [r0, #0] + 1c04: 2800 cmp r0, #0 + 1c06: d0ce beq 0x1ba6 + 1c08: 3801 sub r0, #1 + 1c0a: 2800 cmp r0, #0 + 1c0c: d0d4 beq 0x1bb8 + 1c0e: 3801 sub r0, #1 + 1c10: 2800 cmp r0, #0 + 1c12: d0d7 beq 0x1bc4 + 1c14: 3801 sub r0, #1 + 1c16: 2800 cmp r0, #0 + 1c18: d0da beq 0x1bd0 + 1c1a: 3801 sub r0, #1 + 1c1c: 2800 cmp r0, #0 + 1c1e: d0dd beq 0x1bdc + 1c20: 3801 sub r0, #1 + 1c22: 2800 cmp r0, #0 + 1c24: d0df beq 0x1be6 + 1c26: 3801 sub r0, #1 + 1c28: 2800 cmp r0, #0 + 1c2a: d0e3 beq 0x1bf4 + 1c2c: 9804 ldr r0, [sp, #16] ; 0x10 + 1c2e: 2800 cmp r0, #0 + 1c30: d1a3 bne 0x1b7a + 1c32: 9805 ldr r0, [sp, #20] ; 0x14 + 1c34: b006 add sp, #24 ; 0x18 + 1c36: bd00 pop {pc} + 1c38: 4942 ldr r1, =0x83ff20 ; via 0x1d44 + 1c3a: 2001 mov r0, #1 + 1c3c: 6008 str r0, [r1, #0] + 1c3e: 4842 ldr r0, =0x83ff1b ; via 0x1d48 + 1c40: 2100 mov r1, #0 + 1c42: 7001 strb r1, [r0, #0] + 1c44: 4841 ldr r0, =0x83ff18 ; via 0x1d4c + 1c46: 7001 strb r1, [r0, #0] + 1c48: 4770 bx lr + 1c4a: 46c0 nop (mov r8, r8) + 1c4c: ff14 <half-bl> + 1c4e: 0083 lsl r3, r0, #2 + 1c50: b081 sub sp, #4 + 1c52: 483f ldr r0, =0xffff5800 ; via 0x1d50 + 1c54: 9000 str r0, [sp, #0] + 1c56: 493f ldr r1, =0xffff6000 ; via 0x1d54 + 1c58: 2002 mov r0, #2 + 1c5a: 880a ldrh r2, [r1, #0] + 1c5c: 4310 orr r0, r2 + 1c5e: 8008 strh r0, [r1, #0] + 1c60: 483c ldr r0, =0xffff6000 ; via 0x1d54 + 1c62: 8801 ldrh r1, [r0, #0] + 1c64: 0849 lsr r1, r1, #1 + 1c66: 0049 lsl r1, r1, #1 + 1c68: 8001 strh r1, [r0, #0] + 1c6a: 493a ldr r1, =0xffff6000 ; via 0x1d54 + 1c6c: 8808 ldrh r0, [r1, #0] + 1c6e: 2202 mov r2, #2 + 1c70: 4390 bic r0, r2 + 1c72: 8008 strh r0, [r1, #0] + 1c74: 9900 ldr r1, [sp, #0] + 1c76: 2007 mov r0, #7 + 1c78: 7208 strb r0, [r1, #8] + 1c7a: 9900 ldr r1, [sp, #0] + 1c7c: 20bf mov r0, #191 ; 0xbf + 1c7e: 70c8 strb r0, [r1, #3] + 1c80: 9800 ldr r0, [sp, #0] + 1c82: 1c81 add r1, r0, #2 + 1c84: 2010 mov r0, #16 ; 0x10 + 1c86: 880a ldrh r2, [r1, #0] + 1c88: 4310 orr r0, r2 + 1c8a: 8008 strh r0, [r1, #0] + 1c8c: 9800 ldr r0, [sp, #0] + 1c8e: 2180 mov r1, #128 ; 0x80 + 1c90: 70c1 strb r1, [r0, #3] + 1c92: 9800 ldr r0, [sp, #0] + 1c94: 2107 mov r1, #7 + 1c96: 7081 strb r1, [r0, #2] + 1c98: 9800 ldr r0, [sp, #0] + 1c9a: 21bf mov r1, #191 ; 0xbf + 1c9c: 70c1 strb r1, [r0, #3] + 1c9e: 9800 ldr r0, [sp, #0] + 1ca0: 2107 mov r1, #7 + 1ca2: 7001 strb r1, [r0, #0] + 1ca4: 9800 ldr r0, [sp, #0] + 1ca6: 2100 mov r1, #0 + 1ca8: 7041 strb r1, [r0, #1] + 1caa: 9800 ldr r0, [sp, #0] + 1cac: 2103 mov r1, #3 + 1cae: 70c1 strb r1, [r0, #3] + 1cb0: 9800 ldr r0, [sp, #0] + 1cb2: 2100 mov r1, #0 + 1cb4: 7201 strb r1, [r0, #8] + 1cb6: 4828 ldr r0, =0xffff5000 ; via 0x1d58 + 1cb8: 9000 str r0, [sp, #0] + 1cba: 9800 ldr r0, [sp, #0] + 1cbc: 2107 mov r1, #7 + 1cbe: 7201 strb r1, [r0, #8] + 1cc0: 9900 ldr r1, [sp, #0] + 1cc2: 20bf mov r0, #191 ; 0xbf + 1cc4: 70c8 strb r0, [r1, #3] + 1cc6: 9800 ldr r0, [sp, #0] + 1cc8: 1c80 add r0, r0, #2 + 1cca: 2110 mov r1, #16 ; 0x10 + 1ccc: 8802 ldrh r2, [r0, #0] + 1cce: 4311 orr r1, r2 + 1cd0: 8001 strh r1, [r0, #0] + 1cd2: 9800 ldr r0, [sp, #0] + 1cd4: 2180 mov r1, #128 ; 0x80 + 1cd6: 70c1 strb r1, [r0, #3] + 1cd8: 9800 ldr r0, [sp, #0] + 1cda: 2107 mov r1, #7 + 1cdc: 7081 strb r1, [r0, #2] + 1cde: 9800 ldr r0, [sp, #0] + 1ce0: 21bf mov r1, #191 ; 0xbf + 1ce2: 70c1 strb r1, [r0, #3] + 1ce4: 9800 ldr r0, [sp, #0] + 1ce6: 2107 mov r1, #7 + 1ce8: 7001 strb r1, [r0, #0] + 1cea: 9800 ldr r0, [sp, #0] + 1cec: 2100 mov r1, #0 + 1cee: 7041 strb r1, [r0, #1] + 1cf0: 9900 ldr r1, [sp, #0] + 1cf2: 2003 mov r0, #3 + 1cf4: 70c8 strb r0, [r1, #3] + 1cf6: 9800 ldr r0, [sp, #0] + 1cf8: 2100 mov r1, #0 + 1cfa: 7201 strb r1, [r0, #8] + 1cfc: b001 add sp, #4 + 1cfe: 4770 bx lr + 1d00: b081 sub sp, #4 + 1d02: 4669 mov r1, sp + 1d04: 7008 strb r0, [r1, #0] + 1d06: 490c ldr r1, =0x864 ; via 0x1d38 + 1d08: 4668 mov r0, sp + 1d0a: 7800 ldrb r0, [r0, #0] + 1d0c: 0080 lsl r0, r0, #2 + 1d0e: 5808 ldr r0, [r1, r0] + 1d10: 7941 ldrb r1, [r0, #5] + 1d12: 4668 mov r0, sp + 1d14: 7041 strb r1, [r0, #1] + 1d16: 7840 ldrb r0, [r0, #1] + 1d18: 09c0 lsr r0, r0, #7 + 1d1a: d20b bcs 0x1d34 + 1d1c: 4806 ldr r0, =0x864 ; via 0x1d38 + 1d1e: 4669 mov r1, sp + 1d20: 7809 ldrb r1, [r1, #0] + 1d22: 0089 lsl r1, r1, #2 + 1d24: 5840 ldr r0, [r0, r1] + 1d26: 7940 ldrb r0, [r0, #5] + 1d28: 4669 mov r1, sp + 1d2a: 7048 strb r0, [r1, #1] + 1d2c: 4668 mov r0, sp + 1d2e: 7840 ldrb r0, [r0, #1] + 1d30: 09c0 lsr r0, r0, #7 + 1d32: d3f3 bcc 0x1d1c + 1d34: b001 add sp, #4 + 1d36: 4770 bx lr + 1d38: 0864 lsr r4, r4, #1 + 1d3a: 0000 lsl r0, r0, #0 + 1d3c: 5805 ldr r5, [r0, r0] + 1d3e: ffff <half-bl> + 1d40: 5005 str r5, [r0, r0] + 1d42: ffff <half-bl> + 1d44: ff20 <half-bl> + 1d46: 0083 lsl r3, r0, #2 + 1d48: ff1b <half-bl> + 1d4a: 0083 lsl r3, r0, #2 + 1d4c: ff18 <half-bl> + 1d4e: 0083 lsl r3, r0, #2 + 1d50: 5800 ldr r0, [r0, r0] + 1d52: ffff <half-bl> + 1d54: 6000 str r0, [r0, #0] + 1d56: ffff <half-bl> + 1d58: 5000 str r0, [r0, r0] + 1d5a: ffff <half-bl> + 1d5c: b500 push {lr} + 1d5e: b087 sub sp, #28 ; 0x1c + 1d60: 466b mov r3, sp + 1d62: 721a strb r2, [r3, #8] + 1d64: 9101 str r1, [sp, #4] + 1d66: 9000 str r0, [sp, #0] + 1d68: 9900 ldr r1, [sp, #0] + 1d6a: 2000 mov r0, #0 + 1d6c: 8008 strh r0, [r1, #0] + 1d6e: 9801 ldr r0, [sp, #4] + 1d70: 2100 mov r1, #0 + 1d72: 8001 strh r1, [r0, #0] + 1d74: 2000 mov r0, #0 + 1d76: 9003 str r0, [sp, #12] ; 0xc + 1d78: f7ff ff5e bl 0x1c38 + 1d7c: a805 add r0, sp, #20 ; 0x14 + 1d7e: a906 add r1, sp, #24 ; 0x18 + 1d80: 466a mov r2, sp + 1d82: 7a12 ldrb r2, [r2, #8] + 1d84: f7ff feee bl 0x1b64 + 1d88: 9004 str r0, [sp, #16] ; 0x10 + 1d8a: 9804 ldr r0, [sp, #16] ; 0x10 + 1d8c: 2800 cmp r0, #0 + 1d8e: d11f bne 0x1dd0 + 1d90: 9803 ldr r0, [sp, #12] ; 0xc + 1d92: 2800 cmp r0, #0 + 1d94: d11c bne 0x1dd0 + 1d96: 9800 ldr r0, [sp, #0] + 1d98: 4669 mov r1, sp + 1d9a: 8b0a ldrh r2, [r1, #24] ; 0x18 + 1d9c: 8801 ldrh r1, [r0, #0] + 1d9e: 1851 add r1, r2, r1 + 1da0: 8001 strh r1, [r0, #0] + 1da2: 9905 ldr r1, [sp, #20] ; 0x14 + 1da4: 4668 mov r0, sp + 1da6: 8b00 ldrh r0, [r0, #24] ; 0x18 + 1da8: 8008 strh r0, [r1, #0] + 1daa: 9801 ldr r0, [sp, #4] + 1dac: 9905 ldr r1, [sp, #20] ; 0x14 + 1dae: 8809 ldrh r1, [r1, #0] + 1db0: 8802 ldrh r2, [r0, #0] + 1db2: 1889 add r1, r1, r2 + 1db4: 8001 strh r1, [r0, #0] + 1db6: a805 add r0, sp, #20 ; 0x14 + 1db8: a906 add r1, sp, #24 ; 0x18 + 1dba: 466a mov r2, sp + 1dbc: 7a12 ldrb r2, [r2, #8] + 1dbe: f7ff fed1 bl 0x1b64 + 1dc2: 9004 str r0, [sp, #16] ; 0x10 + 1dc4: 9804 ldr r0, [sp, #16] ; 0x10 + 1dc6: 2800 cmp r0, #0 + 1dc8: d102 bne 0x1dd0 + 1dca: 9803 ldr r0, [sp, #12] ; 0xc + 1dcc: 2800 cmp r0, #0 + 1dce: d0e2 beq 0x1d96 + 1dd0: 9804 ldr r0, [sp, #16] ; 0x10 + 1dd2: 2801 cmp r0, #1 + 1dd4: d101 bne 0x1dda + 1dd6: 2004 mov r0, #4 + 1dd8: 9003 str r0, [sp, #12] ; 0xc + 1dda: 9803 ldr r0, [sp, #12] ; 0xc + 1ddc: b007 add sp, #28 ; 0x1c + 1dde: bd00 pop {pc} + 1de0: b089 sub sp, #36 ; 0x24 + 1de2: 201a mov r0, #26 ; 0x1a + 1de4: 9005 str r0, [sp, #20] ; 0x14 + 1de6: 2018 mov r0, #24 ; 0x18 + 1de8: 9006 str r0, [sp, #24] ; 0x18 + 1dea: 2000 mov r0, #0 + 1dec: 9008 str r0, [sp, #32] ; 0x20 + 1dee: 4669 mov r1, sp + 1df0: 9805 ldr r0, [sp, #20] ; 0x14 + 1df2: 8800 ldrh r0, [r0, #0] + 1df4: 8008 strh r0, [r1, #0] + 1df6: 9806 ldr r0, [sp, #24] ; 0x18 + 1df8: 8800 ldrh r0, [r0, #0] + 1dfa: 8048 strh r0, [r1, #2] + 1dfc: 4668 mov r0, sp + 1dfe: 8841 ldrh r1, [r0, #2] + 1e00: 8800 ldrh r0, [r0, #0] + 1e02: 0400 lsl r0, r0, #16 + 1e04: 1808 add r0, r1, r0 + 1e06: 9001 str r0, [sp, #4] + 1e08: 9801 ldr r0, [sp, #4] + 1e0a: 0200 lsl r0, r0, #8 + 1e0c: 0a00 lsr r0, r0, #8 + 1e0e: 0080 lsl r0, r0, #2 + 1e10: 3008 add r0, #8 + 1e12: 9007 str r0, [sp, #28] ; 0x1c + 1e14: 9807 ldr r0, [sp, #28] ; 0x1c + 1e16: 3018 add r0, #24 ; 0x18 + 1e18: 9002 str r0, [sp, #8] + 1e1a: 9802 ldr r0, [sp, #8] + 1e1c: 9004 str r0, [sp, #16] ; 0x10 + 1e1e: 9802 ldr r0, [sp, #8] + 1e20: 3002 add r0, #2 + 1e22: 9003 str r0, [sp, #12] ; 0xc + 1e24: 9803 ldr r0, [sp, #12] ; 0xc + 1e26: 8801 ldrh r1, [r0, #0] + 1e28: 4806 ldr r0, =0xffff ; via 0x1e44 + 1e2a: 4281 cmp r1, r0 + 1e2c: d104 bne 0x1e38 + 1e2e: 9804 ldr r0, [sp, #16] ; 0x10 + 1e30: 8800 ldrh r0, [r0, #0] + 1e32: 4904 ldr r1, =0xffff ; via 0x1e44 + 1e34: 4288 cmp r0, r1 + 1e36: d001 beq 0x1e3c + 1e38: 2001 mov r0, #1 + 1e3a: 9008 str r0, [sp, #32] ; 0x20 + 1e3c: 9808 ldr r0, [sp, #32] ; 0x20 + 1e3e: b009 add sp, #36 ; 0x24 + 1e40: 4770 bx lr + 1e42: 46c0 nop (mov r8, r8) + + 1e44: 0000ffff + + 1e48: e92d4000 stmdb sp!, {lr} + 1e4c: e28fe001 add lr, pc, #1 + 1e50: e12fff1e bx lr + 1e54: f7fe fe3d bl 0xad2 + 1e58: 4778 bx pc + 1e5a: 46c0 nop (mov r8, r8) + 1e5c: e8bd8000 ldmia sp!, {pc} + +<1E60-1EFF: all FFs> + + 1f00: 00000001 + +<1F04-end: all FFs>