diff options
Diffstat (limited to 'asm/battle_ai_script_commands.s')
-rw-r--r-- | asm/battle_ai_script_commands.s | 5796 |
1 files changed, 0 insertions, 5796 deletions
diff --git a/asm/battle_ai_script_commands.s b/asm/battle_ai_script_commands.s deleted file mode 100644 index 84bd60462..000000000 --- a/asm/battle_ai_script_commands.s +++ /dev/null @@ -1,5796 +0,0 @@ - .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 Random - 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 Random - 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 Random - 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 GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080C71FC - adds r0, r4, 0 - bl GetBankIdentity - 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 GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080C7234 - adds r0, r4, 0 - bl GetBankIdentity - 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 Random - 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 Random - 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 Random - 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 Random - 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 BattleAICmd_score -BattleAICmd_score: @ 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 BattleAICmd_score - - 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 GetBankIdentity - 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 GetBankIdentity - 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 BattleAICmd_if_in_bytes -BattleAICmd_if_in_bytes: @ 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 BattleAICmd_if_in_bytes - - thumb_func_start BattleAICmd_if_not_in_bytes -BattleAICmd_if_not_in_bytes: @ 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 BattleAICmd_if_not_in_bytes - - thumb_func_start BattleAICmd_if_in_hwords -BattleAICmd_if_in_hwords: @ 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 BattleAICmd_if_in_hwords - - thumb_func_start BattleAICmd_if_not_in_hwords -BattleAICmd_if_not_in_hwords: @ 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 BattleAICmd_if_not_in_hwords - - 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 BattleAICmd_get_turn_count -BattleAICmd_get_turn_count: @ 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 BattleAICmd_get_turn_count - - thumb_func_start BattleAICmd_get_type -BattleAICmd_get_type: @ 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 BattleAICmd_get_type - - thumb_func_start BattleAICmd_get_last_used_bank_move_power -BattleAICmd_get_last_used_bank_move_power: @ 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 BattleAICmd_get_last_used_bank_move_power - - thumb_func_start BattleAICmd_is_most_powerful_move -BattleAICmd_is_most_powerful_move: @ 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 AI_CalcDmg - ldrh r0, [r5] - ldrb r1, [r7] - ldrb r2, [r4] - bl TypeCalc - 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 BattleAICmd_is_most_powerful_move - - thumb_func_start BattleAICmd_get_last_used_bank_move -BattleAICmd_get_last_used_bank_move: @ 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 BattleAICmd_get_last_used_bank_move - - 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 GetWhoStrikesFirst - 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 GetWhoStrikesFirst - 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 BattleAICmd_count_alive_pokemon -BattleAICmd_count_alive_pokemon: @ 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 GetBankSide - 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 GetBankIdentity - movs r1, 0x2 - eors r0, r1 - lsls r0, 24 - lsrs r0, 24 - bl GetBankByIdentity - 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 GetMonData - cmp r0, 0 - beq _080C83B0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _080C83B0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - 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 BattleAICmd_count_alive_pokemon - - thumb_func_start BattleAICmd_get_considered_move -BattleAICmd_get_considered_move: @ 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 BattleAICmd_get_considered_move - - thumb_func_start BattleAICmd_get_considered_move_effect -BattleAICmd_get_considered_move_effect: @ 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 BattleAICmd_get_considered_move_effect - - 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 GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080C8506 - adds r0, r4, 0 - bl GetBankIdentity - 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 Random - 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 BattleAICmd_get_highest_type_effectiveness -BattleAICmd_get_highest_type_effectiveness: @ 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 TypeCalc - 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 BattleAICmd_get_highest_type_effectiveness - - thumb_func_start BattleAICmd_if_type_effectiveness -BattleAICmd_if_type_effectiveness: @ 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 TypeCalc - 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 BattleAICmd_if_type_effectiveness - - 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 BattleAICmd_if_status_in_party -BattleAICmd_if_status_in_party: @ 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 GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - 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 BattleAICmd_if_status_in_party - - thumb_func_start BattleAICmd_if_status_not_in_party -BattleAICmd_if_status_not_in_party: @ 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 GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - 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 BattleAICmd_if_status_not_in_party - - thumb_func_start BattleAICmd_get_weather -BattleAICmd_get_weather: @ 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 BattleAICmd_get_weather - - 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 BattleAICmd_if_can_faint -BattleAICmd_if_can_faint: @ 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 AI_CalcDmg - ldrh r0, [r5] - ldrb r1, [r4] - ldrb r2, [r6] - bl TypeCalc - 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 BattleAICmd_if_can_faint - - thumb_func_start BattleAICmd_if_cant_faint -BattleAICmd_if_cant_faint: @ 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 AI_CalcDmg - ldrh r0, [r6] - ldrb r1, [r4] - ldrb r2, [r5] - bl TypeCalc - 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 BattleAICmd_if_cant_faint - - 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 BattleAICmd_if_any_move_disabled_or_encored -BattleAICmd_if_any_move_disabled_or_encored: @ 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 BattleAICmd_if_any_move_disabled_or_encored - - thumb_func_start BattleAICmd_if_curr_move_disabled_or_encored -BattleAICmd_if_curr_move_disabled_or_encored: @ 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 BattleAICmd_if_curr_move_disabled_or_encored - - thumb_func_start BattleAICmd_flee -BattleAICmd_flee: @ 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 BattleAICmd_flee - - 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 Random - 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 BattleAICmd_watch -BattleAICmd_watch: @ 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 BattleAICmd_watch - - thumb_func_start BattleAICmd_get_hold_effect -BattleAICmd_get_hold_effect: @ 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 GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080C92B0 - adds r0, r4, 0 - bl GetBankIdentity - 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 ItemId_GetHoldEffect - 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 BattleAICmd_get_hold_effect - - thumb_func_start BattleAICmd_get_gender -BattleAICmd_get_gender: @ 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 GetGenderFromSpeciesAndPersonality - 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 BattleAICmd_get_gender - - thumb_func_start BattleAICmd_is_first_turn -BattleAICmd_is_first_turn: @ 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 BattleAICmd_is_first_turn - - thumb_func_start BattleAICmd_get_stockpile_count -BattleAICmd_get_stockpile_count: @ 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 BattleAICmd_get_stockpile_count - - thumb_func_start BattleAICmd_is_double_battle -BattleAICmd_is_double_battle: @ 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 BattleAICmd_is_double_battle - - thumb_func_start BattleAICmd_get_used_held_item -BattleAICmd_get_used_held_item: @ 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 BattleAICmd_get_used_held_item - - thumb_func_start BattleAICmd_get_move_type_from_result -BattleAICmd_get_move_type_from_result: @ 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 BattleAICmd_get_move_type_from_result - - thumb_func_start BattleAICmd_get_move_power_from_result -BattleAICmd_get_move_power_from_result: @ 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 BattleAICmd_get_move_power_from_result - - thumb_func_start BattleAICmd_get_move_effect_from_result -BattleAICmd_get_move_effect_from_result: @ 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 BattleAICmd_get_move_effect_from_result - - thumb_func_start BattleAICmd_get_protect_count -BattleAICmd_get_protect_count: @ 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 BattleAICmd_get_protect_count - - 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 BattleAICmd_call -BattleAICmd_call: @ 80C9530 - push {r4,lr} - ldr r4, _080C955C @ =gUnknown_2039A00 - ldr r0, [r4] - adds r0, 0x5 - bl AIStackPushVar - 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 BattleAICmd_call - - 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 BattleAICmd_end -BattleAICmd_end: @ 80C9580 - push {lr} - bl AIStackPop - 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 BattleAICmd_end - - thumb_func_start BattleAICmd_if_level_cond -BattleAICmd_if_level_cond: @ 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 BattleAICmd_if_level_cond - - 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 AIStackPushVar -AIStackPushVar: @ 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 AIStackPushVar - - thumb_func_start AIStackPushVar_cursor -AIStackPushVar_cursor: @ 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 AIStackPushVar_cursor - - thumb_func_start AIStackPop -AIStackPop: @ 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 AIStackPop - - .align 2, 0 @ Don't pad with nop. |