summaryrefslogtreecommitdiff
path: root/asm/battle_ai_script_commands.s
diff options
context:
space:
mode:
authorsceptillion <33798691+sceptillion@users.noreply.github.com>2017-12-16 23:54:22 -0800
committersceptillion <33798691+sceptillion@users.noreply.github.com>2017-12-16 23:54:22 -0800
commit670fef77ac4d9116d5fdc28c0da40622919a062b (patch)
tree61c0e925f059404473826ac775305ba5e2706ab1 /asm/battle_ai_script_commands.s
first commit
Diffstat (limited to 'asm/battle_ai_script_commands.s')
-rw-r--r--asm/battle_ai_script_commands.s5796
1 files changed, 5796 insertions, 0 deletions
diff --git a/asm/battle_ai_script_commands.s b/asm/battle_ai_script_commands.s
new file mode 100644
index 000000000..8f9605a12
--- /dev/null
+++ b/asm/battle_ai_script_commands.s
@@ -0,0 +1,5796 @@
+ .include "asm/macros.inc"
+ .include "constants/constants.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_80C6D0C
+sub_80C6D0C: @ 80C6D0C
+ push {r4-r7,lr}
+ ldr r1, _080C6D8C @ =gUnknown_2023FF4
+ ldr r0, [r1]
+ ldr r3, [r0, 0x18]
+ movs r4, 0
+ adds r7, r1, 0
+ ldr r2, _080C6D90 @ =gUnknown_2022B4C
+ movs r1, 0
+_080C6D1C:
+ adds r0, r3, r4
+ strb r1, [r0]
+ adds r4, 0x1
+ cmp r4, 0x2F
+ bls _080C6D1C
+ ldr r3, [r2]
+ movs r0, 0x8
+ ands r0, r3
+ cmp r0, 0
+ beq _080C6D80
+ ldr r0, _080C6D94 @ =gUnknown_20386AE
+ ldrh r2, [r0]
+ movs r1, 0x80
+ lsls r1, 3
+ adds r6, r0, 0
+ cmp r2, r1
+ beq _080C6D80
+ ldr r0, _080C6D98 @ =0x00080982
+ ands r3, r0
+ cmp r3, 0
+ bne _080C6D80
+ movs r4, 0
+ ldr r5, _080C6D9C @ =gUnknown_823EAD8
+_080C6D4A:
+ lsls r2, r4, 1
+ ldrh r1, [r6]
+ lsls r0, r1, 2
+ adds r0, r1
+ lsls r0, 3
+ adds r2, r0
+ adds r2, r5
+ ldrh r3, [r2]
+ cmp r3, 0
+ beq _080C6D7A
+ ldr r2, [r7]
+ ldr r1, [r2, 0x18]
+ adds r0, r1, 0
+ adds r0, 0x2C
+ ldrb r0, [r0]
+ lsls r0, 1
+ adds r1, 0x24
+ adds r1, r0
+ strh r3, [r1]
+ ldr r1, [r2, 0x18]
+ adds r1, 0x2C
+ ldrb r0, [r1]
+ adds r0, 0x1
+ strb r0, [r1]
+_080C6D7A:
+ adds r4, 0x1
+ cmp r4, 0x3
+ ble _080C6D4A
+_080C6D80:
+ bl sub_80C6DA0
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C6D8C: .4byte gUnknown_2023FF4
+_080C6D90: .4byte gUnknown_2022B4C
+_080C6D94: .4byte gUnknown_20386AE
+_080C6D98: .4byte 0x00080982
+_080C6D9C: .4byte gUnknown_823EAD8
+ thumb_func_end sub_80C6D0C
+
+ thumb_func_start sub_80C6DA0
+sub_80C6DA0: @ 80C6DA0
+ push {r4-r7,lr}
+ ldr r0, _080C6E60 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r4, 0
+ ldr r3, _080C6E64 @ =gUnknown_2023BC4
+ movs r2, 0
+_080C6DAE:
+ adds r0, r1, r4
+ strb r2, [r0]
+ adds r4, 0x1
+ cmp r4, 0x1B
+ bls _080C6DAE
+ movs r4, 0
+ ldr r2, _080C6E60 @ =gUnknown_2023FF4
+ movs r1, 0x64
+_080C6DBE:
+ ldr r0, [r2]
+ ldr r0, [r0, 0x14]
+ adds r0, 0x4
+ adds r0, r4
+ strb r1, [r0]
+ adds r4, 0x1
+ cmp r4, 0x3
+ ble _080C6DBE
+ ldrb r0, [r3]
+ movs r1, 0
+ movs r2, 0xFF
+ bl sub_801779C
+ lsls r0, 24
+ lsrs r6, r0, 24
+ movs r4, 0
+ ldr r5, _080C6E60 @ =gUnknown_2023FF4
+_080C6DE0:
+ ldr r7, _080C6E68 @ =gUnknown_825E45C
+ lsls r0, r4, 2
+ adds r0, r7
+ ldr r0, [r0]
+ ands r0, r6
+ cmp r0, 0
+ beq _080C6DFA
+ ldr r0, [r5]
+ ldr r0, [r0, 0x14]
+ adds r0, 0x4
+ adds r0, r4
+ movs r1, 0
+ strb r1, [r0]
+_080C6DFA:
+ bl sub_8044EC8
+ ldr r1, [r5]
+ ldr r2, [r1, 0x14]
+ adds r2, 0x18
+ adds r2, r4
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0xF
+ ands r0, r1
+ movs r1, 0x64
+ subs r1, r0
+ strb r1, [r2]
+ adds r4, 0x1
+ cmp r4, 0x3
+ ble _080C6DE0
+ ldr r0, _080C6E60 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x1C]
+ adds r0, 0x20
+ movs r1, 0
+ strb r1, [r0]
+ ldr r1, _080C6E6C @ =gUnknown_2023D6B
+ ldr r0, _080C6E64 @ =gUnknown_2023BC4
+ ldrb r2, [r0]
+ strb r2, [r1]
+ ldr r0, _080C6E70 @ =gUnknown_2022B4C
+ ldr r0, [r0]
+ movs r1, 0x1
+ ands r0, r1
+ cmp r0, 0
+ beq _080C6E7C
+ ldr r4, _080C6E74 @ =gUnknown_2023D6C
+ bl sub_8044EC8
+ movs r3, 0x2
+ ands r0, r3
+ strb r0, [r4]
+ ldr r0, _080C6E78 @ =gUnknown_2023D70
+ ldrb r1, [r0]
+ ldrb r2, [r4]
+ lsls r0, r2, 2
+ adds r0, r7
+ ldr r0, [r0]
+ ands r1, r0
+ cmp r1, 0
+ beq _080C6E84
+ eors r2, r3
+ strb r2, [r4]
+ b _080C6E84
+ .align 2, 0
+_080C6E60: .4byte gUnknown_2023FF4
+_080C6E64: .4byte gUnknown_2023BC4
+_080C6E68: .4byte gUnknown_825E45C
+_080C6E6C: .4byte gUnknown_2023D6B
+_080C6E70: .4byte gUnknown_2022B4C
+_080C6E74: .4byte gUnknown_2023D6C
+_080C6E78: .4byte gUnknown_2023D70
+_080C6E7C:
+ ldr r0, _080C6EA0 @ =gUnknown_2023D6C
+ movs r1, 0x1
+ eors r1, r2
+ strb r1, [r0]
+_080C6E84:
+ ldr r0, _080C6EA4 @ =gUnknown_2022B4C
+ ldr r1, [r0]
+ movs r0, 0x80
+ ands r0, r1
+ cmp r0, 0
+ beq _080C6EAC
+ ldr r0, _080C6EA8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x80
+ lsls r0, 23
+ str r0, [r1, 0xC]
+ b _080C6F34
+ .align 2, 0
+_080C6EA0: .4byte gUnknown_2023D6C
+_080C6EA4: .4byte gUnknown_2022B4C
+_080C6EA8: .4byte gUnknown_2023FF4
+_080C6EAC:
+ movs r2, 0x80
+ lsls r2, 3
+ adds r0, r1, 0
+ ands r0, r2
+ cmp r0, 0
+ beq _080C6ECC
+ ldr r0, _080C6EC8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x80
+ lsls r0, 22
+ str r0, [r1, 0xC]
+ b _080C6F34
+ .align 2, 0
+_080C6EC8: .4byte gUnknown_2023FF4
+_080C6ECC:
+ ldr r0, _080C6EF4 @ =0x00080900
+ ands r0, r1
+ cmp r0, 0
+ bne _080C6F0A
+ ldr r4, _080C6EF8 @ =gUnknown_20386AE
+ ldrh r0, [r4]
+ cmp r0, r2
+ beq _080C6F0A
+ movs r0, 0x80
+ lsls r0, 10
+ ands r0, r1
+ cmp r0, 0
+ beq _080C6F00
+ ldr r0, _080C6EFC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x1
+ str r0, [r1, 0xC]
+ b _080C6F34
+ .align 2, 0
+_080C6EF4: .4byte 0x00080900
+_080C6EF8: .4byte gUnknown_20386AE
+_080C6EFC: .4byte gUnknown_2023FF4
+_080C6F00:
+ movs r0, 0x80
+ lsls r0, 11
+ ands r1, r0
+ cmp r1, 0
+ beq _080C6F1C
+_080C6F0A:
+ ldr r0, _080C6F18 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x7
+ str r0, [r1, 0xC]
+ b _080C6F34
+ .align 2, 0
+_080C6F18: .4byte gUnknown_2023FF4
+_080C6F1C:
+ ldr r0, _080C6F3C @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C6F40 @ =gUnknown_823EAC8
+ ldrh r1, [r4]
+ lsls r0, r1, 2
+ adds r0, r1
+ lsls r0, 3
+ adds r2, 0x1C
+ adds r0, r2
+ ldr r0, [r0]
+ str r0, [r3, 0xC]
+_080C6F34:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C6F3C: .4byte gUnknown_2023FF4
+_080C6F40: .4byte gUnknown_823EAC8
+ thumb_func_end sub_80C6DA0
+
+ thumb_func_start sub_80C6F44
+sub_80C6F44: @ 80C6F44
+ push {r4-r7,lr}
+ mov r7, r8
+ push {r7}
+ sub sp, 0x8
+ bl sub_80C7164
+ ldr r1, _080C6FA8 @ =gUnknown_2023FF4
+ ldr r0, [r1]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0xC]
+ cmp r0, 0
+ beq _080C6F94
+ adds r4, r1, 0
+ movs r5, 0
+_080C6F60:
+ ldr r0, [r4]
+ ldr r2, [r0, 0x14]
+ ldr r0, [r2, 0xC]
+ movs r1, 0x1
+ ands r0, r1
+ cmp r0, 0
+ beq _080C6F74
+ strb r5, [r2]
+ bl sub_80C7038
+_080C6F74:
+ ldr r0, [r4]
+ ldr r1, [r0, 0x14]
+ ldr r0, [r1, 0xC]
+ lsrs r0, 1
+ str r0, [r1, 0xC]
+ ldrb r0, [r1, 0x11]
+ adds r0, 0x1
+ strb r0, [r1, 0x11]
+ ldr r0, [r4]
+ ldr r0, [r0, 0x14]
+ strb r5, [r0, 0x1]
+ ldr r0, [r4]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0xC]
+ cmp r0, 0
+ bne _080C6F60
+_080C6F94:
+ ldr r6, _080C6FA8 @ =gUnknown_2023FF4
+ ldr r0, [r6]
+ ldr r3, [r0, 0x14]
+ ldrb r1, [r3, 0x10]
+ movs r0, 0x2
+ ands r0, r1
+ cmp r0, 0
+ beq _080C6FAC
+ movs r0, 0x4
+ b _080C702A
+ .align 2, 0
+_080C6FA8: .4byte gUnknown_2023FF4
+_080C6FAC:
+ movs r0, 0x4
+ ands r0, r1
+ lsls r0, 24
+ lsrs r2, r0, 24
+ cmp r2, 0
+ beq _080C6FBC
+ movs r0, 0x5
+ b _080C702A
+_080C6FBC:
+ movs r5, 0x1
+ mov r0, sp
+ ldrb r1, [r3, 0x4]
+ strb r1, [r0]
+ add r0, sp, 0x4
+ strb r2, [r0]
+ movs r3, 0x1
+ mov r8, r0
+ mov r4, sp
+ adds r7, r6, 0
+ mov r6, r8
+_080C6FD2:
+ ldrb r1, [r4]
+ ldr r0, [r7]
+ ldr r0, [r0, 0x14]
+ adds r0, 0x4
+ adds r2, r0, r3
+ movs r0, 0
+ ldrsb r0, [r2, r0]
+ cmp r1, r0
+ bge _080C6FEC
+ movs r5, 0x1
+ ldrb r0, [r2]
+ strb r0, [r4]
+ strb r3, [r6]
+_080C6FEC:
+ ldrb r1, [r4]
+ ldr r0, [r7]
+ ldr r0, [r0, 0x14]
+ adds r0, 0x4
+ adds r2, r0, r3
+ movs r0, 0
+ ldrsb r0, [r2, r0]
+ cmp r1, r0
+ bne _080C7012
+ mov r0, sp
+ adds r1, r0, r5
+ ldrb r0, [r2]
+ strb r0, [r1]
+ adds r1, r5, 0
+ adds r0, r1, 0x1
+ lsls r0, 24
+ lsrs r5, r0, 24
+ adds r1, r6, r1
+ strb r3, [r1]
+_080C7012:
+ adds r3, 0x1
+ cmp r3, 0x3
+ ble _080C6FD2
+ bl sub_8044EC8
+ lsls r0, 16
+ lsrs r0, 16
+ adds r1, r5, 0
+ bl __modsi3
+ add r0, r8
+ ldrb r0, [r0]
+_080C702A:
+ add sp, 0x8
+ pop {r3}
+ mov r8, r3
+ pop {r4-r7}
+ pop {r1}
+ bx r1
+ thumb_func_end sub_80C6F44
+
+ thumb_func_start sub_80C7038
+sub_80C7038: @ 80C7038
+ push {r4-r7,lr}
+ mov r7, r9
+ mov r6, r8
+ push {r6,r7}
+ ldr r7, _080C70B0 @ =gUnknown_2023FF4
+ ldr r0, [r7]
+ ldr r0, [r0, 0x14]
+ ldrb r0, [r0]
+ adds r6, r7, 0
+ cmp r0, 0x2
+ bne _080C7050
+ b _080C7156
+_080C7050:
+ mov r9, r7
+ ldr r0, _080C70B4 @ =gUnknown_2039A00
+ mov r8, r0
+_080C7056:
+ mov r1, r9
+ ldr r0, [r1]
+ ldr r2, [r0, 0x14]
+ ldrb r0, [r2]
+ cmp r0, 0x1
+ beq _080C70C4
+ cmp r0, 0x1
+ bgt _080C714A
+ cmp r0, 0
+ bne _080C714A
+ ldr r1, _080C70B8 @ =gUnknown_81D9BF4
+ ldrb r0, [r2, 0x11]
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ mov r1, r8
+ str r0, [r1]
+ ldr r5, _080C70BC @ =gUnknown_2023BE4
+ ldrb r4, [r2, 0x1]
+ ldr r0, _080C70C0 @ =gUnknown_2023D6B
+ ldrb r1, [r0]
+ movs r0, 0x58
+ adds r3, r1, 0
+ muls r3, r0
+ adds r0, r4, r3
+ adds r1, r5, 0
+ adds r1, 0x24
+ adds r0, r1
+ ldrb r0, [r0]
+ cmp r0, 0
+ beq _080C70A0
+ lsls r0, r4, 1
+ adds r0, r3
+ adds r1, r5, 0
+ adds r1, 0xC
+ adds r0, r1
+ ldrh r0, [r0]
+_080C70A0:
+ strh r0, [r2, 0x2]
+ ldr r0, [r6]
+ ldr r1, [r0, 0x14]
+ ldrb r0, [r1]
+ adds r0, 0x1
+ strb r0, [r1]
+ b _080C714A
+ .align 2, 0
+_080C70B0: .4byte gUnknown_2023FF4
+_080C70B4: .4byte gUnknown_2039A00
+_080C70B8: .4byte gUnknown_81D9BF4
+_080C70BC: .4byte gUnknown_2023BE4
+_080C70C0: .4byte gUnknown_2023D6B
+_080C70C4:
+ ldrh r1, [r2, 0x2]
+ cmp r1, 0
+ beq _080C70E4
+ ldr r1, _080C70E0 @ =gUnknown_83F55A4
+ mov r2, r8
+ ldr r0, [r2]
+ ldrb r0, [r0]
+ lsls r0, 2
+ adds r0, r1
+ ldr r0, [r0]
+ bl _call_via_r0
+ b _080C70FA
+ .align 2, 0
+_080C70E0: .4byte gUnknown_83F55A4
+_080C70E4:
+ adds r0, r2, 0x4
+ ldrb r2, [r2, 0x1]
+ adds r0, r2
+ strb r1, [r0]
+ mov r1, r9
+ ldr r0, [r1]
+ ldr r2, [r0, 0x14]
+ ldrb r1, [r2, 0x10]
+ movs r0, 0x1
+ orrs r0, r1
+ strb r0, [r2, 0x10]
+_080C70FA:
+ ldr r2, _080C7130 @ =gUnknown_2023FF4
+ ldr r0, [r2]
+ ldr r3, [r0, 0x14]
+ ldrb r1, [r3, 0x10]
+ movs r0, 0x1
+ ands r0, r1
+ adds r6, r2, 0
+ cmp r0, 0
+ beq _080C714A
+ ldrb r0, [r3, 0x1]
+ adds r0, 0x1
+ strb r0, [r3, 0x1]
+ ldr r0, [r6]
+ ldr r2, [r0, 0x14]
+ ldrb r0, [r2, 0x1]
+ cmp r0, 0x3
+ bhi _080C7134
+ ldrb r1, [r2, 0x10]
+ movs r0, 0x8
+ ands r0, r1
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, 0
+ bne _080C7134
+ strb r0, [r2]
+ b _080C713E
+ .align 2, 0
+_080C7130: .4byte gUnknown_2023FF4
+_080C7134:
+ ldr r0, [r6]
+ ldr r1, [r0, 0x14]
+ ldrb r0, [r1]
+ adds r0, 0x1
+ strb r0, [r1]
+_080C713E:
+ ldr r0, [r6]
+ ldr r2, [r0, 0x14]
+ ldrb r1, [r2, 0x10]
+ movs r0, 0xFE
+ ands r0, r1
+ strb r0, [r2, 0x10]
+_080C714A:
+ ldr r0, [r7]
+ ldr r0, [r0, 0x14]
+ ldrb r0, [r0]
+ cmp r0, 0x2
+ beq _080C7156
+ b _080C7056
+_080C7156:
+ pop {r3,r4}
+ mov r8, r3
+ mov r9, r4
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7038
+
+ thumb_func_start sub_80C7164
+sub_80C7164: @ 80C7164
+ push {r4-r6,lr}
+ movs r3, 0
+ ldr r5, _080C7190 @ =gUnknown_2023FF4
+ ldr r4, _080C7194 @ =gUnknown_2023D6C
+ ldr r6, _080C7198 @ =gUnknown_2023D98
+_080C716E:
+ ldr r0, [r5]
+ ldr r2, [r0, 0x18]
+ lsls r1, r3, 1
+ ldrb r0, [r4]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r1, r0
+ adds r2, r1
+ ldrh r0, [r2]
+ cmp r0, 0
+ bne _080C719C
+ ldrb r0, [r4]
+ lsls r0, 1
+ adds r0, r6
+ ldrh r0, [r0]
+ strh r0, [r2]
+ b _080C71A2
+ .align 2, 0
+_080C7190: .4byte gUnknown_2023FF4
+_080C7194: .4byte gUnknown_2023D6C
+_080C7198: .4byte gUnknown_2023D98
+_080C719C:
+ adds r3, 0x1
+ cmp r3, 0x7
+ ble _080C716E
+_080C71A2:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7164
+
+ thumb_func_start sub_80C71A8
+sub_80C71A8: @ 80C71A8
+ push {r4,lr}
+ lsls r0, 24
+ ldr r4, _080C71CC @ =gUnknown_2023FF4
+ lsrs r0, 25
+ lsls r1, r0, 4
+ movs r3, 0
+ movs r2, 0x7
+_080C71B6:
+ ldr r0, [r4]
+ ldr r0, [r0, 0x18]
+ adds r0, r1
+ strh r3, [r0]
+ adds r1, 0x2
+ subs r2, 0x1
+ cmp r2, 0
+ bge _080C71B6
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C71CC: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C71A8
+
+ thumb_func_start sub_80C71D0
+sub_80C71D0: @ 80C71D0
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ lsls r1, 24
+ lsrs r5, r1, 24
+ adds r0, r4, 0
+ bl sub_80751C4
+ lsls r0, 24
+ cmp r0, 0
+ bne _080C71FC
+ adds r0, r4, 0
+ bl sub_80751D8
+ ldr r1, _080C7204 @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r2, [r1, 0x18]
+ movs r1, 0x1
+ ands r1, r0
+ adds r2, 0x20
+ adds r2, r1
+ strb r5, [r2]
+_080C71FC:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C7204: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C71D0
+
+ thumb_func_start sub_80C7208
+sub_80C7208: @ 80C7208
+ push {r4,r5,lr}
+ lsls r0, 24
+ lsrs r4, r0, 24
+ lsls r1, 24
+ lsrs r5, r1, 24
+ adds r0, r4, 0
+ bl sub_80751C4
+ lsls r0, 24
+ cmp r0, 0
+ bne _080C7234
+ adds r0, r4, 0
+ bl sub_80751D8
+ ldr r1, _080C723C @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r2, [r1, 0x18]
+ movs r1, 0x1
+ ands r1, r0
+ adds r2, 0x22
+ adds r2, r1
+ strb r5, [r2]
+_080C7234:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C723C: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C7208
+
+ thumb_func_start sub_80C7240
+sub_80C7240: @ 80C7240
+ push {lr}
+ bl sub_8044EC8
+ lsls r0, 16
+ movs r1, 0xFF
+ lsls r1, 16
+ ldr r3, _080C7274 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ands r1, r0
+ lsrs r1, 16
+ ldrb r0, [r2, 0x1]
+ cmp r1, r0
+ bcs _080C7278
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C727C
+ .align 2, 0
+_080C7274: .4byte gUnknown_2039A00
+_080C7278:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C727C:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7240
+
+ thumb_func_start sub_80C7280
+sub_80C7280: @ 80C7280
+ push {lr}
+ bl sub_8044EC8
+ lsls r0, 16
+ movs r1, 0xFF
+ lsls r1, 16
+ ldr r3, _080C72B4 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ands r1, r0
+ lsrs r1, 16
+ ldrb r0, [r2, 0x1]
+ cmp r1, r0
+ bls _080C72B8
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C72BC
+ .align 2, 0
+_080C72B4: .4byte gUnknown_2039A00
+_080C72B8:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C72BC:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7280
+
+ thumb_func_start sub_80C72C0
+sub_80C72C0: @ 80C72C0
+ push {lr}
+ bl sub_8044EC8
+ lsls r0, 16
+ movs r1, 0xFF
+ lsls r1, 16
+ ldr r3, _080C72F4 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ands r1, r0
+ lsrs r1, 16
+ ldrb r0, [r2, 0x1]
+ cmp r1, r0
+ bne _080C72F8
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C72FC
+ .align 2, 0
+_080C72F4: .4byte gUnknown_2039A00
+_080C72F8:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C72FC:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C72C0
+
+ thumb_func_start sub_80C7300
+sub_80C7300: @ 80C7300
+ push {lr}
+ bl sub_8044EC8
+ lsls r0, 16
+ movs r1, 0xFF
+ lsls r1, 16
+ ldr r3, _080C7334 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ands r1, r0
+ lsrs r1, 16
+ ldrb r0, [r2, 0x1]
+ cmp r1, r0
+ beq _080C7338
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C733C
+ .align 2, 0
+_080C7334: .4byte gUnknown_2039A00
+_080C7338:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C733C:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7300
+
+ thumb_func_start sub_80C7340
+sub_80C7340: @ 80C7340
+ push {r4,lr}
+ ldr r2, _080C737C @ =gUnknown_2023FF4
+ ldr r0, [r2]
+ ldr r0, [r0, 0x14]
+ adds r1, r0, 0x4
+ ldrb r0, [r0, 0x1]
+ adds r1, r0
+ ldr r3, _080C7380 @ =gUnknown_2039A00
+ ldr r0, [r3]
+ ldrb r0, [r0, 0x1]
+ ldrb r4, [r1]
+ adds r0, r4
+ strb r0, [r1]
+ ldr r0, [r2]
+ ldr r1, [r0, 0x14]
+ adds r0, r1, 0x4
+ ldrb r1, [r1, 0x1]
+ adds r1, r0, r1
+ movs r0, 0
+ ldrsb r0, [r1, r0]
+ cmp r0, 0
+ bge _080C7370
+ movs r0, 0
+ strb r0, [r1]
+_080C7370:
+ ldr r0, [r3]
+ adds r0, 0x2
+ str r0, [r3]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C737C: .4byte gUnknown_2023FF4
+_080C7380: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C7340
+
+ thumb_func_start sub_80C7384
+sub_80C7384: @ 80C7384
+ push {r4,lr}
+ ldr r0, _080C7398 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C73A0
+ ldr r0, _080C739C @ =gUnknown_2023D6B
+ b _080C73A2
+ .align 2, 0
+_080C7398: .4byte gUnknown_2039A00
+_080C739C: .4byte gUnknown_2023D6B
+_080C73A0:
+ ldr r0, _080C73D8 @ =gUnknown_2023D6C
+_080C73A2:
+ ldrb r1, [r0]
+ ldr r2, _080C73DC @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r1, r0
+ adds r1, r2
+ ldrh r2, [r1, 0x28]
+ movs r0, 0x64
+ muls r0, r2
+ ldrh r1, [r1, 0x2C]
+ bl __divsi3
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x2]
+ cmp r0, r1
+ bcs _080C73E0
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C73E4
+ .align 2, 0
+_080C73D8: .4byte gUnknown_2023D6C
+_080C73DC: .4byte gUnknown_2023BE4
+_080C73E0:
+ adds r0, r2, 0x7
+ str r0, [r4]
+_080C73E4:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7384
+
+ thumb_func_start sub_80C73EC
+sub_80C73EC: @ 80C73EC
+ push {r4,lr}
+ ldr r0, _080C7400 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C7408
+ ldr r0, _080C7404 @ =gUnknown_2023D6B
+ b _080C740A
+ .align 2, 0
+_080C7400: .4byte gUnknown_2039A00
+_080C7404: .4byte gUnknown_2023D6B
+_080C7408:
+ ldr r0, _080C7440 @ =gUnknown_2023D6C
+_080C740A:
+ ldrb r1, [r0]
+ ldr r2, _080C7444 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r1, r0
+ adds r1, r2
+ ldrh r2, [r1, 0x28]
+ movs r0, 0x64
+ muls r0, r2
+ ldrh r1, [r1, 0x2C]
+ bl __divsi3
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x2]
+ cmp r0, r1
+ bls _080C7448
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C744C
+ .align 2, 0
+_080C7440: .4byte gUnknown_2023D6C
+_080C7444: .4byte gUnknown_2023BE4
+_080C7448:
+ adds r0, r2, 0x7
+ str r0, [r4]
+_080C744C:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C73EC
+
+ thumb_func_start sub_80C7454
+sub_80C7454: @ 80C7454
+ push {r4,lr}
+ ldr r0, _080C7468 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C7470
+ ldr r0, _080C746C @ =gUnknown_2023D6B
+ b _080C7472
+ .align 2, 0
+_080C7468: .4byte gUnknown_2039A00
+_080C746C: .4byte gUnknown_2023D6B
+_080C7470:
+ ldr r0, _080C74A8 @ =gUnknown_2023D6C
+_080C7472:
+ ldrb r1, [r0]
+ ldr r2, _080C74AC @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r1, r0
+ adds r1, r2
+ ldrh r2, [r1, 0x28]
+ movs r0, 0x64
+ muls r0, r2
+ ldrh r1, [r1, 0x2C]
+ bl __divsi3
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x2]
+ cmp r0, r1
+ bne _080C74B0
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C74B4
+ .align 2, 0
+_080C74A8: .4byte gUnknown_2023D6C
+_080C74AC: .4byte gUnknown_2023BE4
+_080C74B0:
+ adds r0, r2, 0x7
+ str r0, [r4]
+_080C74B4:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7454
+
+ thumb_func_start sub_80C74BC
+sub_80C74BC: @ 80C74BC
+ push {r4,lr}
+ ldr r0, _080C74D0 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C74D8
+ ldr r0, _080C74D4 @ =gUnknown_2023D6B
+ b _080C74DA
+ .align 2, 0
+_080C74D0: .4byte gUnknown_2039A00
+_080C74D4: .4byte gUnknown_2023D6B
+_080C74D8:
+ ldr r0, _080C7510 @ =gUnknown_2023D6C
+_080C74DA:
+ ldrb r1, [r0]
+ ldr r2, _080C7514 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r1, r0
+ adds r1, r2
+ ldrh r2, [r1, 0x28]
+ movs r0, 0x64
+ muls r0, r2
+ ldrh r1, [r1, 0x2C]
+ bl __divsi3
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x2]
+ cmp r0, r1
+ beq _080C7518
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C751C
+ .align 2, 0
+_080C7510: .4byte gUnknown_2023D6C
+_080C7514: .4byte gUnknown_2023BE4
+_080C7518:
+ adds r0, r2, 0x7
+ str r0, [r4]
+_080C751C:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C74BC
+
+ thumb_func_start sub_80C7524
+sub_80C7524: @ 80C7524
+ push {r4,r5,lr}
+ ldr r0, _080C7538 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C7540
+ ldr r0, _080C753C @ =gUnknown_2023D6B
+ b _080C7542
+ .align 2, 0
+_080C7538: .4byte gUnknown_2039A00
+_080C753C: .4byte gUnknown_2023D6B
+_080C7540:
+ ldr r0, _080C7584 @ =gUnknown_2023D6C
+_080C7542:
+ ldrb r4, [r0]
+ ldr r3, [r5]
+ ldrb r2, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r2, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r2, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r2, r0
+ ldr r1, _080C7588 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r1, 0x4C
+ adds r0, r1
+ ldr r0, [r0]
+ ands r0, r2
+ cmp r0, 0
+ beq _080C758C
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C7592
+ .align 2, 0
+_080C7584: .4byte gUnknown_2023D6C
+_080C7588: .4byte gUnknown_2023BE4
+_080C758C:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r5]
+_080C7592:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7524
+
+ thumb_func_start sub_80C7598
+sub_80C7598: @ 80C7598
+ push {r4,r5,lr}
+ ldr r0, _080C75AC @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C75B4
+ ldr r0, _080C75B0 @ =gUnknown_2023D6B
+ b _080C75B6
+ .align 2, 0
+_080C75AC: .4byte gUnknown_2039A00
+_080C75B0: .4byte gUnknown_2023D6B
+_080C75B4:
+ ldr r0, _080C75F8 @ =gUnknown_2023D6C
+_080C75B6:
+ ldrb r4, [r0]
+ ldr r3, [r5]
+ ldrb r2, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r2, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r2, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r2, r0
+ ldr r1, _080C75FC @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r1, 0x4C
+ adds r0, r1
+ ldr r0, [r0]
+ ands r0, r2
+ cmp r0, 0
+ bne _080C7600
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C7606
+ .align 2, 0
+_080C75F8: .4byte gUnknown_2023D6C
+_080C75FC: .4byte gUnknown_2023BE4
+_080C7600:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r5]
+_080C7606:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7598
+
+ thumb_func_start sub_80C760C
+sub_80C760C: @ 80C760C
+ push {r4,r5,lr}
+ ldr r0, _080C7620 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C7628
+ ldr r0, _080C7624 @ =gUnknown_2023D6B
+ b _080C762A
+ .align 2, 0
+_080C7620: .4byte gUnknown_2039A00
+_080C7624: .4byte gUnknown_2023D6B
+_080C7628:
+ ldr r0, _080C766C @ =gUnknown_2023D6C
+_080C762A:
+ ldrb r4, [r0]
+ ldr r3, [r5]
+ ldrb r2, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r2, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r2, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r2, r0
+ ldr r1, _080C7670 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r1, 0x50
+ adds r0, r1
+ ldr r0, [r0]
+ ands r0, r2
+ cmp r0, 0
+ beq _080C7674
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C767A
+ .align 2, 0
+_080C766C: .4byte gUnknown_2023D6C
+_080C7670: .4byte gUnknown_2023BE4
+_080C7674:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r5]
+_080C767A:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C760C
+
+ thumb_func_start sub_80C7680
+sub_80C7680: @ 80C7680
+ push {r4,r5,lr}
+ ldr r0, _080C7694 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C769C
+ ldr r0, _080C7698 @ =gUnknown_2023D6B
+ b _080C769E
+ .align 2, 0
+_080C7694: .4byte gUnknown_2039A00
+_080C7698: .4byte gUnknown_2023D6B
+_080C769C:
+ ldr r0, _080C76E0 @ =gUnknown_2023D6C
+_080C769E:
+ ldrb r4, [r0]
+ ldr r3, [r5]
+ ldrb r2, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r2, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r2, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r2, r0
+ ldr r1, _080C76E4 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r1, 0x50
+ adds r0, r1
+ ldr r0, [r0]
+ ands r0, r2
+ cmp r0, 0
+ bne _080C76E8
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C76EE
+ .align 2, 0
+_080C76E0: .4byte gUnknown_2023D6C
+_080C76E4: .4byte gUnknown_2023BE4
+_080C76E8:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r5]
+_080C76EE:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7680
+
+ thumb_func_start sub_80C76F4
+sub_80C76F4: @ 80C76F4
+ push {r4,r5,lr}
+ ldr r0, _080C7708 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C7710
+ ldr r0, _080C770C @ =gUnknown_2023D6B
+ b _080C7712
+ .align 2, 0
+_080C7708: .4byte gUnknown_2039A00
+_080C770C: .4byte gUnknown_2023D6B
+_080C7710:
+ ldr r0, _080C7750 @ =gUnknown_2023D6C
+_080C7712:
+ ldrb r4, [r0]
+ ldr r3, [r5]
+ ldrb r1, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r2, _080C7754 @ =gUnknown_2023DFC
+ lsls r0, r4, 2
+ adds r0, r2
+ ldr r0, [r0]
+ ands r0, r1
+ cmp r0, 0
+ beq _080C7758
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C775E
+ .align 2, 0
+_080C7750: .4byte gUnknown_2023D6C
+_080C7754: .4byte gUnknown_2023DFC
+_080C7758:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r5]
+_080C775E:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C76F4
+
+ thumb_func_start sub_80C7764
+sub_80C7764: @ 80C7764
+ push {r4,r5,lr}
+ ldr r0, _080C7778 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C7780
+ ldr r0, _080C777C @ =gUnknown_2023D6B
+ b _080C7782
+ .align 2, 0
+_080C7778: .4byte gUnknown_2039A00
+_080C777C: .4byte gUnknown_2023D6B
+_080C7780:
+ ldr r0, _080C77C0 @ =gUnknown_2023D6C
+_080C7782:
+ ldrb r4, [r0]
+ ldr r3, [r5]
+ ldrb r1, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r2, _080C77C4 @ =gUnknown_2023DFC
+ lsls r0, r4, 2
+ adds r0, r2
+ ldr r0, [r0]
+ ands r0, r1
+ cmp r0, 0
+ bne _080C77C8
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C77CE
+ .align 2, 0
+_080C77C0: .4byte gUnknown_2023D6C
+_080C77C4: .4byte gUnknown_2023DFC
+_080C77C8:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r5]
+_080C77CE:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7764
+
+ thumb_func_start sub_80C77D4
+sub_80C77D4: @ 80C77D4
+ push {r4,lr}
+ ldr r0, _080C77E4 @ =gUnknown_2039A00
+ ldr r0, [r0]
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bne _080C77EC
+ ldr r0, _080C77E8 @ =gUnknown_2023D6B
+ b _080C77EE
+ .align 2, 0
+_080C77E4: .4byte gUnknown_2039A00
+_080C77E8: .4byte gUnknown_2023D6B
+_080C77EC:
+ ldr r0, _080C7838 @ =gUnknown_2023D6C
+_080C77EE:
+ ldrb r0, [r0]
+ bl sub_80751D8
+ movs r2, 0x1
+ ands r2, r0
+ ldr r4, _080C783C @ =gUnknown_2039A00
+ ldr r3, [r4]
+ ldrb r1, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r0, _080C7840 @ =gUnknown_2023DDE
+ lsls r2, 1
+ adds r2, r0
+ ldrh r0, [r2]
+ ands r0, r1
+ cmp r0, 0
+ beq _080C7844
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C784A
+ .align 2, 0
+_080C7838: .4byte gUnknown_2023D6C
+_080C783C: .4byte gUnknown_2039A00
+_080C7840: .4byte gUnknown_2023DDE
+_080C7844:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r4]
+_080C784A:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C77D4
+
+ thumb_func_start sub_80C7850
+sub_80C7850: @ 80C7850
+ push {r4,lr}
+ ldr r0, _080C7860 @ =gUnknown_2039A00
+ ldr r0, [r0]
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bne _080C7868
+ ldr r0, _080C7864 @ =gUnknown_2023D6B
+ b _080C786A
+ .align 2, 0
+_080C7860: .4byte gUnknown_2039A00
+_080C7864: .4byte gUnknown_2023D6B
+_080C7868:
+ ldr r0, _080C78B4 @ =gUnknown_2023D6C
+_080C786A:
+ ldrb r0, [r0]
+ bl sub_80751D8
+ movs r2, 0x1
+ ands r2, r0
+ ldr r4, _080C78B8 @ =gUnknown_2039A00
+ ldr r3, [r4]
+ ldrb r1, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r0, _080C78BC @ =gUnknown_2023DDE
+ lsls r2, 1
+ adds r2, r0
+ ldrh r0, [r2]
+ ands r0, r1
+ cmp r0, 0
+ bne _080C78C0
+ ldrb r1, [r3, 0x6]
+ ldrb r0, [r3, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C78C6
+ .align 2, 0
+_080C78B4: .4byte gUnknown_2023D6C
+_080C78B8: .4byte gUnknown_2039A00
+_080C78BC: .4byte gUnknown_2023DDE
+_080C78C0:
+ adds r0, r3, 0
+ adds r0, 0xA
+ str r0, [r4]
+_080C78C6:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7850
+
+ thumb_func_start sub_80C78CC
+sub_80C78CC: @ 80C78CC
+ push {lr}
+ ldr r0, _080C78F8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r3, _080C78FC @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ bcs _080C7900
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7904
+ .align 2, 0
+_080C78F8: .4byte gUnknown_2023FF4
+_080C78FC: .4byte gUnknown_2039A00
+_080C7900:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C7904:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C78CC
+
+ thumb_func_start sub_80C7908
+sub_80C7908: @ 80C7908
+ push {lr}
+ ldr r0, _080C7934 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r3, _080C7938 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ bls _080C793C
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7940
+ .align 2, 0
+_080C7934: .4byte gUnknown_2023FF4
+_080C7938: .4byte gUnknown_2039A00
+_080C793C:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C7940:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7908
+
+ thumb_func_start sub_80C7944
+sub_80C7944: @ 80C7944
+ push {lr}
+ ldr r0, _080C7970 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r3, _080C7974 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ bne _080C7978
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C797C
+ .align 2, 0
+_080C7970: .4byte gUnknown_2023FF4
+_080C7974: .4byte gUnknown_2039A00
+_080C7978:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C797C:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7944
+
+ thumb_func_start sub_80C7980
+sub_80C7980: @ 80C7980
+ push {lr}
+ ldr r0, _080C79AC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r3, _080C79B0 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ beq _080C79B4
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C79B8
+ .align 2, 0
+_080C79AC: .4byte gUnknown_2023FF4
+_080C79B0: .4byte gUnknown_2039A00
+_080C79B4:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C79B8:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7980
+
+ thumb_func_start sub_80C79BC
+sub_80C79BC: @ 80C79BC
+ push {lr}
+ ldr r3, _080C79FC @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r0, _080C7A00 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r1]
+ cmp r0, r1
+ bcs _080C7A04
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7A0A
+ .align 2, 0
+_080C79FC: .4byte gUnknown_2039A00
+_080C7A00: .4byte gUnknown_2023FF4
+_080C7A04:
+ adds r0, r2, 0
+ adds r0, 0x9
+ str r0, [r3]
+_080C7A0A:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C79BC
+
+ thumb_func_start sub_80C7A10
+sub_80C7A10: @ 80C7A10
+ push {lr}
+ ldr r3, _080C7A50 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r0, _080C7A54 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r1]
+ cmp r0, r1
+ bls _080C7A58
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7A5E
+ .align 2, 0
+_080C7A50: .4byte gUnknown_2039A00
+_080C7A54: .4byte gUnknown_2023FF4
+_080C7A58:
+ adds r0, r2, 0
+ adds r0, 0x9
+ str r0, [r3]
+_080C7A5E:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7A10
+
+ thumb_func_start sub_80C7A64
+sub_80C7A64: @ 80C7A64
+ push {lr}
+ ldr r3, _080C7AA4 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r0, _080C7AA8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r1]
+ cmp r0, r1
+ bne _080C7AAC
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7AB2
+ .align 2, 0
+_080C7AA4: .4byte gUnknown_2039A00
+_080C7AA8: .4byte gUnknown_2023FF4
+_080C7AAC:
+ adds r0, r2, 0
+ adds r0, 0x9
+ str r0, [r3]
+_080C7AB2:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7A64
+
+ thumb_func_start sub_80C7AB8
+sub_80C7AB8: @ 80C7AB8
+ push {lr}
+ ldr r3, _080C7AF8 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ ldr r0, _080C7AFC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0x8]
+ ldrb r1, [r1]
+ cmp r0, r1
+ beq _080C7B00
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7B06
+ .align 2, 0
+_080C7AF8: .4byte gUnknown_2039A00
+_080C7AFC: .4byte gUnknown_2023FF4
+_080C7B00:
+ adds r0, r2, 0
+ adds r0, 0x9
+ str r0, [r3]
+_080C7B06:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7AB8
+
+ thumb_func_start sub_80C7B0C
+sub_80C7B0C: @ 80C7B0C
+ push {lr}
+ ldr r3, _080C7B40 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldr r0, _080C7B44 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldrh r0, [r0, 0x2]
+ cmp r0, r1
+ bne _080C7B48
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7B4C
+ .align 2, 0
+_080C7B40: .4byte gUnknown_2039A00
+_080C7B44: .4byte gUnknown_2023FF4
+_080C7B48:
+ adds r0, r2, 0x7
+ str r0, [r3]
+_080C7B4C:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7B0C
+
+ thumb_func_start sub_80C7B50
+sub_80C7B50: @ 80C7B50
+ push {lr}
+ ldr r3, _080C7B84 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldr r0, _080C7B88 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldrh r0, [r0, 0x2]
+ cmp r0, r1
+ beq _080C7B8C
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C7B90
+ .align 2, 0
+_080C7B84: .4byte gUnknown_2039A00
+_080C7B88: .4byte gUnknown_2023FF4
+_080C7B8C:
+ adds r0, r2, 0x7
+ str r0, [r3]
+_080C7B90:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7B50
+
+ thumb_func_start sub_80C7B94
+sub_80C7B94: @ 80C7B94
+ push {r4,lr}
+ ldr r2, _080C7BE0 @ =gUnknown_2039A00
+ ldr r1, [r2]
+ ldrb r3, [r1, 0x1]
+ ldrb r0, [r1, 0x2]
+ lsls r0, 8
+ orrs r3, r0
+ ldrb r0, [r1, 0x3]
+ lsls r0, 16
+ orrs r3, r0
+ ldrb r0, [r1, 0x4]
+ lsls r0, 24
+ orrs r3, r0
+ ldrb r0, [r3]
+ cmp r0, 0xFF
+ beq _080C7BF0
+ ldr r0, _080C7BE4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r1, [r0, 0x8]
+ adds r4, r2, 0
+_080C7BBE:
+ ldrb r0, [r3]
+ cmp r1, r0
+ bne _080C7BE8
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C7BF6
+ .align 2, 0
+_080C7BE0: .4byte gUnknown_2039A00
+_080C7BE4: .4byte gUnknown_2023FF4
+_080C7BE8:
+ adds r3, 0x1
+ ldrb r0, [r3]
+ cmp r0, 0xFF
+ bne _080C7BBE
+_080C7BF0:
+ ldr r0, [r2]
+ adds r0, 0x9
+ str r0, [r2]
+_080C7BF6:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7B94
+
+ thumb_func_start sub_80C7BFC
+sub_80C7BFC: @ 80C7BFC
+ push {r4,lr}
+ ldr r2, _080C7C38 @ =gUnknown_2039A00
+ ldr r1, [r2]
+ ldrb r3, [r1, 0x1]
+ ldrb r0, [r1, 0x2]
+ lsls r0, 8
+ orrs r3, r0
+ ldrb r0, [r1, 0x3]
+ lsls r0, 16
+ orrs r3, r0
+ ldrb r0, [r1, 0x4]
+ lsls r0, 24
+ orrs r3, r0
+ ldrb r0, [r3]
+ adds r4, r2, 0
+ cmp r0, 0xFF
+ beq _080C7C48
+ ldr r0, _080C7C3C @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r2, [r0, 0x8]
+ adds r1, r4, 0
+_080C7C28:
+ ldrb r0, [r3]
+ cmp r2, r0
+ bne _080C7C40
+ ldr r0, [r1]
+ adds r0, 0x9
+ str r0, [r1]
+ b _080C7C60
+ .align 2, 0
+_080C7C38: .4byte gUnknown_2039A00
+_080C7C3C: .4byte gUnknown_2023FF4
+_080C7C40:
+ adds r3, 0x1
+ ldrb r0, [r3]
+ cmp r0, 0xFF
+ bne _080C7C28
+_080C7C48:
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+_080C7C60:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7BFC
+
+ thumb_func_start sub_80C7C68
+sub_80C7C68: @ 80C7C68
+ push {r4,r5,lr}
+ ldr r2, _080C7CB4 @ =gUnknown_2039A00
+ ldr r1, [r2]
+ ldrb r3, [r1, 0x1]
+ ldrb r0, [r1, 0x2]
+ lsls r0, 8
+ orrs r3, r0
+ ldrb r0, [r1, 0x3]
+ lsls r0, 16
+ orrs r3, r0
+ ldrb r0, [r1, 0x4]
+ lsls r0, 24
+ orrs r3, r0
+ ldrh r0, [r3]
+ ldr r5, _080C7CB8 @ =0x0000ffff
+ cmp r0, r5
+ beq _080C7CC8
+ ldr r0, _080C7CBC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r1, [r0, 0x8]
+ adds r4, r2, 0
+_080C7C94:
+ ldrh r0, [r3]
+ cmp r1, r0
+ bne _080C7CC0
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C7CCE
+ .align 2, 0
+_080C7CB4: .4byte gUnknown_2039A00
+_080C7CB8: .4byte 0x0000ffff
+_080C7CBC: .4byte gUnknown_2023FF4
+_080C7CC0:
+ adds r3, 0x2
+ ldrh r0, [r3]
+ cmp r0, r5
+ bne _080C7C94
+_080C7CC8:
+ ldr r0, [r2]
+ adds r0, 0x9
+ str r0, [r2]
+_080C7CCE:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7C68
+
+ thumb_func_start sub_80C7CD4
+sub_80C7CD4: @ 80C7CD4
+ push {r4,r5,lr}
+ ldr r2, _080C7D10 @ =gUnknown_2039A00
+ ldr r1, [r2]
+ ldrb r3, [r1, 0x1]
+ ldrb r0, [r1, 0x2]
+ lsls r0, 8
+ orrs r3, r0
+ ldrb r0, [r1, 0x3]
+ lsls r0, 16
+ orrs r3, r0
+ ldrb r0, [r1, 0x4]
+ lsls r0, 24
+ orrs r3, r0
+ ldrh r0, [r3]
+ ldr r4, _080C7D14 @ =0x0000ffff
+ adds r5, r2, 0
+ cmp r0, r4
+ beq _080C7D24
+ ldr r0, _080C7D18 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r2, [r0, 0x8]
+ adds r1, r5, 0
+_080C7D02:
+ ldrh r0, [r3]
+ cmp r2, r0
+ bne _080C7D1C
+ ldr r0, [r1]
+ adds r0, 0x9
+ str r0, [r1]
+ b _080C7D3C
+ .align 2, 0
+_080C7D10: .4byte gUnknown_2039A00
+_080C7D14: .4byte 0x0000ffff
+_080C7D18: .4byte gUnknown_2023FF4
+_080C7D1C:
+ adds r3, 0x2
+ ldrh r0, [r3]
+ cmp r0, r4
+ bne _080C7D02
+_080C7D24:
+ ldr r2, [r5]
+ ldrb r1, [r2, 0x5]
+ ldrb r0, [r2, 0x6]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+_080C7D3C:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7CD4
+
+ thumb_func_start sub_80C7D44
+sub_80C7D44: @ 80C7D44
+ push {r4,r5,lr}
+ movs r3, 0
+ ldr r4, _080C7D84 @ =gUnknown_2039A00
+ ldr r1, _080C7D88 @ =gUnknown_2023BE4
+ ldr r0, _080C7D8C @ =gUnknown_2023D6B
+ ldrb r2, [r0]
+ ldr r5, _080C7D90 @ =gUnknown_8250C04
+ movs r0, 0x58
+ muls r0, r2
+ adds r1, 0xC
+ adds r2, r0, r1
+_080C7D5A:
+ ldrh r0, [r2]
+ cmp r0, 0
+ beq _080C7D6E
+ lsls r1, r0, 1
+ adds r1, r0
+ lsls r1, 2
+ adds r1, r5
+ ldrb r0, [r1, 0x1]
+ cmp r0, 0
+ bne _080C7D76
+_080C7D6E:
+ adds r2, 0x2
+ adds r3, 0x1
+ cmp r3, 0x3
+ ble _080C7D5A
+_080C7D76:
+ cmp r3, 0x4
+ bne _080C7D94
+ ldr r0, [r4]
+ adds r0, 0x5
+ str r0, [r4]
+ b _080C7DAC
+ .align 2, 0
+_080C7D84: .4byte gUnknown_2039A00
+_080C7D88: .4byte gUnknown_2023BE4
+_080C7D8C: .4byte gUnknown_2023D6B
+_080C7D90: .4byte gUnknown_8250C04
+_080C7D94:
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+_080C7DAC:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7D44
+
+ thumb_func_start sub_80C7DB4
+sub_80C7DB4: @ 80C7DB4
+ push {r4,r5,lr}
+ movs r3, 0
+ ldr r4, _080C7DF4 @ =gUnknown_2039A00
+ ldr r1, _080C7DF8 @ =gUnknown_2023BE4
+ ldr r0, _080C7DFC @ =gUnknown_2023D6B
+ ldrb r2, [r0]
+ ldr r5, _080C7E00 @ =gUnknown_8250C04
+ movs r0, 0x58
+ muls r0, r2
+ adds r1, 0xC
+ adds r2, r0, r1
+_080C7DCA:
+ ldrh r0, [r2]
+ cmp r0, 0
+ beq _080C7DDE
+ lsls r1, r0, 1
+ adds r1, r0
+ lsls r1, 2
+ adds r1, r5
+ ldrb r0, [r1, 0x1]
+ cmp r0, 0
+ bne _080C7DE6
+_080C7DDE:
+ adds r2, 0x2
+ adds r3, 0x1
+ cmp r3, 0x3
+ ble _080C7DCA
+_080C7DE6:
+ cmp r3, 0x4
+ beq _080C7E04
+ ldr r0, [r4]
+ adds r0, 0x5
+ str r0, [r4]
+ b _080C7E1C
+ .align 2, 0
+_080C7DF4: .4byte gUnknown_2039A00
+_080C7DF8: .4byte gUnknown_2023BE4
+_080C7DFC: .4byte gUnknown_2023D6B
+_080C7E00: .4byte gUnknown_8250C04
+_080C7E04:
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+_080C7E1C:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C7DB4
+
+ thumb_func_start sub_80C7E24
+sub_80C7E24: @ 80C7E24
+ ldr r0, _080C7E3C @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ ldr r0, _080C7E40 @ =gUnknown_3004F90
+ ldrb r0, [r0, 0x13]
+ str r0, [r1, 0x8]
+ ldr r1, _080C7E44 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C7E3C: .4byte gUnknown_2023FF4
+_080C7E40: .4byte gUnknown_3004F90
+_080C7E44: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C7E24
+
+ thumb_func_start sub_80C7E48
+sub_80C7E48: @ 80C7E48
+ push {r4,lr}
+ ldr r1, _080C7E60 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ ldrb r0, [r0, 0x1]
+ adds r4, r1, 0
+ cmp r0, 0x4
+ bhi _080C7F22
+ lsls r0, 2
+ ldr r1, _080C7E64 @ =_080C7E68
+ adds r0, r1
+ ldr r0, [r0]
+ mov pc, r0
+ .align 2, 0
+_080C7E60: .4byte gUnknown_2039A00
+_080C7E64: .4byte _080C7E68
+ .align 2, 0
+_080C7E68:
+ .4byte _080C7EA0
+ .4byte _080C7E7C
+ .4byte _080C7EE8
+ .4byte _080C7EC4
+ .4byte _080C7F0C
+_080C7E7C:
+ ldr r0, _080C7E94 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C7E98 @ =gUnknown_2023BE4
+ ldr r0, _080C7E9C @ =gUnknown_2023D6B
+ ldrb r1, [r0]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r2
+ adds r0, 0x21
+ ldrb r0, [r0]
+ b _080C7F20
+ .align 2, 0
+_080C7E94: .4byte gUnknown_2023FF4
+_080C7E98: .4byte gUnknown_2023BE4
+_080C7E9C: .4byte gUnknown_2023D6B
+_080C7EA0:
+ ldr r0, _080C7EB8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C7EBC @ =gUnknown_2023BE4
+ ldr r0, _080C7EC0 @ =gUnknown_2023D6C
+ ldrb r1, [r0]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r2
+ adds r0, 0x21
+ ldrb r0, [r0]
+ b _080C7F20
+ .align 2, 0
+_080C7EB8: .4byte gUnknown_2023FF4
+_080C7EBC: .4byte gUnknown_2023BE4
+_080C7EC0: .4byte gUnknown_2023D6C
+_080C7EC4:
+ ldr r0, _080C7EDC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C7EE0 @ =gUnknown_2023BE4
+ ldr r0, _080C7EE4 @ =gUnknown_2023D6B
+ ldrb r1, [r0]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r2
+ adds r0, 0x22
+ ldrb r0, [r0]
+ b _080C7F20
+ .align 2, 0
+_080C7EDC: .4byte gUnknown_2023FF4
+_080C7EE0: .4byte gUnknown_2023BE4
+_080C7EE4: .4byte gUnknown_2023D6B
+_080C7EE8:
+ ldr r0, _080C7F00 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C7F04 @ =gUnknown_2023BE4
+ ldr r0, _080C7F08 @ =gUnknown_2023D6C
+ ldrb r1, [r0]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r2
+ adds r0, 0x22
+ ldrb r0, [r0]
+ b _080C7F20
+ .align 2, 0
+_080C7F00: .4byte gUnknown_2023FF4
+_080C7F04: .4byte gUnknown_2023BE4
+_080C7F08: .4byte gUnknown_2023D6C
+_080C7F0C:
+ ldr r0, _080C7F30 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C7F34 @ =gUnknown_8250C04
+ ldrh r1, [r3, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x2]
+_080C7F20:
+ str r0, [r3, 0x8]
+_080C7F22:
+ ldr r0, [r4]
+ adds r0, 0x2
+ str r0, [r4]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C7F30: .4byte gUnknown_2023FF4
+_080C7F34: .4byte gUnknown_8250C04
+ thumb_func_end sub_80C7E48
+
+ thumb_func_start sub_80C7F38
+sub_80C7F38: @ 80C7F38
+ ldr r0, _080C7F58 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C7F5C @ =gUnknown_8250C04
+ ldrh r1, [r3, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x1]
+ str r0, [r3, 0x8]
+ ldr r1, _080C7F60 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C7F58: .4byte gUnknown_2023FF4
+_080C7F5C: .4byte gUnknown_8250C04
+_080C7F60: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C7F38
+
+ thumb_func_start sub_80C7F64
+sub_80C7F64: @ 80C7F64
+ push {r4-r7,lr}
+ mov r7, r10
+ mov r6, r9
+ mov r5, r8
+ push {r5-r7}
+ sub sp, 0x14
+ movs r3, 0
+ ldr r0, _080C80A4 @ =gUnknown_83F571C
+ ldrh r1, [r0]
+ ldr r5, _080C80A8 @ =0x0000ffff
+ ldr r6, _080C80AC @ =gUnknown_8250C04
+ ldr r2, _080C80B0 @ =gUnknown_2023FF4
+ cmp r1, r5
+ beq _080C7FA2
+ ldr r0, [r2]
+ ldr r0, [r0, 0x14]
+ ldrh r1, [r0, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r6
+ ldrb r4, [r0]
+ ldr r1, _080C80A4 @ =gUnknown_83F571C
+_080C7F92:
+ ldrh r0, [r1]
+ cmp r4, r0
+ beq _080C7FA2
+ adds r1, 0x2
+ adds r3, 0x1
+ ldrh r0, [r1]
+ cmp r0, r5
+ bne _080C7F92
+_080C7FA2:
+ ldr r0, [r2]
+ ldr r0, [r0, 0x14]
+ ldrh r1, [r0, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r6
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bhi _080C7FB8
+ b _080C8142
+_080C7FB8:
+ lsls r0, r3, 1
+ ldr r1, _080C80A4 @ =gUnknown_83F571C
+ adds r0, r1
+ ldrh r3, [r0]
+ ldr r0, _080C80A8 @ =0x0000ffff
+ cmp r3, r0
+ beq _080C7FC8
+ b _080C8142
+_080C7FC8:
+ ldr r0, _080C80B4 @ =gUnknown_2023F50
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, _080C80B8 @ =gUnknown_2023FE8
+ ldr r0, [r0]
+ strb r1, [r0, 0x13]
+ ldr r0, _080C80BC @ =gUnknown_2023FC4
+ movs r2, 0x1
+ strb r2, [r0, 0xE]
+ ldr r0, _080C80C0 @ =gUnknown_2023DCC
+ strb r1, [r0]
+ ldr r0, _080C80C4 @ =gUnknown_2023D71
+ strb r2, [r0]
+ movs r6, 0
+ mov r9, r3
+ ldr r2, _080C80A4 @ =gUnknown_83F571C
+ ldrh r2, [r2]
+ str r2, [sp, 0x10]
+_080C7FEC:
+ movs r3, 0
+ ldr r5, _080C80C8 @ =gUnknown_2023BE4
+ lsls r4, r6, 1
+ ldr r7, _080C80CC @ =gUnknown_2023D6B
+ lsls r0, r6, 2
+ mov r8, r0
+ adds r1, r6, 0x1
+ mov r10, r1
+ ldr r2, [sp, 0x10]
+ cmp r2, r9
+ beq _080C8030
+ ldr r2, _080C80AC @ =gUnknown_8250C04
+ ldrb r1, [r7]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r4, r0
+ adds r1, r5, 0
+ adds r1, 0xC
+ adds r0, r1
+ ldrh r1, [r0]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r2, [r0]
+ ldr r1, _080C80A4 @ =gUnknown_83F571C
+_080C8020:
+ ldrh r0, [r1]
+ cmp r2, r0
+ beq _080C8030
+ adds r1, 0x2
+ adds r3, 0x1
+ ldrh r0, [r1]
+ cmp r0, r9
+ bne _080C8020
+_080C8030:
+ ldrb r1, [r7]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r4, r0
+ adds r1, r5, 0
+ adds r1, 0xC
+ adds r1, r0, r1
+ ldrh r0, [r1]
+ cmp r0, 0
+ beq _080C80DC
+ lsls r0, r3, 1
+ ldr r2, _080C80A4 @ =gUnknown_83F571C
+ adds r0, r2
+ ldrh r0, [r0]
+ cmp r0, r9
+ bne _080C80DC
+ ldr r0, _080C80AC @ =gUnknown_8250C04
+ ldrh r2, [r1]
+ lsls r1, r2, 1
+ adds r1, r2
+ lsls r1, 2
+ adds r1, r0
+ ldrb r0, [r1, 0x1]
+ cmp r0, 0x1
+ bls _080C80DC
+ ldr r5, _080C80D0 @ =gUnknown_2023D4A
+ strh r2, [r5]
+ ldrb r0, [r7]
+ ldr r4, _080C80D4 @ =gUnknown_2023D6C
+ ldrb r1, [r4]
+ bl sub_801E68C
+ ldrh r0, [r5]
+ ldrb r1, [r7]
+ ldrb r2, [r4]
+ bl sub_801EDF4
+ mov r4, sp
+ add r4, r8
+ ldr r2, _080C80D8 @ =gUnknown_2023D50
+ ldr r0, _080C80B0 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ adds r0, 0x18
+ adds r0, r6
+ ldrb r1, [r0]
+ ldr r0, [r2]
+ muls r0, r1
+ movs r1, 0x64
+ bl __divsi3
+ str r0, [r4]
+ cmp r0, 0
+ bne _080C80E4
+ movs r0, 0x1
+ str r0, [r4]
+ b _080C80E4
+ .align 2, 0
+_080C80A4: .4byte gUnknown_83F571C
+_080C80A8: .4byte 0x0000ffff
+_080C80AC: .4byte gUnknown_8250C04
+_080C80B0: .4byte gUnknown_2023FF4
+_080C80B4: .4byte gUnknown_2023F50
+_080C80B8: .4byte gUnknown_2023FE8
+_080C80BC: .4byte gUnknown_2023FC4
+_080C80C0: .4byte gUnknown_2023DCC
+_080C80C4: .4byte gUnknown_2023D71
+_080C80C8: .4byte gUnknown_2023BE4
+_080C80CC: .4byte gUnknown_2023D6B
+_080C80D0: .4byte gUnknown_2023D4A
+_080C80D4: .4byte gUnknown_2023D6C
+_080C80D8: .4byte gUnknown_2023D50
+_080C80DC:
+ mov r1, sp
+ add r1, r8
+ movs r0, 0
+ str r0, [r1]
+_080C80E4:
+ mov r6, r10
+ cmp r6, 0x3
+ bgt _080C80EC
+ b _080C7FEC
+_080C80EC:
+ movs r6, 0
+ ldr r2, _080C8130 @ =gUnknown_2023FF4
+ ldr r0, [r2]
+ ldr r0, [r0, 0x14]
+ ldrb r0, [r0, 0x1]
+ lsls r0, 2
+ add r0, sp
+ ldr r1, [sp]
+ ldr r0, [r0]
+ ldr r5, _080C8134 @ =gUnknown_2039A00
+ cmp r1, r0
+ bgt _080C8122
+ adds r4, r2, 0
+ mov r3, sp
+_080C8108:
+ adds r3, 0x4
+ adds r6, 0x1
+ cmp r6, 0x3
+ bgt _080C8122
+ ldr r0, [r4]
+ ldr r0, [r0, 0x14]
+ ldrb r0, [r0, 0x1]
+ lsls r0, 2
+ add r0, sp
+ ldr r1, [r3]
+ ldr r0, [r0]
+ cmp r1, r0
+ ble _080C8108
+_080C8122:
+ cmp r6, 0x4
+ bne _080C8138
+ ldr r0, [r2]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x2
+ str r0, [r1, 0x8]
+ b _080C814C
+ .align 2, 0
+_080C8130: .4byte gUnknown_2023FF4
+_080C8134: .4byte gUnknown_2039A00
+_080C8138:
+ ldr r0, [r2]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x1
+ str r0, [r1, 0x8]
+ b _080C814C
+_080C8142:
+ ldr r0, [r2]
+ ldr r1, [r0, 0x14]
+ movs r0, 0
+ str r0, [r1, 0x8]
+ ldr r5, _080C8164 @ =gUnknown_2039A00
+_080C814C:
+ ldr r0, [r5]
+ adds r0, 0x1
+ str r0, [r5]
+ add sp, 0x14
+ pop {r3-r5}
+ mov r8, r3
+ mov r9, r4
+ mov r10, r5
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C8164: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C7F64
+
+ thumb_func_start sub_80C8168
+sub_80C8168: @ 80C8168
+ push {lr}
+ ldr r0, _080C8184 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r3, r0, 0
+ cmp r1, 0x1
+ bne _080C8194
+ ldr r0, _080C8188 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r1, _080C818C @ =gUnknown_2023D98
+ ldr r0, _080C8190 @ =gUnknown_2023D6B
+ b _080C819E
+ .align 2, 0
+_080C8184: .4byte gUnknown_2039A00
+_080C8188: .4byte gUnknown_2023FF4
+_080C818C: .4byte gUnknown_2023D98
+_080C8190: .4byte gUnknown_2023D6B
+_080C8194:
+ ldr r0, _080C81B4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r1, _080C81B8 @ =gUnknown_2023D98
+ ldr r0, _080C81BC @ =gUnknown_2023D6C
+_080C819E:
+ ldrb r0, [r0]
+ lsls r0, 1
+ adds r0, r1
+ ldrh r0, [r0]
+ str r0, [r2, 0x8]
+ ldr r0, [r3]
+ adds r0, 0x2
+ str r0, [r3]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C81B4: .4byte gUnknown_2023FF4
+_080C81B8: .4byte gUnknown_2023D98
+_080C81BC: .4byte gUnknown_2023D6C
+ thumb_func_end sub_80C8168
+
+ thumb_func_start sub_80C81C0
+sub_80C81C0: @ 80C81C0
+ push {lr}
+ ldr r3, _080C81EC @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldr r0, _080C81F0 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0x8]
+ cmp r1, r0
+ bne _080C81F4
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C81F8
+ .align 2, 0
+_080C81EC: .4byte gUnknown_2039A00
+_080C81F0: .4byte gUnknown_2023FF4
+_080C81F4:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C81F8:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C81C0
+
+ thumb_func_start sub_80C81FC
+sub_80C81FC: @ 80C81FC
+ push {lr}
+ ldr r3, _080C8228 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldr r0, _080C822C @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldr r0, [r0, 0x8]
+ cmp r1, r0
+ beq _080C8230
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C8234
+ .align 2, 0
+_080C8228: .4byte gUnknown_2039A00
+_080C822C: .4byte gUnknown_2023FF4
+_080C8230:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C8234:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C81FC
+
+ thumb_func_start sub_80C8238
+sub_80C8238: @ 80C8238
+ push {lr}
+ ldr r0, _080C8270 @ =gUnknown_2023D6B
+ ldrb r0, [r0]
+ ldr r1, _080C8274 @ =gUnknown_2023D6C
+ ldrb r1, [r1]
+ movs r2, 0x1
+ bl sub_8014CD8
+ ldr r3, _080C8278 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ lsls r0, 24
+ lsrs r0, 24
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ bne _080C827C
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C8280
+ .align 2, 0
+_080C8270: .4byte gUnknown_2023D6B
+_080C8274: .4byte gUnknown_2023D6C
+_080C8278: .4byte gUnknown_2039A00
+_080C827C:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C8280:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8238
+
+ thumb_func_start sub_80C8284
+sub_80C8284: @ 80C8284
+ push {lr}
+ ldr r0, _080C82BC @ =gUnknown_2023D6B
+ ldrb r0, [r0]
+ ldr r1, _080C82C0 @ =gUnknown_2023D6C
+ ldrb r1, [r1]
+ movs r2, 0x1
+ bl sub_8014CD8
+ ldr r3, _080C82C4 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ lsls r0, 24
+ lsrs r0, 24
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ beq _080C82C8
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C82CC
+ .align 2, 0
+_080C82BC: .4byte gUnknown_2023D6B
+_080C82C0: .4byte gUnknown_2023D6C
+_080C82C4: .4byte gUnknown_2039A00
+_080C82C8:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C82CC:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8284
+
+ thumb_func_start nullsub_64
+nullsub_64: @ 80C82D0
+ bx lr
+ thumb_func_end nullsub_64
+
+ thumb_func_start nullsub_65
+nullsub_65: @ 80C82D4
+ bx lr
+ thumb_func_end nullsub_65
+
+ thumb_func_start sub_80C82D8
+sub_80C82D8: @ 80C82D8
+ push {r4-r7,lr}
+ mov r7, r8
+ push {r7}
+ ldr r0, _080C82F8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0
+ str r0, [r1, 0x8]
+ ldr r0, _080C82FC @ =gUnknown_2039A00
+ ldr r0, [r0]
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bne _080C8304
+ ldr r0, _080C8300 @ =gUnknown_2023D6B
+ b _080C8306
+ .align 2, 0
+_080C82F8: .4byte gUnknown_2023FF4
+_080C82FC: .4byte gUnknown_2039A00
+_080C8300: .4byte gUnknown_2023D6B
+_080C8304:
+ ldr r0, _080C834C @ =gUnknown_2023D6C
+_080C8306:
+ ldrb r5, [r0]
+ adds r0, r5, 0
+ bl sub_80751C4
+ lsls r0, 24
+ ldr r1, _080C8350 @ =gUnknown_202402C
+ mov r8, r1
+ cmp r0, 0
+ bne _080C831C
+ ldr r0, _080C8354 @ =gUnknown_2024284
+ mov r8, r0
+_080C831C:
+ ldr r0, _080C8358 @ =gUnknown_2022B4C
+ ldr r0, [r0]
+ movs r1, 0x1
+ ands r0, r1
+ cmp r0, 0
+ beq _080C8360
+ ldr r4, _080C835C @ =gUnknown_2023BCE
+ lsls r0, r5, 1
+ adds r0, r4
+ ldrb r7, [r0]
+ adds r0, r5, 0
+ bl sub_80751D8
+ movs r1, 0x2
+ eors r0, r1
+ lsls r0, 24
+ lsrs r0, 24
+ bl sub_80751E8
+ lsls r0, 24
+ lsrs r0, 23
+ adds r0, r4
+ ldrb r6, [r0]
+ b _080C836A
+ .align 2, 0
+_080C834C: .4byte gUnknown_2023D6C
+_080C8350: .4byte gUnknown_202402C
+_080C8354: .4byte gUnknown_2024284
+_080C8358: .4byte gUnknown_2022B4C
+_080C835C: .4byte gUnknown_2023BCE
+_080C8360:
+ ldr r1, _080C83C8 @ =gUnknown_2023BCE
+ lsls r0, r5, 1
+ adds r0, r1
+ ldrb r6, [r0]
+ adds r7, r6, 0
+_080C836A:
+ movs r5, 0
+_080C836C:
+ cmp r5, r7
+ beq _080C83B0
+ cmp r5, r6
+ beq _080C83B0
+ movs r0, 0x64
+ muls r0, r5
+ mov r1, r8
+ adds r4, r1, r0
+ adds r0, r4, 0
+ movs r1, 0x39
+ bl sub_803FBE8
+ cmp r0, 0
+ beq _080C83B0
+ adds r0, r4, 0
+ movs r1, 0x41
+ bl sub_803FBE8
+ cmp r0, 0
+ beq _080C83B0
+ adds r0, r4, 0
+ movs r1, 0x41
+ bl sub_803FBE8
+ movs r1, 0xCE
+ lsls r1, 1
+ cmp r0, r1
+ beq _080C83B0
+ ldr r0, _080C83CC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ ldr r0, [r1, 0x8]
+ adds r0, 0x1
+ str r0, [r1, 0x8]
+_080C83B0:
+ adds r5, 0x1
+ cmp r5, 0x5
+ ble _080C836C
+ ldr r1, _080C83D0 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x2
+ str r0, [r1]
+ pop {r3}
+ mov r8, r3
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C83C8: .4byte gUnknown_2023BCE
+_080C83CC: .4byte gUnknown_2023FF4
+_080C83D0: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C82D8
+
+ thumb_func_start sub_80C83D4
+sub_80C83D4: @ 80C83D4
+ ldr r0, _080C83E8 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ ldrh r0, [r1, 0x2]
+ str r0, [r1, 0x8]
+ ldr r1, _080C83EC @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C83E8: .4byte gUnknown_2023FF4
+_080C83EC: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C83D4
+
+ thumb_func_start sub_80C83F0
+sub_80C83F0: @ 80C83F0
+ ldr r0, _080C8410 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C8414 @ =gUnknown_8250C04
+ ldrh r1, [r3, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0]
+ str r0, [r3, 0x8]
+ ldr r1, _080C8418 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C8410: .4byte gUnknown_2023FF4
+_080C8414: .4byte gUnknown_8250C04
+_080C8418: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C83F0
+
+ thumb_func_start sub_80C841C
+sub_80C841C: @ 80C841C
+ push {r4-r7,lr}
+ ldr r0, _080C842C @ =gUnknown_2039A00
+ ldr r0, [r0]
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bne _080C8434
+ ldr r0, _080C8430 @ =gUnknown_2023D6B
+ b _080C8436
+ .align 2, 0
+_080C842C: .4byte gUnknown_2039A00
+_080C8430: .4byte gUnknown_2023D6B
+_080C8434:
+ ldr r0, _080C8468 @ =gUnknown_2023D6C
+_080C8436:
+ ldrb r4, [r0]
+ adds r0, r4, 0
+ bl sub_80751C4
+ lsls r0, 24
+ cmp r0, 0
+ bne _080C8506
+ adds r0, r4, 0
+ bl sub_80751D8
+ movs r7, 0x1
+ adds r1, r7, 0
+ ands r1, r0
+ ldr r6, _080C846C @ =gUnknown_2023FF4
+ ldr r3, [r6]
+ ldr r0, [r3, 0x18]
+ adds r0, 0x20
+ adds r2, r0, r1
+ ldrb r0, [r2]
+ cmp r0, 0
+ beq _080C8470
+ ldr r1, [r3, 0x14]
+ str r0, [r1, 0x8]
+ b _080C851A
+ .align 2, 0
+_080C8468: .4byte gUnknown_2023D6C
+_080C846C: .4byte gUnknown_2023FF4
+_080C8470:
+ ldr r1, _080C84A0 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r5, r0, r1
+ adds r0, r5, 0
+ adds r0, 0x20
+ ldrb r0, [r0]
+ adds r2, r1, 0
+ cmp r0, 0x17
+ beq _080C848C
+ cmp r0, 0x2A
+ beq _080C848C
+ cmp r0, 0x47
+ bne _080C84A8
+_080C848C:
+ ldr r0, _080C84A4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x58
+ muls r0, r4
+ adds r0, r2
+ adds r0, 0x20
+ ldrb r0, [r0]
+ str r0, [r1, 0x8]
+ b _080C851A
+ .align 2, 0
+_080C84A0: .4byte gUnknown_2023BE4
+_080C84A4: .4byte gUnknown_2023FF4
+_080C84A8:
+ ldr r4, _080C84E0 @ =gUnknown_8254784
+ ldrh r0, [r5]
+ lsls r1, r0, 3
+ subs r1, r0
+ lsls r1, 2
+ adds r2, r1, r4
+ ldrb r0, [r2, 0x16]
+ cmp r0, 0
+ beq _080C84FE
+ ldrb r0, [r2, 0x17]
+ cmp r0, 0
+ beq _080C84F6
+ bl sub_8044EC8
+ adds r1, r7, 0
+ ands r1, r0
+ cmp r1, 0
+ beq _080C84E4
+ ldr r0, [r6]
+ ldr r2, [r0, 0x14]
+ ldrh r1, [r5]
+ lsls r0, r1, 3
+ subs r0, r1
+ lsls r0, 2
+ adds r0, r4
+ ldrb r0, [r0, 0x16]
+ b _080C8518
+ .align 2, 0
+_080C84E0: .4byte gUnknown_8254784
+_080C84E4:
+ ldr r0, [r6]
+ ldr r2, [r0, 0x14]
+ ldrh r1, [r5]
+ lsls r0, r1, 3
+ subs r0, r1
+ lsls r0, 2
+ adds r0, r4
+ ldrb r0, [r0, 0x17]
+ b _080C8518
+_080C84F6:
+ ldr r1, [r3, 0x14]
+ ldrb r0, [r2, 0x16]
+ str r0, [r1, 0x8]
+ b _080C851A
+_080C84FE:
+ ldr r1, [r3, 0x14]
+ ldrb r0, [r2, 0x17]
+ str r0, [r1, 0x8]
+ b _080C851A
+_080C8506:
+ ldr r0, _080C8528 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r1, _080C852C @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r0, r1
+ adds r0, 0x20
+ ldrb r0, [r0]
+_080C8518:
+ str r0, [r2, 0x8]
+_080C851A:
+ ldr r1, _080C8530 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x2
+ str r0, [r1]
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C8528: .4byte gUnknown_2023FF4
+_080C852C: .4byte gUnknown_2023BE4
+_080C8530: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C841C
+
+ thumb_func_start sub_80C8534
+sub_80C8534: @ 80C8534
+ push {r4-r7,lr}
+ mov r7, r8
+ push {r7}
+ ldr r0, _080C85F0 @ =gUnknown_2023F50
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, _080C85F4 @ =gUnknown_2023FE8
+ ldr r0, [r0]
+ strb r1, [r0, 0x13]
+ ldr r0, _080C85F8 @ =gUnknown_2023FC4
+ movs r3, 0
+ movs r2, 0x1
+ strb r2, [r0, 0xE]
+ ldr r0, _080C85FC @ =gUnknown_2023DCC
+ strb r1, [r0]
+ ldr r0, _080C8600 @ =gUnknown_2023D71
+ strb r2, [r0]
+ ldr r0, _080C8604 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ str r3, [r0, 0x8]
+ movs r5, 0
+ ldr r4, _080C8608 @ =gUnknown_2023D50
+ ldr r7, _080C860C @ =gUnknown_2023D4A
+ ldr r0, _080C8610 @ =gUnknown_2023BF0
+ mov r8, r0
+ ldr r6, _080C8614 @ =gUnknown_2023D6B
+_080C856A:
+ movs r0, 0x28
+ str r0, [r4]
+ lsls r1, r5, 1
+ ldrb r2, [r6]
+ movs r0, 0x58
+ muls r0, r2
+ adds r1, r0
+ add r1, r8
+ ldrh r0, [r1]
+ strh r0, [r7]
+ lsls r0, 16
+ cmp r0, 0
+ beq _080C85D8
+ ldrh r0, [r7]
+ ldrb r1, [r6]
+ ldr r2, _080C8618 @ =gUnknown_2023D6C
+ ldrb r2, [r2]
+ bl sub_801EDF4
+ ldr r0, [r4]
+ cmp r0, 0x78
+ bne _080C859A
+ movs r0, 0x50
+ str r0, [r4]
+_080C859A:
+ ldr r0, [r4]
+ cmp r0, 0xF0
+ bne _080C85A4
+ movs r0, 0xA0
+ str r0, [r4]
+_080C85A4:
+ ldr r0, [r4]
+ cmp r0, 0x1E
+ bne _080C85AE
+ movs r0, 0x14
+ str r0, [r4]
+_080C85AE:
+ ldr r0, [r4]
+ cmp r0, 0xF
+ bne _080C85B8
+ movs r0, 0xA
+ str r0, [r4]
+_080C85B8:
+ ldr r0, _080C85FC @ =gUnknown_2023DCC
+ ldrb r1, [r0]
+ movs r0, 0x8
+ ands r0, r1
+ cmp r0, 0
+ beq _080C85C8
+ movs r0, 0
+ str r0, [r4]
+_080C85C8:
+ ldr r0, _080C8604 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r0, [r2, 0x8]
+ ldr r1, [r4]
+ cmp r0, r1
+ bcs _080C85D8
+ str r1, [r2, 0x8]
+_080C85D8:
+ adds r5, 0x1
+ cmp r5, 0x3
+ ble _080C856A
+ ldr r1, _080C861C @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ pop {r3}
+ mov r8, r3
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C85F0: .4byte gUnknown_2023F50
+_080C85F4: .4byte gUnknown_2023FE8
+_080C85F8: .4byte gUnknown_2023FC4
+_080C85FC: .4byte gUnknown_2023DCC
+_080C8600: .4byte gUnknown_2023D71
+_080C8604: .4byte gUnknown_2023FF4
+_080C8608: .4byte gUnknown_2023D50
+_080C860C: .4byte gUnknown_2023D4A
+_080C8610: .4byte gUnknown_2023BF0
+_080C8614: .4byte gUnknown_2023D6B
+_080C8618: .4byte gUnknown_2023D6C
+_080C861C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C8534
+
+ thumb_func_start sub_80C8620
+sub_80C8620: @ 80C8620
+ push {r4,r5,lr}
+ ldr r0, _080C86B8 @ =gUnknown_2023F50
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, _080C86BC @ =gUnknown_2023FE8
+ ldr r0, [r0]
+ strb r1, [r0, 0x13]
+ ldr r0, _080C86C0 @ =gUnknown_2023FC4
+ movs r2, 0x1
+ strb r2, [r0, 0xE]
+ ldr r5, _080C86C4 @ =gUnknown_2023DCC
+ strb r1, [r5]
+ ldr r0, _080C86C8 @ =gUnknown_2023D71
+ strb r2, [r0]
+ ldr r4, _080C86CC @ =gUnknown_2023D50
+ movs r0, 0x28
+ str r0, [r4]
+ ldr r1, _080C86D0 @ =gUnknown_2023D4A
+ ldr r0, _080C86D4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldrh r0, [r0, 0x2]
+ strh r0, [r1]
+ ldrh r0, [r1]
+ ldr r1, _080C86D8 @ =gUnknown_2023D6B
+ ldrb r1, [r1]
+ ldr r2, _080C86DC @ =gUnknown_2023D6C
+ ldrb r2, [r2]
+ bl sub_801EDF4
+ ldr r0, [r4]
+ cmp r0, 0x78
+ bne _080C8666
+ movs r0, 0x50
+ str r0, [r4]
+_080C8666:
+ ldr r0, [r4]
+ cmp r0, 0xF0
+ bne _080C8670
+ movs r0, 0xA0
+ str r0, [r4]
+_080C8670:
+ ldr r0, [r4]
+ cmp r0, 0x1E
+ bne _080C867A
+ movs r0, 0x14
+ str r0, [r4]
+_080C867A:
+ ldr r0, [r4]
+ cmp r0, 0xF
+ bne _080C8684
+ movs r0, 0xA
+ str r0, [r4]
+_080C8684:
+ ldrb r1, [r5]
+ movs r0, 0x8
+ ands r0, r1
+ cmp r0, 0
+ beq _080C8692
+ movs r0, 0
+ str r0, [r4]
+_080C8692:
+ ldrb r0, [r4]
+ ldr r3, _080C86E0 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ bne _080C86E4
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C86E8
+ .align 2, 0
+_080C86B8: .4byte gUnknown_2023F50
+_080C86BC: .4byte gUnknown_2023FE8
+_080C86C0: .4byte gUnknown_2023FC4
+_080C86C4: .4byte gUnknown_2023DCC
+_080C86C8: .4byte gUnknown_2023D71
+_080C86CC: .4byte gUnknown_2023D50
+_080C86D0: .4byte gUnknown_2023D4A
+_080C86D4: .4byte gUnknown_2023FF4
+_080C86D8: .4byte gUnknown_2023D6B
+_080C86DC: .4byte gUnknown_2023D6C
+_080C86E0: .4byte gUnknown_2039A00
+_080C86E4:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C86E8:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8620
+
+ thumb_func_start nullsub_66
+nullsub_66: @ 80C86F0
+ bx lr
+ thumb_func_end nullsub_66
+
+ thumb_func_start nullsub_67
+nullsub_67: @ 80C86F4
+ bx lr
+ thumb_func_end nullsub_67
+
+ thumb_func_start sub_80C86F8
+sub_80C86F8: @ 80C86F8
+ push {r4-r7,lr}
+ mov r7, r10
+ mov r6, r9
+ mov r5, r8
+ push {r5-r7}
+ ldr r0, _080C8710 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ cmp r1, 0x1
+ bne _080C8738
+ ldr r1, _080C8714 @ =gUnknown_202402C
+ b _080C873A
+ .align 2, 0
+_080C8710: .4byte gUnknown_2039A00
+_080C8714: .4byte gUnknown_202402C
+_080C8718:
+ ldr r3, _080C8734 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x6]
+ ldrb r0, [r2, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C87A6
+ .align 2, 0
+_080C8734: .4byte gUnknown_2039A00
+_080C8738:
+ ldr r1, _080C87B4 @ =gUnknown_2024284
+_080C873A:
+ mov r9, r1
+ ldr r1, [r0]
+ ldrb r7, [r1, 0x2]
+ ldrb r0, [r1, 0x3]
+ lsls r0, 8
+ orrs r7, r0
+ ldrb r0, [r1, 0x4]
+ lsls r0, 16
+ orrs r7, r0
+ ldrb r0, [r1, 0x5]
+ lsls r0, 24
+ orrs r7, r0
+ movs r0, 0
+ mov r8, r0
+ movs r1, 0xCE
+ lsls r1, 1
+ mov r10, r1
+_080C875C:
+ movs r0, 0x64
+ mov r4, r8
+ muls r4, r0
+ add r4, r9
+ adds r0, r4, 0
+ movs r1, 0xB
+ bl sub_803FBE8
+ lsls r0, 16
+ lsrs r5, r0, 16
+ adds r0, r4, 0
+ movs r1, 0x39
+ bl sub_803FBE8
+ lsls r0, 16
+ lsrs r6, r0, 16
+ adds r0, r4, 0
+ movs r1, 0x37
+ bl sub_803FBE8
+ cmp r5, 0
+ beq _080C8794
+ cmp r5, r10
+ beq _080C8794
+ cmp r6, 0
+ beq _080C8794
+ cmp r0, r7
+ beq _080C8718
+_080C8794:
+ movs r0, 0x1
+ add r8, r0
+ mov r1, r8
+ cmp r1, 0x5
+ ble _080C875C
+ ldr r1, _080C87B8 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0xA
+ str r0, [r1]
+_080C87A6:
+ pop {r3-r5}
+ mov r8, r3
+ mov r9, r4
+ mov r10, r5
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C87B4: .4byte gUnknown_2024284
+_080C87B8: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C86F8
+
+ thumb_func_start sub_80C87BC
+sub_80C87BC: @ 80C87BC
+ push {r4-r7,lr}
+ mov r7, r10
+ mov r6, r9
+ mov r5, r8
+ push {r5-r7}
+ ldr r0, _080C87D8 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r2, r0, 0
+ cmp r1, 0x1
+ bne _080C87E0
+ ldr r0, _080C87DC @ =gUnknown_202402C
+ mov r10, r0
+ b _080C87E4
+ .align 2, 0
+_080C87D8: .4byte gUnknown_2039A00
+_080C87DC: .4byte gUnknown_202402C
+_080C87E0:
+ ldr r1, _080C8878 @ =gUnknown_2024284
+ mov r10, r1
+_080C87E4:
+ ldr r1, [r2]
+ ldrb r7, [r1, 0x2]
+ ldrb r0, [r1, 0x3]
+ lsls r0, 8
+ orrs r7, r0
+ ldrb r0, [r1, 0x4]
+ lsls r0, 16
+ orrs r7, r0
+ ldrb r0, [r1, 0x5]
+ lsls r0, 24
+ orrs r7, r0
+ movs r0, 0
+ mov r8, r0
+ mov r9, r2
+_080C8800:
+ movs r0, 0x64
+ mov r4, r8
+ muls r4, r0
+ add r4, r10
+ adds r0, r4, 0
+ movs r1, 0xB
+ bl sub_803FBE8
+ lsls r0, 16
+ lsrs r5, r0, 16
+ adds r0, r4, 0
+ movs r1, 0x39
+ bl sub_803FBE8
+ lsls r0, 16
+ lsrs r6, r0, 16
+ adds r0, r4, 0
+ movs r1, 0x37
+ bl sub_803FBE8
+ cmp r5, 0
+ beq _080C8844
+ movs r1, 0xCE
+ lsls r1, 1
+ cmp r5, r1
+ beq _080C8844
+ cmp r6, 0
+ beq _080C8844
+ cmp r0, r7
+ bne _080C8844
+ mov r1, r9
+ ldr r0, [r1]
+ adds r0, 0xA
+ str r0, [r1]
+_080C8844:
+ movs r0, 0x1
+ add r8, r0
+ mov r1, r8
+ cmp r1, 0x5
+ ble _080C8800
+ ldr r3, _080C887C @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x6]
+ ldrb r0, [r2, 0x7]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x8]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x9]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ pop {r3-r5}
+ mov r8, r3
+ mov r9, r4
+ mov r10, r5
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C8878: .4byte gUnknown_2024284
+_080C887C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C87BC
+
+ thumb_func_start sub_80C8880
+sub_80C8880: @ 80C8880
+ push {lr}
+ ldr r2, _080C88E0 @ =gUnknown_2023F1C
+ ldrh r1, [r2]
+ movs r0, 0x7
+ ands r0, r1
+ cmp r0, 0
+ beq _080C8898
+ ldr r0, _080C88E4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x1
+ str r0, [r1, 0x8]
+_080C8898:
+ ldrh r1, [r2]
+ movs r0, 0x18
+ ands r0, r1
+ cmp r0, 0
+ beq _080C88AC
+ ldr r0, _080C88E4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x2
+ str r0, [r1, 0x8]
+_080C88AC:
+ ldrh r1, [r2]
+ movs r0, 0x60
+ ands r0, r1
+ cmp r0, 0
+ beq _080C88C0
+ ldr r0, _080C88E4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0
+ str r0, [r1, 0x8]
+_080C88C0:
+ ldrh r1, [r2]
+ movs r0, 0x80
+ ands r0, r1
+ cmp r0, 0
+ beq _080C88D4
+ ldr r0, _080C88E4 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x14]
+ movs r0, 0x3
+ str r0, [r1, 0x8]
+_080C88D4:
+ ldr r1, _080C88E8 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C88E0: .4byte gUnknown_2023F1C
+_080C88E4: .4byte gUnknown_2023FF4
+_080C88E8: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C8880
+
+ thumb_func_start sub_80C88EC
+sub_80C88EC: @ 80C88EC
+ push {lr}
+ ldr r2, _080C8924 @ =gUnknown_8250C04
+ ldr r0, _080C8928 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldrh r1, [r0, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldr r3, _080C892C @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r0, [r0]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ bne _080C8930
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C8934
+ .align 2, 0
+_080C8924: .4byte gUnknown_8250C04
+_080C8928: .4byte gUnknown_2023FF4
+_080C892C: .4byte gUnknown_2039A00
+_080C8930:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C8934:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C88EC
+
+ thumb_func_start sub_80C8938
+sub_80C8938: @ 80C8938
+ push {lr}
+ ldr r2, _080C8970 @ =gUnknown_8250C04
+ ldr r0, _080C8974 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldrh r1, [r0, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldr r3, _080C8978 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r0, [r0]
+ ldrb r1, [r2, 0x1]
+ cmp r0, r1
+ beq _080C897C
+ ldrb r1, [r2, 0x2]
+ ldrb r0, [r2, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C8980
+ .align 2, 0
+_080C8970: .4byte gUnknown_8250C04
+_080C8974: .4byte gUnknown_2023FF4
+_080C8978: .4byte gUnknown_2039A00
+_080C897C:
+ adds r0, r2, 0x6
+ str r0, [r3]
+_080C8980:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8938
+
+ thumb_func_start sub_80C8984
+sub_80C8984: @ 80C8984
+ push {r4,lr}
+ ldr r0, _080C8998 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C89A0
+ ldr r0, _080C899C @ =gUnknown_2023D6B
+ b _080C89A2
+ .align 2, 0
+_080C8998: .4byte gUnknown_2039A00
+_080C899C: .4byte gUnknown_2023D6B
+_080C89A0:
+ ldr r0, _080C89D8 @ =gUnknown_2023D6C
+_080C89A2:
+ ldrb r3, [r0]
+ ldr r1, _080C89DC @ =gUnknown_2023BE4
+ ldr r2, [r4]
+ movs r0, 0x58
+ muls r0, r3
+ ldrb r3, [r2, 0x2]
+ adds r0, r3
+ adds r1, 0x18
+ adds r0, r1
+ ldrb r0, [r0]
+ lsls r0, 24
+ asrs r0, 24
+ ldrb r1, [r2, 0x3]
+ cmp r0, r1
+ bge _080C89E0
+ ldrb r1, [r2, 0x4]
+ ldrb r0, [r2, 0x5]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C89E6
+ .align 2, 0
+_080C89D8: .4byte gUnknown_2023D6C
+_080C89DC: .4byte gUnknown_2023BE4
+_080C89E0:
+ adds r0, r2, 0
+ adds r0, 0x8
+ str r0, [r4]
+_080C89E6:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8984
+
+ thumb_func_start sub_80C89EC
+sub_80C89EC: @ 80C89EC
+ push {r4,lr}
+ ldr r0, _080C8A00 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C8A08
+ ldr r0, _080C8A04 @ =gUnknown_2023D6B
+ b _080C8A0A
+ .align 2, 0
+_080C8A00: .4byte gUnknown_2039A00
+_080C8A04: .4byte gUnknown_2023D6B
+_080C8A08:
+ ldr r0, _080C8A40 @ =gUnknown_2023D6C
+_080C8A0A:
+ ldrb r3, [r0]
+ ldr r1, _080C8A44 @ =gUnknown_2023BE4
+ ldr r2, [r4]
+ movs r0, 0x58
+ muls r0, r3
+ ldrb r3, [r2, 0x2]
+ adds r0, r3
+ adds r1, 0x18
+ adds r0, r1
+ ldrb r0, [r0]
+ lsls r0, 24
+ asrs r0, 24
+ ldrb r1, [r2, 0x3]
+ cmp r0, r1
+ ble _080C8A48
+ ldrb r1, [r2, 0x4]
+ ldrb r0, [r2, 0x5]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C8A4E
+ .align 2, 0
+_080C8A40: .4byte gUnknown_2023D6C
+_080C8A44: .4byte gUnknown_2023BE4
+_080C8A48:
+ adds r0, r2, 0
+ adds r0, 0x8
+ str r0, [r4]
+_080C8A4E:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C89EC
+
+ thumb_func_start sub_80C8A54
+sub_80C8A54: @ 80C8A54
+ push {r4,lr}
+ ldr r0, _080C8A68 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C8A70
+ ldr r0, _080C8A6C @ =gUnknown_2023D6B
+ b _080C8A72
+ .align 2, 0
+_080C8A68: .4byte gUnknown_2039A00
+_080C8A6C: .4byte gUnknown_2023D6B
+_080C8A70:
+ ldr r0, _080C8AA8 @ =gUnknown_2023D6C
+_080C8A72:
+ ldrb r3, [r0]
+ ldr r1, _080C8AAC @ =gUnknown_2023BE4
+ ldr r2, [r4]
+ movs r0, 0x58
+ muls r0, r3
+ ldrb r3, [r2, 0x2]
+ adds r0, r3
+ adds r1, 0x18
+ adds r0, r1
+ ldrb r0, [r0]
+ lsls r0, 24
+ asrs r0, 24
+ ldrb r1, [r2, 0x3]
+ cmp r0, r1
+ bne _080C8AB0
+ ldrb r1, [r2, 0x4]
+ ldrb r0, [r2, 0x5]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C8AB6
+ .align 2, 0
+_080C8AA8: .4byte gUnknown_2023D6C
+_080C8AAC: .4byte gUnknown_2023BE4
+_080C8AB0:
+ adds r0, r2, 0
+ adds r0, 0x8
+ str r0, [r4]
+_080C8AB6:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8A54
+
+ thumb_func_start sub_80C8ABC
+sub_80C8ABC: @ 80C8ABC
+ push {r4,lr}
+ ldr r0, _080C8AD0 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C8AD8
+ ldr r0, _080C8AD4 @ =gUnknown_2023D6B
+ b _080C8ADA
+ .align 2, 0
+_080C8AD0: .4byte gUnknown_2039A00
+_080C8AD4: .4byte gUnknown_2023D6B
+_080C8AD8:
+ ldr r0, _080C8B10 @ =gUnknown_2023D6C
+_080C8ADA:
+ ldrb r3, [r0]
+ ldr r1, _080C8B14 @ =gUnknown_2023BE4
+ ldr r2, [r4]
+ movs r0, 0x58
+ muls r0, r3
+ ldrb r3, [r2, 0x2]
+ adds r0, r3
+ adds r1, 0x18
+ adds r0, r1
+ ldrb r0, [r0]
+ lsls r0, 24
+ asrs r0, 24
+ ldrb r1, [r2, 0x3]
+ cmp r0, r1
+ beq _080C8B18
+ ldrb r1, [r2, 0x4]
+ ldrb r0, [r2, 0x5]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C8B1E
+ .align 2, 0
+_080C8B10: .4byte gUnknown_2023D6C
+_080C8B14: .4byte gUnknown_2023BE4
+_080C8B18:
+ adds r0, r2, 0
+ adds r0, 0x8
+ str r0, [r4]
+_080C8B1E:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8ABC
+
+ thumb_func_start sub_80C8B24
+sub_80C8B24: @ 80C8B24
+ push {r4-r7,lr}
+ mov r7, r8
+ push {r7}
+ ldr r2, _080C8BD4 @ =gUnknown_8250C04
+ ldr r0, _080C8BD8 @ =gUnknown_2023FF4
+ mov r8, r0
+ ldr r0, [r0]
+ ldr r0, [r0, 0x14]
+ ldrh r1, [r0, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bls _080C8C08
+ ldr r0, _080C8BDC @ =gUnknown_2023F50
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, _080C8BE0 @ =gUnknown_2023FE8
+ ldr r0, [r0]
+ strb r1, [r0, 0x13]
+ ldr r0, _080C8BE4 @ =gUnknown_2023FC4
+ movs r7, 0x1
+ strb r7, [r0, 0xE]
+ ldr r0, _080C8BE8 @ =gUnknown_2023DCC
+ strb r1, [r0]
+ ldr r0, _080C8BEC @ =gUnknown_2023D71
+ strb r7, [r0]
+ ldr r5, _080C8BF0 @ =gUnknown_2023D4A
+ mov r1, r8
+ ldr r0, [r1]
+ ldr r0, [r0, 0x14]
+ ldrh r0, [r0, 0x2]
+ strh r0, [r5]
+ ldr r4, _080C8BF4 @ =gUnknown_2023D6B
+ ldrb r0, [r4]
+ ldr r6, _080C8BF8 @ =gUnknown_2023D6C
+ ldrb r1, [r6]
+ bl sub_801E68C
+ ldrh r0, [r5]
+ ldrb r1, [r4]
+ ldrb r2, [r6]
+ bl sub_801EDF4
+ ldr r4, _080C8BFC @ =gUnknown_2023D50
+ mov r1, r8
+ ldr r0, [r1]
+ ldr r1, [r0, 0x14]
+ adds r0, r1, 0
+ adds r0, 0x18
+ ldrb r1, [r1, 0x1]
+ adds r0, r1
+ ldrb r1, [r0]
+ ldr r0, [r4]
+ muls r0, r1
+ movs r1, 0x64
+ bl __divsi3
+ str r0, [r4]
+ cmp r0, 0
+ bne _080C8BA4
+ str r7, [r4]
+_080C8BA4:
+ ldr r2, _080C8C00 @ =gUnknown_2023BE4
+ ldrb r1, [r6]
+ movs r0, 0x58
+ muls r0, r1
+ adds r0, r2
+ ldrh r1, [r0, 0x28]
+ ldr r0, [r4]
+ cmp r1, r0
+ bgt _080C8C08
+ ldr r3, _080C8C04 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C8C10
+ .align 2, 0
+_080C8BD4: .4byte gUnknown_8250C04
+_080C8BD8: .4byte gUnknown_2023FF4
+_080C8BDC: .4byte gUnknown_2023F50
+_080C8BE0: .4byte gUnknown_2023FE8
+_080C8BE4: .4byte gUnknown_2023FC4
+_080C8BE8: .4byte gUnknown_2023DCC
+_080C8BEC: .4byte gUnknown_2023D71
+_080C8BF0: .4byte gUnknown_2023D4A
+_080C8BF4: .4byte gUnknown_2023D6B
+_080C8BF8: .4byte gUnknown_2023D6C
+_080C8BFC: .4byte gUnknown_2023D50
+_080C8C00: .4byte gUnknown_2023BE4
+_080C8C04: .4byte gUnknown_2039A00
+_080C8C08:
+ ldr r1, _080C8C1C @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x5
+ str r0, [r1]
+_080C8C10:
+ pop {r3}
+ mov r8, r3
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C8C1C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C8B24
+
+ thumb_func_start sub_80C8C20
+sub_80C8C20: @ 80C8C20
+ push {r4-r7,lr}
+ ldr r2, _080C8CBC @ =gUnknown_8250C04
+ ldr r7, _080C8CC0 @ =gUnknown_2023FF4
+ ldr r0, [r7]
+ ldr r0, [r0, 0x14]
+ ldrh r1, [r0, 0x2]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bls _080C8CF0
+ ldr r0, _080C8CC4 @ =gUnknown_2023F50
+ movs r1, 0
+ strh r1, [r0]
+ ldr r0, _080C8CC8 @ =gUnknown_2023FE8
+ ldr r0, [r0]
+ strb r1, [r0, 0x13]
+ ldr r0, _080C8CCC @ =gUnknown_2023FC4
+ movs r2, 0x1
+ strb r2, [r0, 0xE]
+ ldr r0, _080C8CD0 @ =gUnknown_2023DCC
+ strb r1, [r0]
+ ldr r0, _080C8CD4 @ =gUnknown_2023D71
+ strb r2, [r0]
+ ldr r6, _080C8CD8 @ =gUnknown_2023D4A
+ ldr r0, [r7]
+ ldr r0, [r0, 0x14]
+ ldrh r0, [r0, 0x2]
+ strh r0, [r6]
+ ldr r4, _080C8CDC @ =gUnknown_2023D6B
+ ldrb r0, [r4]
+ ldr r5, _080C8CE0 @ =gUnknown_2023D6C
+ ldrb r1, [r5]
+ bl sub_801E68C
+ ldrh r0, [r6]
+ ldrb r1, [r4]
+ ldrb r2, [r5]
+ bl sub_801EDF4
+ ldr r4, _080C8CE4 @ =gUnknown_2023D50
+ ldr r0, [r7]
+ ldr r1, [r0, 0x14]
+ adds r0, r1, 0
+ adds r0, 0x18
+ ldrb r1, [r1, 0x1]
+ adds r0, r1
+ ldrb r1, [r0]
+ ldr r0, [r4]
+ muls r0, r1
+ movs r1, 0x64
+ bl __divsi3
+ str r0, [r4]
+ ldr r3, _080C8CE8 @ =gUnknown_2023BE4
+ ldrb r2, [r5]
+ movs r1, 0x58
+ muls r1, r2
+ adds r1, r3
+ ldrh r1, [r1, 0x28]
+ cmp r1, r0
+ ble _080C8CF0
+ ldr r3, _080C8CEC @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C8CF8
+ .align 2, 0
+_080C8CBC: .4byte gUnknown_8250C04
+_080C8CC0: .4byte gUnknown_2023FF4
+_080C8CC4: .4byte gUnknown_2023F50
+_080C8CC8: .4byte gUnknown_2023FE8
+_080C8CCC: .4byte gUnknown_2023FC4
+_080C8CD0: .4byte gUnknown_2023DCC
+_080C8CD4: .4byte gUnknown_2023D71
+_080C8CD8: .4byte gUnknown_2023D4A
+_080C8CDC: .4byte gUnknown_2023D6B
+_080C8CE0: .4byte gUnknown_2023D6C
+_080C8CE4: .4byte gUnknown_2023D50
+_080C8CE8: .4byte gUnknown_2023BE4
+_080C8CEC: .4byte gUnknown_2039A00
+_080C8CF0:
+ ldr r1, _080C8D00 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x5
+ str r0, [r1]
+_080C8CF8:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C8D00: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C8C20
+
+ thumb_func_start sub_80C8D04
+sub_80C8D04: @ 80C8D04
+ push {r4-r7,lr}
+ ldr r1, _080C8D20 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r6, r0, 0x2
+ ldrb r0, [r0, 0x1]
+ adds r5, r1, 0
+ cmp r0, 0x1
+ beq _080C8D2C
+ cmp r0, 0x1
+ bgt _080C8D24
+ cmp r0, 0
+ beq _080C8D70
+ b _080C8DD8
+ .align 2, 0
+_080C8D20: .4byte gUnknown_2039A00
+_080C8D24:
+ cmp r0, 0x2
+ beq _080C8D70
+ cmp r0, 0x3
+ bne _080C8DD8
+_080C8D2C:
+ movs r3, 0
+ ldr r2, _080C8D68 @ =gUnknown_2023BE4
+ ldr r4, _080C8D6C @ =gUnknown_2023D6B
+ ldrb r1, [r4]
+ movs r0, 0x58
+ muls r0, r1
+ adds r2, 0xC
+ adds r0, r2
+ ldrh r0, [r0]
+ ldrh r1, [r6]
+ cmp r0, r1
+ beq _080C8D62
+ adds r7, r4, 0
+ movs r6, 0x58
+ adds r4, r2, 0
+ adds r2, r1, 0
+_080C8D4C:
+ adds r3, 0x1
+ cmp r3, 0x3
+ bgt _080C8D62
+ lsls r1, r3, 1
+ ldrb r0, [r7]
+ muls r0, r6
+ adds r1, r0
+ adds r1, r4
+ ldrh r0, [r1]
+ cmp r0, r2
+ bne _080C8D4C
+_080C8D62:
+ cmp r3, 0x4
+ beq _080C8DB0
+ b _080C8DC0
+ .align 2, 0
+_080C8D68: .4byte gUnknown_2023BE4
+_080C8D6C: .4byte gUnknown_2023D6B
+_080C8D70:
+ movs r3, 0
+ ldr r4, _080C8DB8 @ =gUnknown_2023FF4
+ ldr r0, [r4]
+ ldr r1, [r0, 0x18]
+ ldr r2, _080C8DBC @ =gUnknown_2023D6C
+ ldrb r0, [r2]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r1, r0
+ ldrh r0, [r1]
+ ldrh r1, [r6]
+ cmp r0, r1
+ beq _080C8DAC
+ adds r7, r4, 0
+ adds r4, r1, 0
+ adds r6, r2, 0
+_080C8D90:
+ adds r3, 0x1
+ cmp r3, 0x7
+ bgt _080C8DAC
+ ldr r0, [r7]
+ ldr r2, [r0, 0x18]
+ lsls r1, r3, 1
+ ldrb r0, [r6]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r1, r0
+ adds r2, r1
+ ldrh r0, [r2]
+ cmp r0, r4
+ bne _080C8D90
+_080C8DAC:
+ cmp r3, 0x8
+ bne _080C8DC0
+_080C8DB0:
+ ldr r0, [r5]
+ adds r0, 0x8
+ str r0, [r5]
+ b _080C8DD8
+ .align 2, 0
+_080C8DB8: .4byte gUnknown_2023FF4
+_080C8DBC: .4byte gUnknown_2023D6C
+_080C8DC0:
+ ldr r2, [r5]
+ ldrb r1, [r2, 0x4]
+ ldrb r0, [r2, 0x5]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+_080C8DD8:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8D04
+
+ thumb_func_start sub_80C8DE0
+sub_80C8DE0: @ 80C8DE0
+ push {r4-r7,lr}
+ ldr r1, _080C8DFC @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r6, r0, 0x2
+ ldrb r0, [r0, 0x1]
+ adds r5, r1, 0
+ cmp r0, 0x1
+ beq _080C8E08
+ cmp r0, 0x1
+ bgt _080C8E00
+ cmp r0, 0
+ beq _080C8E4C
+ b _080C8EB4
+ .align 2, 0
+_080C8DFC: .4byte gUnknown_2039A00
+_080C8E00:
+ cmp r0, 0x2
+ beq _080C8E4C
+ cmp r0, 0x3
+ bne _080C8EB4
+_080C8E08:
+ movs r3, 0
+ ldr r2, _080C8E44 @ =gUnknown_2023BE4
+ ldr r4, _080C8E48 @ =gUnknown_2023D6B
+ ldrb r1, [r4]
+ movs r0, 0x58
+ muls r0, r1
+ adds r2, 0xC
+ adds r0, r2
+ ldrh r0, [r0]
+ ldrh r1, [r6]
+ cmp r0, r1
+ beq _080C8E3E
+ adds r7, r4, 0
+ movs r6, 0x58
+ adds r4, r2, 0
+ adds r2, r1, 0
+_080C8E28:
+ adds r3, 0x1
+ cmp r3, 0x3
+ bgt _080C8E3E
+ lsls r1, r3, 1
+ ldrb r0, [r7]
+ muls r0, r6
+ adds r1, r0
+ adds r1, r4
+ ldrh r0, [r1]
+ cmp r0, r2
+ bne _080C8E28
+_080C8E3E:
+ cmp r3, 0x4
+ bne _080C8E8C
+ b _080C8E9C
+ .align 2, 0
+_080C8E44: .4byte gUnknown_2023BE4
+_080C8E48: .4byte gUnknown_2023D6B
+_080C8E4C:
+ movs r3, 0
+ ldr r4, _080C8E94 @ =gUnknown_2023FF4
+ ldr r0, [r4]
+ ldr r1, [r0, 0x18]
+ ldr r2, _080C8E98 @ =gUnknown_2023D6C
+ ldrb r0, [r2]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r1, r0
+ ldrh r0, [r1]
+ ldrh r1, [r6]
+ cmp r0, r1
+ beq _080C8E88
+ adds r7, r4, 0
+ adds r4, r1, 0
+ adds r6, r2, 0
+_080C8E6C:
+ adds r3, 0x1
+ cmp r3, 0x7
+ bgt _080C8E88
+ ldr r0, [r7]
+ ldr r2, [r0, 0x18]
+ lsls r1, r3, 1
+ ldrb r0, [r6]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r1, r0
+ adds r2, r1
+ ldrh r0, [r2]
+ cmp r0, r4
+ bne _080C8E6C
+_080C8E88:
+ cmp r3, 0x8
+ beq _080C8E9C
+_080C8E8C:
+ ldr r0, [r5]
+ adds r0, 0x8
+ str r0, [r5]
+ b _080C8EB4
+ .align 2, 0
+_080C8E94: .4byte gUnknown_2023FF4
+_080C8E98: .4byte gUnknown_2023D6C
+_080C8E9C:
+ ldr r2, [r5]
+ ldrb r1, [r2, 0x4]
+ ldrb r0, [r2, 0x5]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x7]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+_080C8EB4:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C8DE0
+
+ thumb_func_start sub_80C8EBC
+sub_80C8EBC: @ 80C8EBC
+ push {r4-r7,lr}
+ ldr r1, _080C8ED4 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ ldrb r0, [r0, 0x1]
+ adds r5, r1, 0
+ cmp r0, 0x1
+ beq _080C8EE0
+ cmp r0, 0x1
+ bgt _080C8ED8
+ cmp r0, 0
+ beq _080C8F34
+ b _080C8F96
+ .align 2, 0
+_080C8ED4: .4byte gUnknown_2039A00
+_080C8ED8:
+ cmp r0, 0x2
+ beq _080C8F34
+ cmp r0, 0x3
+ bne _080C8F96
+_080C8EE0:
+ movs r3, 0
+ ldr r1, _080C8F24 @ =gUnknown_2023BE4
+ ldr r0, _080C8F28 @ =gUnknown_2023D6B
+ ldrb r2, [r0]
+ ldr r6, _080C8F2C @ =gUnknown_8250C04
+ movs r0, 0x58
+ muls r0, r2
+ adds r1, 0xC
+ adds r2, r0, r1
+ ldr r4, _080C8F30 @ =gUnknown_2039A00
+_080C8EF4:
+ ldrh r0, [r2]
+ cmp r0, 0
+ beq _080C8F0E
+ adds r1, r0, 0
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r6
+ ldr r1, [r4]
+ ldrb r0, [r0]
+ ldrb r1, [r1, 0x2]
+ cmp r0, r1
+ beq _080C8F16
+_080C8F0E:
+ adds r2, 0x2
+ adds r3, 0x1
+ cmp r3, 0x3
+ ble _080C8EF4
+_080C8F16:
+ cmp r3, 0x4
+ bne _080C8F7E
+ ldr r0, [r5]
+ adds r0, 0x7
+ str r0, [r5]
+ b _080C8F96
+ .align 2, 0
+_080C8F24: .4byte gUnknown_2023BE4
+_080C8F28: .4byte gUnknown_2023D6B
+_080C8F2C: .4byte gUnknown_8250C04
+_080C8F30: .4byte gUnknown_2039A00
+_080C8F34:
+ movs r3, 0
+ ldr r1, _080C8F9C @ =gUnknown_2023BE4
+ ldr r0, _080C8FA0 @ =gUnknown_2023D6B
+ ldrb r2, [r0]
+ ldr r0, _080C8FA4 @ =gUnknown_8250C04
+ mov r12, r0
+ ldr r7, _080C8FA8 @ =gUnknown_2023FF4
+ ldr r6, _080C8FAC @ =gUnknown_2023D6C
+ movs r0, 0x58
+ muls r0, r2
+ adds r1, 0xC
+ adds r4, r0, r1
+_080C8F4C:
+ lsls r2, r3, 1
+ ldrh r0, [r4]
+ cmp r0, 0
+ beq _080C8F76
+ ldr r0, [r7]
+ ldr r1, [r0, 0x18]
+ ldrb r0, [r6]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r0, r2, r0
+ adds r1, r0
+ ldrh r1, [r1]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ add r0, r12
+ ldr r1, [r5]
+ ldrb r0, [r0]
+ ldrb r1, [r1, 0x2]
+ cmp r0, r1
+ beq _080C8F7E
+_080C8F76:
+ adds r4, 0x2
+ adds r3, 0x1
+ cmp r3, 0x7
+ ble _080C8F4C
+_080C8F7E:
+ ldr r2, [r5]
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+_080C8F96:
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C8F9C: .4byte gUnknown_2023BE4
+_080C8FA0: .4byte gUnknown_2023D6B
+_080C8FA4: .4byte gUnknown_8250C04
+_080C8FA8: .4byte gUnknown_2023FF4
+_080C8FAC: .4byte gUnknown_2023D6C
+ thumb_func_end sub_80C8EBC
+
+ thumb_func_start sub_80C8FB0
+sub_80C8FB0: @ 80C8FB0
+ push {r4-r6,lr}
+ ldr r1, _080C8FC8 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ ldrb r0, [r0, 0x1]
+ adds r4, r1, 0
+ cmp r0, 0x1
+ beq _080C8FD4
+ cmp r0, 0x1
+ bgt _080C8FCC
+ cmp r0, 0
+ beq _080C9038
+ b _080C9074
+ .align 2, 0
+_080C8FC8: .4byte gUnknown_2039A00
+_080C8FCC:
+ cmp r0, 0x2
+ beq _080C9038
+ cmp r0, 0x3
+ bne _080C9074
+_080C8FD4:
+ movs r3, 0
+ ldr r1, _080C9028 @ =gUnknown_2023BE4
+ ldr r0, _080C902C @ =gUnknown_2023D6B
+ ldrb r2, [r0]
+ ldr r6, _080C9030 @ =gUnknown_8250C04
+ movs r0, 0x58
+ muls r0, r2
+ adds r1, 0xC
+ adds r2, r0, r1
+ ldr r5, _080C9034 @ =gUnknown_2039A00
+_080C8FE8:
+ ldrh r0, [r2]
+ cmp r0, 0
+ beq _080C9002
+ adds r1, r0, 0
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r6
+ ldr r1, [r5]
+ ldrb r0, [r0]
+ ldrb r1, [r1, 0x2]
+ cmp r0, r1
+ beq _080C900A
+_080C9002:
+ adds r2, 0x2
+ adds r3, 0x1
+ cmp r3, 0x3
+ ble _080C8FE8
+_080C900A:
+ cmp r3, 0x4
+ bne _080C906E
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C9074
+ .align 2, 0
+_080C9028: .4byte gUnknown_2023BE4
+_080C902C: .4byte gUnknown_2023D6B
+_080C9030: .4byte gUnknown_8250C04
+_080C9034: .4byte gUnknown_2039A00
+_080C9038:
+ movs r3, 0
+ ldr r0, _080C907C @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r1, [r0, 0x18]
+ ldr r0, _080C9080 @ =gUnknown_2023D6C
+ ldrb r0, [r0]
+ lsrs r0, 1
+ lsls r0, 4
+ adds r2, r0, r1
+ ldr r5, _080C9084 @ =gUnknown_8250C04
+_080C904C:
+ ldrh r0, [r2]
+ cmp r0, 0
+ beq _080C9066
+ adds r1, r0, 0
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r5
+ ldr r1, [r4]
+ ldrb r0, [r0]
+ ldrb r1, [r1, 0x2]
+ cmp r0, r1
+ beq _080C906E
+_080C9066:
+ adds r2, 0x2
+ adds r3, 0x1
+ cmp r3, 0x7
+ ble _080C904C
+_080C906E:
+ ldr r0, [r4]
+ adds r0, 0x7
+ str r0, [r4]
+_080C9074:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C907C: .4byte gUnknown_2023FF4
+_080C9080: .4byte gUnknown_2023D6C
+_080C9084: .4byte gUnknown_8250C04
+ thumb_func_end sub_80C8FB0
+
+ thumb_func_start sub_80C9088
+sub_80C9088: @ 80C9088
+ push {r4,r5,lr}
+ ldr r0, _080C909C @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r5, r0, 0
+ cmp r1, 0x1
+ bne _080C90A4
+ ldr r0, _080C90A0 @ =gUnknown_2023D6B
+ b _080C90A6
+ .align 2, 0
+_080C909C: .4byte gUnknown_2039A00
+_080C90A0: .4byte gUnknown_2023D6B
+_080C90A4:
+ ldr r0, _080C90C4 @ =gUnknown_2023D6C
+_080C90A6:
+ ldrb r3, [r0]
+ adds r4, r5, 0
+ ldr r2, [r4]
+ ldrb r0, [r2, 0x2]
+ cmp r0, 0
+ bne _080C90CC
+ ldr r0, _080C90C8 @ =gUnknown_2023E0C
+ lsls r1, r3, 3
+ subs r1, r3
+ lsls r1, 2
+ adds r1, r0
+ ldrh r0, [r1, 0x4]
+ cmp r0, 0
+ beq _080C90D0
+ b _080C90E6
+ .align 2, 0
+_080C90C4: .4byte gUnknown_2023D6C
+_080C90C8: .4byte gUnknown_2023E0C
+_080C90CC:
+ cmp r0, 0x1
+ beq _080C90D6
+_080C90D0:
+ adds r0, r2, 0x7
+ str r0, [r4]
+ b _080C9108
+_080C90D6:
+ ldr r0, _080C9100 @ =gUnknown_2023E0C
+ lsls r1, r3, 3
+ subs r1, r3
+ lsls r1, 2
+ adds r1, r0
+ ldrh r0, [r1, 0x6]
+ cmp r0, 0
+ beq _080C9104
+_080C90E6:
+ ldrb r1, [r2, 0x3]
+ ldrb r0, [r2, 0x4]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x5]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x6]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C9108
+ .align 2, 0
+_080C9100: .4byte gUnknown_2023E0C
+_080C9104:
+ adds r0, r2, 0x7
+ str r0, [r5]
+_080C9108:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C9088
+
+ thumb_func_start sub_80C9110
+sub_80C9110: @ 80C9110
+ push {r4,lr}
+ ldr r4, _080C9124 @ =gUnknown_2039A00
+ ldr r3, [r4]
+ ldrb r0, [r3, 0x1]
+ cmp r0, 0
+ beq _080C9128
+ cmp r0, 0x1
+ beq _080C9154
+ b _080C9194
+ .align 2, 0
+_080C9124: .4byte gUnknown_2039A00
+_080C9128:
+ ldr r2, _080C9148 @ =gUnknown_2023E0C
+ ldr r0, _080C914C @ =gUnknown_2023BC4
+ ldrb r1, [r0]
+ lsls r0, r1, 3
+ subs r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldr r1, _080C9150 @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r1, [r1, 0x14]
+ ldrh r0, [r0, 0x4]
+ ldrh r1, [r1, 0x2]
+ cmp r0, r1
+ beq _080C9170
+ b _080C9194
+ .align 2, 0
+_080C9148: .4byte gUnknown_2023E0C
+_080C914C: .4byte gUnknown_2023BC4
+_080C9150: .4byte gUnknown_2023FF4
+_080C9154:
+ ldr r2, _080C9188 @ =gUnknown_2023E0C
+ ldr r0, _080C918C @ =gUnknown_2023BC4
+ ldrb r1, [r0]
+ lsls r0, r1, 3
+ subs r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldr r1, _080C9190 @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r1, [r1, 0x14]
+ ldrh r0, [r0, 0x6]
+ ldrh r1, [r1, 0x2]
+ cmp r0, r1
+ bne _080C9194
+_080C9170:
+ ldrb r1, [r3, 0x2]
+ ldrb r0, [r3, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r3, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r3, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ b _080C9198
+ .align 2, 0
+_080C9188: .4byte gUnknown_2023E0C
+_080C918C: .4byte gUnknown_2023BC4
+_080C9190: .4byte gUnknown_2023FF4
+_080C9194:
+ adds r0, r3, 0x6
+ str r0, [r4]
+_080C9198:
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C9110
+
+ thumb_func_start sub_80C91A0
+sub_80C91A0: @ 80C91A0
+ ldr r0, _080C91B0 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldrb r1, [r2, 0x10]
+ movs r0, 0xB
+ orrs r0, r1
+ strb r0, [r2, 0x10]
+ bx lr
+ .align 2, 0
+_080C91B0: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C91A0
+
+ thumb_func_start sub_80C91B4
+sub_80C91B4: @ 80C91B4
+ push {r4,lr}
+ ldr r0, _080C91D8 @ =gUnknown_2023FE8
+ ldr r1, [r0]
+ adds r0, r1, 0
+ adds r0, 0x79
+ ldrb r0, [r0]
+ cmp r0, 0
+ beq _080C91DC
+ adds r0, r1, 0
+ adds r0, 0x7B
+ ldrb r0, [r0]
+ lsls r0, 25
+ lsrs r4, r0, 24
+ cmp r4, 0x14
+ bls _080C91FC
+ movs r4, 0x14
+ b _080C91FC
+ .align 2, 0
+_080C91D8: .4byte gUnknown_2023FE8
+_080C91DC:
+ adds r0, r1, 0
+ adds r0, 0x7A
+ ldrb r0, [r0]
+ cmp r0, 0
+ beq _080C91F6
+ adds r0, r1, 0
+ adds r0, 0x7B
+ ldrb r0, [r0]
+ lsrs r4, r0, 2
+ cmp r4, 0
+ bne _080C91FC
+ movs r4, 0x1
+ b _080C91FC
+_080C91F6:
+ adds r0, r1, 0
+ adds r0, 0x7B
+ ldrb r4, [r0]
+_080C91FC:
+ lsls r0, r4, 2
+ adds r0, r4
+ lsls r0, 24
+ lsrs r4, r0, 24
+ bl sub_8044EC8
+ lsls r0, 16
+ lsrs r0, 16
+ movs r1, 0x64
+ bl __umodsi3
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r0, r4
+ bcs _080C923C
+ ldr r3, _080C9238 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C9244
+ .align 2, 0
+_080C9238: .4byte gUnknown_2039A00
+_080C923C:
+ ldr r1, _080C924C @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x5
+ str r0, [r1]
+_080C9244:
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C924C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C91B4
+
+ thumb_func_start sub_80C9250
+sub_80C9250: @ 80C9250
+ ldr r0, _080C9260 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldrb r1, [r2, 0x10]
+ movs r0, 0xD
+ orrs r0, r1
+ strb r0, [r2, 0x10]
+ bx lr
+ .align 2, 0
+_080C9260: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C9250
+
+ thumb_func_start sub_80C9264
+sub_80C9264: @ 80C9264
+ push {r4,lr}
+ ldr r0, _080C9274 @ =gUnknown_2039A00
+ ldr r0, [r0]
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bne _080C927C
+ ldr r0, _080C9278 @ =gUnknown_2023D6B
+ b _080C927E
+ .align 2, 0
+_080C9274: .4byte gUnknown_2039A00
+_080C9278: .4byte gUnknown_2023D6B
+_080C927C:
+ ldr r0, _080C92A8 @ =gUnknown_2023D6C
+_080C927E:
+ ldrb r4, [r0]
+ adds r0, r4, 0
+ bl sub_80751C4
+ lsls r0, 24
+ cmp r0, 0
+ bne _080C92B0
+ adds r0, r4, 0
+ bl sub_80751D8
+ movs r1, 0x1
+ ands r1, r0
+ ldr r0, _080C92AC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r0, [r0, 0x18]
+ adds r0, 0x22
+ adds r0, r1
+ ldrb r0, [r0]
+ str r0, [r2, 0x8]
+ b _080C92CA
+ .align 2, 0
+_080C92A8: .4byte gUnknown_2023D6C
+_080C92AC: .4byte gUnknown_2023FF4
+_080C92B0:
+ ldr r1, _080C92D8 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r0, r4
+ adds r0, r1
+ ldrh r0, [r0, 0x2E]
+ bl sub_809A924
+ ldr r1, _080C92DC @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r1, [r1, 0x14]
+ lsls r0, 24
+ lsrs r0, 24
+ str r0, [r1, 0x8]
+_080C92CA:
+ ldr r1, _080C92E0 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x2
+ str r0, [r1]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C92D8: .4byte gUnknown_2023BE4
+_080C92DC: .4byte gUnknown_2023FF4
+_080C92E0: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9264
+
+ thumb_func_start sub_80C92E4
+sub_80C92E4: @ 80C92E4
+ push {lr}
+ ldr r0, _080C92F4 @ =gUnknown_2039A00
+ ldr r0, [r0]
+ ldrb r0, [r0, 0x1]
+ cmp r0, 0x1
+ bne _080C92FC
+ ldr r0, _080C92F8 @ =gUnknown_2023D6B
+ b _080C92FE
+ .align 2, 0
+_080C92F4: .4byte gUnknown_2039A00
+_080C92F8: .4byte gUnknown_2023D6B
+_080C92FC:
+ ldr r0, _080C932C @ =gUnknown_2023D6C
+_080C92FE:
+ ldrb r1, [r0]
+ ldr r2, _080C9330 @ =gUnknown_2023BE4
+ movs r0, 0x58
+ muls r1, r0
+ adds r0, r1, r2
+ ldrh r0, [r0]
+ adds r2, 0x48
+ adds r1, r2
+ ldr r1, [r1]
+ bl sub_803F78C
+ ldr r1, _080C9334 @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r1, [r1, 0x14]
+ lsls r0, 24
+ lsrs r0, 24
+ str r0, [r1, 0x8]
+ ldr r1, _080C9338 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x2
+ str r0, [r1]
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C932C: .4byte gUnknown_2023D6C
+_080C9330: .4byte gUnknown_2023BE4
+_080C9334: .4byte gUnknown_2023FF4
+_080C9338: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C92E4
+
+ thumb_func_start sub_80C933C
+sub_80C933C: @ 80C933C
+ push {r4,lr}
+ ldr r0, _080C9350 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C9358
+ ldr r0, _080C9354 @ =gUnknown_2023D6B
+ b _080C935A
+ .align 2, 0
+_080C9350: .4byte gUnknown_2039A00
+_080C9354: .4byte gUnknown_2023D6B
+_080C9358:
+ ldr r0, _080C937C @ =gUnknown_2023D6C
+_080C935A:
+ ldrb r3, [r0]
+ ldr r0, _080C9380 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r1, _080C9384 @ =gUnknown_2023E0C
+ lsls r0, r3, 3
+ subs r0, r3
+ lsls r0, 2
+ adds r0, r1
+ ldrb r0, [r0, 0x16]
+ str r0, [r2, 0x8]
+ ldr r0, [r4]
+ adds r0, 0x2
+ str r0, [r4]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C937C: .4byte gUnknown_2023D6C
+_080C9380: .4byte gUnknown_2023FF4
+_080C9384: .4byte gUnknown_2023E0C
+ thumb_func_end sub_80C933C
+
+ thumb_func_start sub_80C9388
+sub_80C9388: @ 80C9388
+ push {r4,lr}
+ ldr r0, _080C939C @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C93A4
+ ldr r0, _080C93A0 @ =gUnknown_2023D6B
+ b _080C93A6
+ .align 2, 0
+_080C939C: .4byte gUnknown_2039A00
+_080C93A0: .4byte gUnknown_2023D6B
+_080C93A4:
+ ldr r0, _080C93C8 @ =gUnknown_2023D6C
+_080C93A6:
+ ldrb r3, [r0]
+ ldr r0, _080C93CC @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r1, _080C93D0 @ =gUnknown_2023E0C
+ lsls r0, r3, 3
+ subs r0, r3
+ lsls r0, 2
+ adds r0, r1
+ ldrb r0, [r0, 0x9]
+ str r0, [r2, 0x8]
+ ldr r0, [r4]
+ adds r0, 0x2
+ str r0, [r4]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C93C8: .4byte gUnknown_2023D6C
+_080C93CC: .4byte gUnknown_2023FF4
+_080C93D0: .4byte gUnknown_2023E0C
+ thumb_func_end sub_80C9388
+
+ thumb_func_start sub_80C93D4
+sub_80C93D4: @ 80C93D4
+ ldr r0, _080C93F0 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r0, _080C93F4 @ =gUnknown_2022B4C
+ ldr r0, [r0]
+ movs r1, 0x1
+ ands r0, r1
+ str r0, [r2, 0x8]
+ ldr r1, _080C93F8 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C93F0: .4byte gUnknown_2023FF4
+_080C93F4: .4byte gUnknown_2022B4C
+_080C93F8: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C93D4
+
+ thumb_func_start sub_80C93FC
+sub_80C93FC: @ 80C93FC
+ push {r4,lr}
+ ldr r0, _080C9410 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C9418
+ ldr r0, _080C9414 @ =gUnknown_2023D6B
+ b _080C941A
+ .align 2, 0
+_080C9410: .4byte gUnknown_2039A00
+_080C9414: .4byte gUnknown_2023D6B
+_080C9418:
+ ldr r0, _080C943C @ =gUnknown_2023D6C
+_080C941A:
+ ldrb r3, [r0]
+ ldr r0, _080C9440 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r0, _080C9444 @ =gUnknown_2023FE8
+ ldr r1, [r0]
+ lsls r0, r3, 1
+ adds r0, r1
+ adds r0, 0xB8
+ ldrb r0, [r0]
+ str r0, [r2, 0x8]
+ ldr r0, [r4]
+ adds r0, 0x2
+ str r0, [r4]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C943C: .4byte gUnknown_2023D6C
+_080C9440: .4byte gUnknown_2023FF4
+_080C9444: .4byte gUnknown_2023FE8
+ thumb_func_end sub_80C93FC
+
+ thumb_func_start sub_80C9448
+sub_80C9448: @ 80C9448
+ ldr r0, _080C9468 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C946C @ =gUnknown_8250C04
+ ldr r1, [r3, 0x8]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x2]
+ str r0, [r3, 0x8]
+ ldr r1, _080C9470 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C9468: .4byte gUnknown_2023FF4
+_080C946C: .4byte gUnknown_8250C04
+_080C9470: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9448
+
+ thumb_func_start sub_80C9474
+sub_80C9474: @ 80C9474
+ ldr r0, _080C9494 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C9498 @ =gUnknown_8250C04
+ ldr r1, [r3, 0x8]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x1]
+ str r0, [r3, 0x8]
+ ldr r1, _080C949C @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C9494: .4byte gUnknown_2023FF4
+_080C9498: .4byte gUnknown_8250C04
+_080C949C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9474
+
+ thumb_func_start sub_80C94A0
+sub_80C94A0: @ 80C94A0
+ ldr r0, _080C94C0 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r3, [r0, 0x14]
+ ldr r2, _080C94C4 @ =gUnknown_8250C04
+ ldr r1, [r3, 0x8]
+ lsls r0, r1, 1
+ adds r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0]
+ str r0, [r3, 0x8]
+ ldr r1, _080C94C8 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ bx lr
+ .align 2, 0
+_080C94C0: .4byte gUnknown_2023FF4
+_080C94C4: .4byte gUnknown_8250C04
+_080C94C8: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C94A0
+
+ thumb_func_start sub_80C94CC
+sub_80C94CC: @ 80C94CC
+ push {r4,lr}
+ ldr r0, _080C94E0 @ =gUnknown_2039A00
+ ldr r1, [r0]
+ ldrb r1, [r1, 0x1]
+ adds r4, r0, 0
+ cmp r1, 0x1
+ bne _080C94E8
+ ldr r0, _080C94E4 @ =gUnknown_2023D6B
+ b _080C94EA
+ .align 2, 0
+_080C94E0: .4byte gUnknown_2039A00
+_080C94E4: .4byte gUnknown_2023D6B
+_080C94E8:
+ ldr r0, _080C950C @ =gUnknown_2023D6C
+_080C94EA:
+ ldrb r3, [r0]
+ ldr r0, _080C9510 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldr r1, _080C9514 @ =gUnknown_2023E0C
+ lsls r0, r3, 3
+ subs r0, r3
+ lsls r0, 2
+ adds r0, r1
+ ldrb r0, [r0, 0x8]
+ str r0, [r2, 0x8]
+ ldr r0, [r4]
+ adds r0, 0x2
+ str r0, [r4]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C950C: .4byte gUnknown_2023D6C
+_080C9510: .4byte gUnknown_2023FF4
+_080C9514: .4byte gUnknown_2023E0C
+ thumb_func_end sub_80C94CC
+
+ thumb_func_start nullsub_68
+nullsub_68: @ 80C9518
+ bx lr
+ thumb_func_end nullsub_68
+
+ thumb_func_start nullsub_69
+nullsub_69: @ 80C951C
+ bx lr
+ thumb_func_end nullsub_69
+
+ thumb_func_start nullsub_70
+nullsub_70: @ 80C9520
+ bx lr
+ thumb_func_end nullsub_70
+
+ thumb_func_start nullsub_71
+nullsub_71: @ 80C9524
+ bx lr
+ thumb_func_end nullsub_71
+
+ thumb_func_start nullsub_72
+nullsub_72: @ 80C9528
+ bx lr
+ thumb_func_end nullsub_72
+
+ thumb_func_start nullsub_73
+nullsub_73: @ 80C952C
+ bx lr
+ thumb_func_end nullsub_73
+
+ thumb_func_start sub_80C9530
+sub_80C9530: @ 80C9530
+ push {r4,lr}
+ ldr r4, _080C955C @ =gUnknown_2039A00
+ ldr r0, [r4]
+ adds r0, 0x5
+ bl sub_80C971C
+ ldr r2, [r4]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r4]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C955C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9530
+
+ thumb_func_start sub_80C9560
+sub_80C9560: @ 80C9560
+ ldr r3, _080C957C @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ bx lr
+ .align 2, 0
+_080C957C: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9560
+
+ thumb_func_start sub_80C9580
+sub_80C9580: @ 80C9580
+ push {lr}
+ bl sub_80C9768
+ lsls r0, 24
+ cmp r0, 0
+ bne _080C959A
+ ldr r0, _080C95A0 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x14]
+ ldrb r1, [r2, 0x10]
+ movs r0, 0x1
+ orrs r0, r1
+ strb r0, [r2, 0x10]
+_080C959A:
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C95A0: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C9580
+
+ thumb_func_start sub_80C95A4
+sub_80C95A4: @ 80C95A4
+ push {r4,r5,lr}
+ ldr r5, _080C95BC @ =gUnknown_2039A00
+ ldr r4, [r5]
+ ldrb r0, [r4, 0x1]
+ cmp r0, 0x1
+ beq _080C95F8
+ cmp r0, 0x1
+ bgt _080C95C0
+ cmp r0, 0
+ beq _080C95C6
+ b _080C9674
+ .align 2, 0
+_080C95BC: .4byte gUnknown_2039A00
+_080C95C0:
+ cmp r0, 0x2
+ beq _080C9628
+ b _080C9674
+_080C95C6:
+ ldr r3, _080C95EC @ =gUnknown_2023BE4
+ ldr r0, _080C95F0 @ =gUnknown_2023D6B
+ ldrb r0, [r0]
+ movs r2, 0x58
+ adds r1, r0, 0
+ muls r1, r2
+ adds r1, r3
+ adds r1, 0x2A
+ ldr r0, _080C95F4 @ =gUnknown_2023D6C
+ ldrb r0, [r0]
+ muls r0, r2
+ adds r0, r3
+ adds r0, 0x2A
+ ldrb r1, [r1]
+ ldrb r0, [r0]
+ cmp r1, r0
+ bhi _080C964A
+ b _080C9670
+ .align 2, 0
+_080C95EC: .4byte gUnknown_2023BE4
+_080C95F0: .4byte gUnknown_2023D6B
+_080C95F4: .4byte gUnknown_2023D6C
+_080C95F8:
+ ldr r3, _080C961C @ =gUnknown_2023BE4
+ ldr r0, _080C9620 @ =gUnknown_2023D6B
+ ldrb r0, [r0]
+ movs r2, 0x58
+ adds r1, r0, 0
+ muls r1, r2
+ adds r1, r3
+ adds r1, 0x2A
+ ldr r0, _080C9624 @ =gUnknown_2023D6C
+ ldrb r0, [r0]
+ muls r0, r2
+ adds r0, r3
+ adds r0, 0x2A
+ ldrb r1, [r1]
+ ldrb r0, [r0]
+ cmp r1, r0
+ bcc _080C964A
+ b _080C9670
+ .align 2, 0
+_080C961C: .4byte gUnknown_2023BE4
+_080C9620: .4byte gUnknown_2023D6B
+_080C9624: .4byte gUnknown_2023D6C
+_080C9628:
+ ldr r3, _080C9664 @ =gUnknown_2023BE4
+ ldr r0, _080C9668 @ =gUnknown_2023D6B
+ ldrb r0, [r0]
+ movs r2, 0x58
+ adds r1, r0, 0
+ muls r1, r2
+ adds r1, r3
+ adds r1, 0x2A
+ ldr r0, _080C966C @ =gUnknown_2023D6C
+ ldrb r0, [r0]
+ muls r0, r2
+ adds r0, r3
+ adds r0, 0x2A
+ ldrb r1, [r1]
+ ldrb r0, [r0]
+ cmp r1, r0
+ bne _080C9670
+_080C964A:
+ ldrb r1, [r4, 0x2]
+ ldrb r0, [r4, 0x3]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r4, 0x4]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r4, 0x5]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r5]
+ b _080C9674
+ .align 2, 0
+_080C9664: .4byte gUnknown_2023BE4
+_080C9668: .4byte gUnknown_2023D6B
+_080C966C: .4byte gUnknown_2023D6C
+_080C9670:
+ adds r0, r4, 0x6
+ str r0, [r5]
+_080C9674:
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_80C95A4
+
+ thumb_func_start sub_80C967C
+sub_80C967C: @ 80C967C
+ push {lr}
+ ldr r2, _080C96B0 @ =gUnknown_2023E0C
+ ldr r0, _080C96B4 @ =gUnknown_2023D6C
+ ldrb r1, [r0]
+ lsls r0, r1, 3
+ subs r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x13]
+ lsls r0, 28
+ cmp r0, 0
+ beq _080C96BC
+ ldr r3, _080C96B8 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C96C4
+ .align 2, 0
+_080C96B0: .4byte gUnknown_2023E0C
+_080C96B4: .4byte gUnknown_2023D6C
+_080C96B8: .4byte gUnknown_2039A00
+_080C96BC:
+ ldr r1, _080C96C8 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x5
+ str r0, [r1]
+_080C96C4:
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C96C8: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C967C
+
+ thumb_func_start sub_80C96CC
+sub_80C96CC: @ 80C96CC
+ push {lr}
+ ldr r2, _080C9700 @ =gUnknown_2023E0C
+ ldr r0, _080C9704 @ =gUnknown_2023D6C
+ ldrb r1, [r0]
+ lsls r0, r1, 3
+ subs r0, r1
+ lsls r0, 2
+ adds r0, r2
+ ldrb r0, [r0, 0x13]
+ lsls r0, 28
+ cmp r0, 0
+ bne _080C970C
+ ldr r3, _080C9708 @ =gUnknown_2039A00
+ ldr r2, [r3]
+ ldrb r1, [r2, 0x1]
+ ldrb r0, [r2, 0x2]
+ lsls r0, 8
+ orrs r1, r0
+ ldrb r0, [r2, 0x3]
+ lsls r0, 16
+ orrs r1, r0
+ ldrb r0, [r2, 0x4]
+ lsls r0, 24
+ orrs r1, r0
+ str r1, [r3]
+ b _080C9714
+ .align 2, 0
+_080C9700: .4byte gUnknown_2023E0C
+_080C9704: .4byte gUnknown_2023D6C
+_080C9708: .4byte gUnknown_2039A00
+_080C970C:
+ ldr r1, _080C9718 @ =gUnknown_2039A00
+ ldr r0, [r1]
+ adds r0, 0x5
+ str r0, [r1]
+_080C9714:
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C9718: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C96CC
+
+ thumb_func_start sub_80C971C
+sub_80C971C: @ 80C971C
+ push {r4,lr}
+ ldr r1, _080C973C @ =gUnknown_2023FF4
+ ldr r1, [r1]
+ ldr r3, [r1, 0x1C]
+ adds r4, r3, 0
+ adds r4, 0x20
+ ldrb r1, [r4]
+ adds r2, r1, 0x1
+ strb r2, [r4]
+ lsls r1, 24
+ lsrs r1, 22
+ adds r3, r1
+ str r0, [r3]
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080C973C: .4byte gUnknown_2023FF4
+ thumb_func_end sub_80C971C
+
+ thumb_func_start sub_80C9740
+sub_80C9740: @ 80C9740
+ ldr r0, _080C9760 @ =gUnknown_2023FF4
+ ldr r0, [r0]
+ ldr r2, [r0, 0x1C]
+ adds r3, r2, 0
+ adds r3, 0x20
+ ldrb r0, [r3]
+ adds r1, r0, 0x1
+ strb r1, [r3]
+ lsls r0, 24
+ lsrs r0, 22
+ adds r2, r0
+ ldr r0, _080C9764 @ =gUnknown_2039A00
+ ldr r0, [r0]
+ str r0, [r2]
+ bx lr
+ .align 2, 0
+_080C9760: .4byte gUnknown_2023FF4
+_080C9764: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9740
+
+ thumb_func_start sub_80C9768
+sub_80C9768: @ 80C9768
+ push {lr}
+ ldr r3, _080C9780 @ =gUnknown_2023FF4
+ ldr r0, [r3]
+ ldr r0, [r0, 0x1C]
+ adds r1, r0, 0
+ adds r1, 0x20
+ ldrb r0, [r1]
+ cmp r0, 0
+ bne _080C9784
+ movs r0, 0
+ b _080C979E
+ .align 2, 0
+_080C9780: .4byte gUnknown_2023FF4
+_080C9784:
+ subs r0, 0x1
+ strb r0, [r1]
+ ldr r2, _080C97A4 @ =gUnknown_2039A00
+ ldr r0, [r3]
+ ldr r1, [r0, 0x1C]
+ adds r0, r1, 0
+ adds r0, 0x20
+ ldrb r0, [r0]
+ lsls r0, 2
+ adds r1, r0
+ ldr r0, [r1]
+ str r0, [r2]
+ movs r0, 0x1
+_080C979E:
+ pop {r1}
+ bx r1
+ .align 2, 0
+_080C97A4: .4byte gUnknown_2039A00
+ thumb_func_end sub_80C9768
+
+ .align 2, 0 @ Don't pad with nop.