summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/battle_message.s3043
-rw-r--r--asm/field_control_avatar.s2
-rw-r--r--asm/field_effect.s10
-rw-r--r--asm/field_map_obj.s4
-rw-r--r--asm/field_weather.s6
-rw-r--r--asm/fldeff_cut.s6
-rw-r--r--asm/fldeff_flash.s6
-rw-r--r--asm/item_menu.s48
-rw-r--r--asm/link_rfu.s8
-rw-r--r--asm/link_rfu_3.s14
-rw-r--r--asm/naming_screen.s28
-rw-r--r--asm/overworld.s32
-rw-r--r--asm/party_menu.s19390
-rw-r--r--asm/pokedex_screen.s4
-rw-r--r--asm/pokemon_jump_2.s8
-rw-r--r--asm/pokemon_special_anim.s8
-rw-r--r--asm/pokemon_storage_system.s6
-rw-r--r--asm/pokemon_summary_screen.s78
-rw-r--r--asm/region_map.s28
-rw-r--r--asm/script_pokemon_util_80A0058.s4
-rw-r--r--asm/script_pokemon_util_80BF8FC.s2
-rw-r--r--asm/shop.s8
22 files changed, 155 insertions, 22588 deletions
diff --git a/asm/battle_message.s b/asm/battle_message.s
deleted file mode 100644
index fc21f17ee..000000000
--- a/asm/battle_message.s
+++ /dev/null
@@ -1,3043 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start BufferStringBattle
-BufferStringBattle: @ 80D7274
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- lsls r0, 16
- lsrs r6, r0, 16
- movs r7, 0
- ldr r4, _080D7330 @ =gUnknown_2039A34
- ldr r0, _080D7334 @ =gActiveBattler
- mov r8, r0
- ldrb r1, [r0]
- lsls r1, 9
- ldr r0, _080D7338 @ =gBattleBufferA + 4
- adds r1, r0
- str r1, [r4]
- ldr r2, _080D733C @ =gLastUsedItem
- ldrh r0, [r1, 0x4]
- strh r0, [r2]
- ldr r2, _080D7340 @ =gLastUsedAbility
- ldrb r0, [r1, 0x6]
- strb r0, [r2]
- ldr r5, _080D7344 @ =gBattleScripting
- ldrb r0, [r1, 0x7]
- strb r0, [r5, 0x17]
- ldr r3, _080D7348 @ =gBattleStruct
- ldr r0, [r3]
- adds r0, 0x52
- ldrb r1, [r1, 0x8]
- strb r1, [r0]
- ldr r0, [r3]
- adds r0, 0xAD
- ldr r1, [r4]
- ldrb r1, [r1, 0x9]
- strb r1, [r0]
- ldr r1, _080D734C @ =gPotentialItemEffectBattler
- ldr r2, [r4]
- ldrb r0, [r2, 0xA]
- strb r0, [r1]
- ldr r0, [r3]
- adds r0, 0x8E
- ldrb r1, [r2, 0xB]
- strb r1, [r0]
- movs r2, 0
- mov r12, r8
- mov r10, r5
- ldr r1, _080D7350 @ =gBattleTextBuff1
- mov r9, r1
- ldr r3, _080D7354 @ =gUnknown_2039A30
-_080D72D6:
- adds r0, r2, r3
- ldr r1, [r4]
- adds r1, 0xC
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x3
- ble _080D72D6
- movs r2, 0
- ldr r0, _080D7350 @ =gBattleTextBuff1
- mov r8, r0
- ldr r3, _080D7330 @ =gUnknown_2039A34
- ldr r5, _080D7358 @ =gBattleTextBuff2
- ldr r4, _080D735C @ =gBattleTextBuff3
-_080D72F4:
- mov r0, r8
- adds r1, r2, r0
- ldr r0, [r3]
- adds r0, 0x10
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r2, r5
- ldr r0, [r3]
- adds r0, 0x20
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r1, r2, r4
- ldr r0, [r3]
- adds r0, 0x30
- adds r0, r2
- ldrb r0, [r0]
- strb r0, [r1]
- adds r2, 0x1
- cmp r2, 0xF
- ble _080D72F4
- cmp r6, 0x5
- bls _080D7326
- b _080D77B8
-_080D7326:
- lsls r0, r6, 2
- ldr r1, _080D7360 @ =_080D7364
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080D7330: .4byte gUnknown_2039A34
-_080D7334: .4byte gActiveBattler
-_080D7338: .4byte gBattleBufferA + 4
-_080D733C: .4byte gLastUsedItem
-_080D7340: .4byte gLastUsedAbility
-_080D7344: .4byte gBattleScripting
-_080D7348: .4byte gBattleStruct
-_080D734C: .4byte gPotentialItemEffectBattler
-_080D7350: .4byte gBattleTextBuff1
-_080D7354: .4byte gUnknown_2039A30
-_080D7358: .4byte gBattleTextBuff2
-_080D735C: .4byte gBattleTextBuff3
-_080D7360: .4byte _080D7364
- .align 2, 0
-_080D7364:
- .4byte _080D737C
- .4byte _080D7428
- .4byte _080D74C8
- .4byte _080D7558
- .4byte _080D75F0
- .4byte _080D7654
-_080D737C:
- ldr r0, _080D739C @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080D73C4
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D73B4
- movs r0, 0x40
- ands r1, r0
- cmp r1, 0
- beq _080D73A4
- ldr r7, _080D73A0 @ =gUnknown_83FD397
- b _080D77DC
- .align 2, 0
-_080D739C: .4byte gBattleTypeFlags
-_080D73A0: .4byte gUnknown_83FD397
-_080D73A4:
- ldr r0, _080D73B8 @ =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- ldr r7, _080D73BC @ =gUnknown_83FD383
- cmp r1, r0
- beq _080D73B4
- b _080D77DC
-_080D73B4:
- ldr r7, _080D73C0 @ =gUnknown_83FD366
- b _080D77DC
- .align 2, 0
-_080D73B8: .4byte gTrainerBattleOpponent_A
-_080D73BC: .4byte gUnknown_83FD383
-_080D73C0: .4byte gUnknown_83FD366
-_080D73C4:
- movs r0, 0x80
- lsls r0, 8
- ands r0, r1
- cmp r0, 0
- beq _080D73E8
- movs r0, 0x80
- lsls r0, 6
- ands r1, r0
- ldr r7, _080D73E0 @ =gUnknown_83FD2D9
- cmp r1, 0
- bne _080D73DC
- b _080D77DC
-_080D73DC:
- ldr r7, _080D73E4 @ =gUnknown_83FD30D
- b _080D77DC
- .align 2, 0
-_080D73E0: .4byte gUnknown_83FD2D9
-_080D73E4: .4byte gUnknown_83FD30D
-_080D73E8:
- movs r0, 0x80
- lsls r0, 6
- ands r0, r1
- cmp r0, 0
- beq _080D73FC
- ldr r7, _080D73F8 @ =gUnknown_83FD297
- b _080D77DC
- .align 2, 0
-_080D73F8: .4byte gUnknown_83FD297
-_080D73FC:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D740C
- ldr r7, _080D7408 @ =gUnknown_83FD2BF
- b _080D77DC
- .align 2, 0
-_080D7408: .4byte gUnknown_83FD2BF
-_080D740C:
- movs r0, 0x80
- lsls r0, 2
- ands r1, r0
- ldr r7, _080D7420 @ =gUnknown_83FD284
- cmp r1, 0
- bne _080D741A
- b _080D77DC
-_080D741A:
- ldr r7, _080D7424 @ =gUnknown_83FD2AA
- b _080D77DC
- .align 2, 0
-_080D7420: .4byte gUnknown_83FD284
-_080D7424: .4byte gUnknown_83FD2AA
-_080D7428:
- mov r1, r12
- ldrb r0, [r1]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D7468
- ldr r0, _080D7454 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D7460
- movs r0, 0x40
- ands r1, r0
- ldr r7, _080D7458 @ =gUnknown_83FD466
- cmp r1, 0
- bne _080D744E
- b _080D77DC
-_080D744E:
- ldr r7, _080D745C @ =gUnknown_83FD4B5
- b _080D77DC
- .align 2, 0
-_080D7454: .4byte gBattleTypeFlags
-_080D7458: .4byte gUnknown_83FD466
-_080D745C: .4byte gUnknown_83FD4B5
-_080D7460:
- ldr r7, _080D7464 @ =gUnknown_83FD45E
- b _080D77DC
- .align 2, 0
-_080D7464: .4byte gUnknown_83FD45E
-_080D7468:
- ldr r0, _080D7480 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D74A0
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080D7488
- ldr r7, _080D7484 @ =gUnknown_83FD41E
- b _080D77DC
- .align 2, 0
-_080D7480: .4byte gBattleTypeFlags
-_080D7484: .4byte gUnknown_83FD41E
-_080D7488:
- movs r0, 0x2
- ands r1, r0
- ldr r7, _080D7498 @ =gUnknown_83FD3C7
- cmp r1, 0
- bne _080D7494
- b _080D77DC
-_080D7494:
- ldr r7, _080D749C @ =gUnknown_83FD407
- b _080D77DC
- .align 2, 0
-_080D7498: .4byte gUnknown_83FD3C7
-_080D749C: .4byte gUnknown_83FD407
-_080D74A0:
- movs r0, 0x2
- ands r1, r0
- cmp r1, 0
- beq _080D74B8
- ldr r0, _080D74BC @ =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- ldr r7, _080D74C0 @ =gUnknown_83FD3F7
- cmp r1, r0
- beq _080D74B8
- b _080D77DC
-_080D74B8:
- ldr r7, _080D74C4 @ =gUnknown_83FD3B1
- b _080D77DC
- .align 2, 0
-_080D74BC: .4byte gTrainerBattleOpponent_A
-_080D74C0: .4byte gUnknown_83FD3F7
-_080D74C4: .4byte gUnknown_83FD3B1
-_080D74C8:
- mov r1, r12
- ldrb r0, [r1]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D7520
- ldr r0, _080D74E8 @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xAD
- ldrb r2, [r0]
- cmp r2, 0
- bne _080D74F0
- ldr r7, _080D74EC @ =gUnknown_83FD4CD
- b _080D77DC
- .align 2, 0
-_080D74E8: .4byte gBattleStruct
-_080D74EC: .4byte gUnknown_83FD4CD
-_080D74F0:
- cmp r2, 0x1
- beq _080D7500
- ldr r0, _080D7504 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D750C
-_080D7500:
- ldr r7, _080D7508 @ =gUnknown_83FD4EB
- b _080D77DC
- .align 2, 0
-_080D7504: .4byte gBattleTypeFlags
-_080D7508: .4byte gUnknown_83FD4EB
-_080D750C:
- ldr r7, _080D7518 @ =gUnknown_83FD50D
- cmp r2, 0x2
- beq _080D7514
- b _080D77DC
-_080D7514:
- ldr r7, _080D751C @ =gUnknown_83FD4FA
- b _080D77DC
- .align 2, 0
-_080D7518: .4byte gUnknown_83FD50D
-_080D751C: .4byte gUnknown_83FD4FA
-_080D7520:
- ldr r0, _080D7540 @ =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0x80
- lsls r0, 4
- cmp r1, r0
- bne _080D7550
- ldr r0, _080D7544 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- ldr r7, _080D7548 @ =gUnknown_83FD535
- cmp r0, 0
- bne _080D753C
- b _080D77DC
-_080D753C:
- ldr r7, _080D754C @ =gUnknown_83FD545
- b _080D77DC
- .align 2, 0
-_080D7540: .4byte gTrainerBattleOpponent_A
-_080D7544: .4byte gBattleTypeFlags
-_080D7548: .4byte gUnknown_83FD535
-_080D754C: .4byte gUnknown_83FD545
-_080D7550:
- ldr r7, _080D7554 @ =gUnknown_83FD522
- b _080D77DC
- .align 2, 0
-_080D7554: .4byte gUnknown_83FD522
-_080D7558:
- mov r1, r10
- ldrb r0, [r1, 0x17]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D75B0
- ldr r0, _080D7584 @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xAD
- ldrb r2, [r0]
- cmp r2, 0
- beq _080D757E
- ldr r0, _080D7588 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _080D7590
-_080D757E:
- ldr r7, _080D758C @ =gUnknown_83FD475
- b _080D77DC
- .align 2, 0
-_080D7584: .4byte gBattleStruct
-_080D7588: .4byte gBattleTypeFlags
-_080D758C: .4byte gUnknown_83FD475
-_080D7590:
- cmp r2, 0x1
- bne _080D759C
- ldr r7, _080D7598 @ =gUnknown_83FD47D
- b _080D77DC
- .align 2, 0
-_080D7598: .4byte gUnknown_83FD47D
-_080D759C:
- ldr r7, _080D75A8 @ =gUnknown_83FD497
- cmp r2, 0x2
- beq _080D75A4
- b _080D77DC
-_080D75A4:
- ldr r7, _080D75AC @ =gUnknown_83FD488
- b _080D77DC
- .align 2, 0
-_080D75A8: .4byte gUnknown_83FD497
-_080D75AC: .4byte gUnknown_83FD488
-_080D75B0:
- ldr r0, _080D75C8 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D75E0
- movs r0, 0x40
- ands r1, r0
- cmp r1, 0
- beq _080D75D0
- ldr r7, _080D75CC @ =gUnknown_83FD44E
- b _080D77DC
- .align 2, 0
-_080D75C8: .4byte gBattleTypeFlags
-_080D75CC: .4byte gUnknown_83FD44E
-_080D75D0:
- ldr r0, _080D75E4 @ =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- ldr r7, _080D75E8 @ =gUnknown_83FD43E
- cmp r1, r0
- beq _080D75E0
- b _080D77DC
-_080D75E0:
- ldr r7, _080D75EC @ =gUnknown_83FD3E4
- b _080D77DC
- .align 2, 0
-_080D75E4: .4byte gTrainerBattleOpponent_A
-_080D75E8: .4byte gUnknown_83FD43E
-_080D75EC: .4byte gUnknown_83FD3E4
-_080D75F0:
- mov r0, r9
- bl sub_80D86C8
- ldr r0, _080D761C @ =gUnknown_2039A34
- ldr r2, [r0]
- ldrh r1, [r2]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bls _080D762C
- ldr r0, _080D7620 @ =gBattleTextBuff2
- ldr r2, _080D7624 @ =gUnknown_83FEA28
- ldr r1, _080D7628 @ =gBattleStruct
- ldr r1, [r1]
- adds r1, 0x8E
- ldrb r1, [r1]
- lsls r1, 2
- adds r1, r2
- ldr r1, [r1]
- bl StringCopy
- b _080D763C
- .align 2, 0
-_080D761C: .4byte gUnknown_2039A34
-_080D7620: .4byte gBattleTextBuff2
-_080D7624: .4byte gUnknown_83FEA28
-_080D7628: .4byte gBattleStruct
-_080D762C:
- ldr r0, _080D7648 @ =gBattleTextBuff2
- ldrh r2, [r2]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _080D764C @ =gMoveNames
- adds r1, r2
- bl StringCopy
-_080D763C:
- ldr r0, _080D7648 @ =gBattleTextBuff2
- bl sub_80D8720
- ldr r7, _080D7650 @ =gUnknown_83FD57B
- b _080D77DC
- .align 2, 0
-_080D7648: .4byte gBattleTextBuff2
-_080D764C: .4byte gMoveNames
-_080D7650: .4byte gUnknown_83FD57B
-_080D7654:
- ldr r4, _080D7694 @ =gBattleTextBuff1
- ldrb r1, [r4]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _080D76D4
- movs r0, 0x7F
- ands r0, r1
- strb r0, [r4]
- mov r1, r12
- ldrb r0, [r1]
- bl GetBattlerSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080D7682
- ldrb r1, [r4]
- cmp r1, 0x3
- beq _080D7682
- movs r0, 0x3
- eors r0, r1
- strb r0, [r4]
-_080D7682:
- ldr r0, _080D7694 @ =gBattleTextBuff1
- ldrb r0, [r0]
- subs r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _080D769C
- ldr r7, _080D7698 @ =gUnknown_83FCC8A
- b _080D77DC
- .align 2, 0
-_080D7694: .4byte gBattleTextBuff1
-_080D7698: .4byte gUnknown_83FCC8A
-_080D769C:
- ldr r0, _080D76AC @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080D76B4
- ldr r7, _080D76B0 @ =gUnknown_83FCD9F
- b _080D77DC
- .align 2, 0
-_080D76AC: .4byte gBattleTypeFlags
-_080D76B0: .4byte gUnknown_83FCD9F
-_080D76B4:
- ldr r0, _080D76C8 @ =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- ldr r7, _080D76CC @ =gUnknown_83FCD92
- cmp r1, r0
- beq _080D76C4
- b _080D77DC
-_080D76C4:
- ldr r7, _080D76D0 @ =gUnknown_83FE9D4
- b _080D77DC
- .align 2, 0
-_080D76C8: .4byte gTrainerBattleOpponent_A
-_080D76CC: .4byte gUnknown_83FCD92
-_080D76D0: .4byte gUnknown_83FE9D4
-_080D76D4:
- mov r1, r12
- ldrb r0, [r1]
- bl GetBattlerSide
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _080D76F0
- ldrb r1, [r4]
- cmp r1, 0x3
- beq _080D76F0
- movs r0, 0x3
- eors r0, r1
- strb r0, [r4]
-_080D76F0:
- ldr r0, _080D7710 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x40
- ands r0, r1
- cmp r0, 0
- beq _080D7738
- ldr r0, _080D7714 @ =gBattleTextBuff1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080D7728
- cmp r0, 0x2
- bgt _080D7718
- cmp r0, 0x1
- beq _080D771E
- b _080D77DC
- .align 2, 0
-_080D7710: .4byte gBattleTypeFlags
-_080D7714: .4byte gBattleTextBuff1
-_080D7718:
- cmp r0, 0x3
- beq _080D7730
- b _080D77DC
-_080D771E:
- ldr r7, _080D7724 @ =gUnknown_83FCCF8
- b _080D77DC
- .align 2, 0
-_080D7724: .4byte gUnknown_83FCCF8
-_080D7728:
- ldr r7, _080D772C @ =gUnknown_83FCD27
- b _080D77DC
- .align 2, 0
-_080D772C: .4byte gUnknown_83FCD27
-_080D7730:
- ldr r7, _080D7734 @ =gUnknown_83FCD66
- b _080D77DC
- .align 2, 0
-_080D7734: .4byte gUnknown_83FCD66
-_080D7738:
- ldr r0, _080D7758 @ =gTrainerBattleOpponent_A
- ldrh r1, [r0]
- movs r0, 0xC0
- lsls r0, 4
- cmp r1, r0
- bne _080D7780
- ldr r0, _080D775C @ =gBattleTextBuff1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080D7770
- cmp r0, 0x2
- bgt _080D7760
- cmp r0, 0x1
- beq _080D7766
- b _080D77DC
- .align 2, 0
-_080D7758: .4byte gTrainerBattleOpponent_A
-_080D775C: .4byte gBattleTextBuff1
-_080D7760:
- cmp r0, 0x3
- beq _080D7778
- b _080D77DC
-_080D7766:
- ldr r7, _080D776C @ =gUnknown_83FD1C7
- b _080D77DC
- .align 2, 0
-_080D776C: .4byte gUnknown_83FD1C7
-_080D7770:
- ldr r7, _080D7774 @ =gUnknown_83FE9E4
- b _080D77DC
- .align 2, 0
-_080D7774: .4byte gUnknown_83FE9E4
-_080D7778:
- ldr r7, _080D777C @ =gUnknown_83FE9FF
- b _080D77DC
- .align 2, 0
-_080D777C: .4byte gUnknown_83FE9FF
-_080D7780:
- ldr r0, _080D7794 @ =gBattleTextBuff1
- ldrb r0, [r0]
- cmp r0, 0x2
- beq _080D77A8
- cmp r0, 0x2
- bgt _080D7798
- cmp r0, 0x1
- beq _080D779E
- b _080D77DC
- .align 2, 0
-_080D7794: .4byte gBattleTextBuff1
-_080D7798:
- cmp r0, 0x3
- beq _080D77B0
- b _080D77DC
-_080D779E:
- ldr r7, _080D77A4 @ =gUnknown_83FCCE4
- b _080D77DC
- .align 2, 0
-_080D77A4: .4byte gUnknown_83FCCE4
-_080D77A8:
- ldr r7, _080D77AC @ =gUnknown_83FCD0F
- b _080D77DC
- .align 2, 0
-_080D77AC: .4byte gUnknown_83FCD0F
-_080D77B0:
- ldr r7, _080D77B4 @ =gUnknown_83FCD41
- b _080D77DC
- .align 2, 0
-_080D77B4: .4byte gUnknown_83FCD41
-_080D77B8:
- ldr r0, _080D77C8 @ =0x00000181
- cmp r6, r0
- bls _080D77D0
- ldr r1, _080D77CC @ =gDisplayedStringBattle
- movs r0, 0xFF
- strb r0, [r1]
- b _080D77E2
- .align 2, 0
-_080D77C8: .4byte 0x00000181
-_080D77CC: .4byte gDisplayedStringBattle
-_080D77D0:
- ldr r1, _080D77F0 @ =gBattleStringsTable
- adds r0, r6, 0
- subs r0, 0xC
- lsls r0, 2
- adds r0, r1
- ldr r7, [r0]
-_080D77DC:
- adds r0, r7, 0
- bl BattleStringExpandPlaceholdersToDisplayedString
-_080D77E2:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080D77F0: .4byte gBattleStringsTable
- thumb_func_end BufferStringBattle
-
- thumb_func_start BattleStringExpandPlaceholdersToDisplayedString
-BattleStringExpandPlaceholdersToDisplayedString: @ 80D77F4
- push {lr}
- ldr r1, _080D7800 @ =gDisplayedStringBattle
- bl BattleStringExpandPlaceholders
- pop {r1}
- bx r1
- .align 2, 0
-_080D7800: .4byte gDisplayedStringBattle
- thumb_func_end BattleStringExpandPlaceholdersToDisplayedString
-
- thumb_func_start TryGetStatusString
-TryGetStatusString: @ 80D7804
- push {r4,r5,lr}
- sub sp, 0x8
- adds r4, r0, 0
- ldr r1, _080D781C @ =gUnknown_83FEB5C
- mov r0, sp
- movs r2, 0x8
- bl memcpy
- mov r2, sp
- movs r3, 0
- b _080D782C
- .align 2, 0
-_080D781C: .4byte gUnknown_83FEB5C
-_080D7820:
- strb r1, [r2]
- adds r4, 0x1
- adds r2, 0x1
- adds r3, 0x1
- cmp r3, 0x7
- bhi _080D7834
-_080D782C:
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7820
-_080D7834:
- ldr r5, [sp]
- ldr r4, [sp, 0x4]
- movs r3, 0
- ldr r2, _080D7850 @ =gStatusConditionStringsTable
-_080D783C:
- ldr r1, [r2]
- ldr r0, [r1]
- cmp r5, r0
- bne _080D7854
- ldr r0, [r1, 0x4]
- cmp r4, r0
- bne _080D7854
- ldr r0, [r2, 0x4]
- b _080D785E
- .align 2, 0
-_080D7850: .4byte gStatusConditionStringsTable
-_080D7854:
- adds r2, 0x8
- adds r3, 0x1
- cmp r3, 0x6
- bls _080D783C
- movs r0, 0
-_080D785E:
- add sp, 0x8
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end TryGetStatusString
-
- thumb_func_start BattleStringExpandPlaceholders
-BattleStringExpandPlaceholders: @ 80D7868
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x20
- mov r9, r0
- mov r8, r1
- movs r6, 0
- movs r4, 0
- bl GetMultiplayerId
- lsls r0, 24
- lsrs r7, r0, 24
- mov r0, r9
- ldrb r1, [r0]
- bl _080D83F0
-_080D788A:
- cmp r1, 0xFD
- beq _080D7892
- bl _080D83E0
-_080D7892:
- movs r1, 0x1
- add r9, r1
- mov r2, r9
- ldrb r0, [r2]
- cmp r0, 0x30
- bls _080D78A2
- bl _080D8382
-_080D78A2:
- lsls r0, 2
- ldr r1, _080D78AC @ =_080D78B0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080D78AC: .4byte _080D78B0
- .align 2, 0
-_080D78B0:
- .4byte _080D7974
- .4byte _080D79A2
- .4byte _080D79DE
- .4byte _080D79E8
- .4byte _080D79F4
- .4byte _080D7A00
- .4byte _080D7A24
- .4byte _080D7A48
- .4byte _080D7A6C
- .4byte _080D7A90
- .4byte _080D7ABC
- .4byte _080D7AEC
- .4byte _080D7B1C
- .4byte _080D7B4C
- .4byte _080D7BE0
- .4byte _080D7C4C
- .4byte _080D7CC0
- .4byte _080D7D34
- .4byte _080D7DA8
- .4byte _080D7E1C
- .4byte _080D7E90
- .4byte _080D7EA8
- .4byte _080D7EE4
- .4byte _080D7FB0
- .4byte _080D7FB8
- .4byte _080D7FC8
- .4byte _080D7FD8
- .4byte _080D7FE8
- .4byte _080D8008
- .4byte _080D80A4
- .4byte _080D8162
- .4byte _080D8174
- .4byte _080D8188
- .4byte _080D819C
- .4byte _080D81C0
- .4byte _080D81DC
- .4byte _080D81E8
- .4byte _080D8214
- .4byte _080D8260
- .4byte _080D82F8
- .4byte _080D8340
- .4byte _080D8348
- .4byte _080D8318
- .4byte _080D8320
- .4byte _080D8368
- .4byte _080D8370
- .4byte _080D8240
- .4byte _080D8250
- .4byte _080D79B8
-_080D7974:
- ldr r5, _080D7984 @ =gBattleTextBuff1
- ldrb r0, [r5]
- cmp r0, 0xFD
- bne _080D798C
- ldr r4, _080D7988 @ =gStringVar1
- adds r0, r5, 0
- b _080D79C4
- .align 2, 0
-_080D7984: .4byte gBattleTextBuff1
-_080D7988: .4byte gStringVar1
-_080D798C:
- adds r0, r5, 0
- bl TryGetStatusString
- adds r4, r0, 0
- cmp r4, 0
- beq _080D799C
- bl _080D8382
-_080D799C:
- adds r4, r5, 0
- bl _080D8382
-_080D79A2:
- ldr r1, _080D79B0 @ =gBattleTextBuff2
- ldrb r0, [r1]
- cmp r0, 0xFD
- bne _080D79D8
- ldr r4, _080D79B4 @ =gStringVar2
- b _080D79C2
- .align 2, 0
-_080D79B0: .4byte gBattleTextBuff2
-_080D79B4: .4byte gStringVar2
-_080D79B8:
- ldr r1, _080D79D0 @ =gBattleTextBuff3
- ldrb r0, [r1]
- cmp r0, 0xFD
- bne _080D79D8
- ldr r4, _080D79D4 @ =gStringVar3
-_080D79C2:
- adds r0, r1, 0
-_080D79C4:
- adds r1, r4, 0
- bl ExpandBattleTextBuffPlaceholders
- bl _080D8382
- .align 2, 0
-_080D79D0: .4byte gBattleTextBuff3
-_080D79D4: .4byte gStringVar3
-_080D79D8:
- adds r4, r1, 0
- bl _080D8382
-_080D79DE:
- ldr r4, _080D79E4 @ =gStringVar1
- bl _080D8382
- .align 2, 0
-_080D79E4: .4byte gStringVar1
-_080D79E8:
- ldr r4, _080D79F0 @ =gStringVar2
- bl _080D8382
- .align 2, 0
-_080D79F0: .4byte gStringVar2
-_080D79F4:
- ldr r4, _080D79FC @ =gStringVar3
- bl _080D8382
- .align 2, 0
-_080D79FC: .4byte gStringVar3
-_080D7A00:
- movs r0, 0
- bl GetBattlerAtPosition
- ldr r1, _080D7A1C @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7A20 @ =gPlayerParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7A1C: .4byte gBattlerPartyIndexes
-_080D7A20: .4byte gPlayerParty
-_080D7A24:
- movs r0, 0x1
- bl GetBattlerAtPosition
- ldr r1, _080D7A40 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7A44 @ =gEnemyParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7A40: .4byte gBattlerPartyIndexes
-_080D7A44: .4byte gEnemyParty
-_080D7A48:
- movs r0, 0x2
- bl GetBattlerAtPosition
- ldr r1, _080D7A64 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7A68 @ =gPlayerParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7A64: .4byte gBattlerPartyIndexes
-_080D7A68: .4byte gPlayerParty
-_080D7A6C:
- movs r0, 0x3
- bl GetBattlerAtPosition
- ldr r1, _080D7A88 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7A8C @ =gEnemyParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7A88: .4byte gBattlerPartyIndexes
-_080D7A8C: .4byte gEnemyParty
-_080D7A90:
- ldr r2, _080D7AB0 @ =gBattlerPartyIndexes
- ldr r1, _080D7AB4 @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r0, [r0, 0x18]
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7AB8 @ =gPlayerParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7AB0: .4byte gBattlerPartyIndexes
-_080D7AB4: .4byte gLinkPlayers
-_080D7AB8: .4byte gPlayerParty
-_080D7ABC:
- ldr r2, _080D7AE0 @ =gBattlerPartyIndexes
- ldr r1, _080D7AE4 @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x18]
- movs r0, 0x1
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7AE8 @ =gEnemyParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7AE0: .4byte gBattlerPartyIndexes
-_080D7AE4: .4byte gLinkPlayers
-_080D7AE8: .4byte gEnemyParty
-_080D7AEC:
- ldr r2, _080D7B10 @ =gBattlerPartyIndexes
- ldr r1, _080D7B14 @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x18]
- movs r0, 0x2
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7B18 @ =gPlayerParty
- adds r0, r1
- bl _080D82AA
- .align 2, 0
-_080D7B10: .4byte gBattlerPartyIndexes
-_080D7B14: .4byte gLinkPlayers
-_080D7B18: .4byte gPlayerParty
-_080D7B1C:
- ldr r2, _080D7B40 @ =gBattlerPartyIndexes
- ldr r1, _080D7B44 @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r1
- ldrh r1, [r0, 0x18]
- movs r0, 0x3
- eors r0, r1
- lsls r0, 1
- adds r0, r2
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7B48 @ =gEnemyParty
- adds r0, r1
- b _080D82AA
- .align 2, 0
-_080D7B40: .4byte gBattlerPartyIndexes
-_080D7B44: .4byte gLinkPlayers
-_080D7B48: .4byte gEnemyParty
-_080D7B4C:
- ldr r4, _080D7B70 @ =gBattlerAttacker
- ldrb r0, [r4]
- bl GetBattlerSide
- lsls r0, 24
- adds r2, r4, 0
- cmp r0, 0
- beq _080D7BC0
- ldr r0, _080D7B74 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D7B78 @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D7B8A
- ldr r4, _080D7B7C @ =gUnknown_83FD55B
- b _080D7B8A
- .align 2, 0
-_080D7B70: .4byte gBattlerAttacker
-_080D7B74: .4byte gBattleTypeFlags
-_080D7B78: .4byte gUnknown_83FD555
-_080D7B7C: .4byte gUnknown_83FD55B
-_080D7B80:
- mov r3, r8
- adds r0, r3, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
-_080D7B8A:
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7B80
- ldrb r0, [r2]
- bl GetBattlerPosition
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBattlerAtPosition
- ldr r1, _080D7BB8 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7BBC @ =gEnemyParty
- adds r0, r1
- b _080D82AA
- .align 2, 0
-_080D7BB8: .4byte gBattlerPartyIndexes
-_080D7BBC: .4byte gEnemyParty
-_080D7BC0:
- ldrb r0, [r2]
- bl GetBattlerPosition
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBattlerAtPosition
- ldr r1, _080D7BDC @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r1, [r0]
- b _080D82D4
- .align 2, 0
-_080D7BDC: .4byte gBattlerPartyIndexes
-_080D7BE0:
- ldr r4, _080D7C14 @ =gBattlerAttacker
- ldrb r0, [r4]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D7C20
- ldrb r0, [r4]
- bl GetBattlerPosition
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBattlerAtPosition
- ldr r1, _080D7C18 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0x4
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7C1C @ =gPlayerParty
- adds r0, r1
- b _080D82AA
- .align 2, 0
-_080D7C14: .4byte gBattlerAttacker
-_080D7C18: .4byte gBattlerPartyIndexes
-_080D7C1C: .4byte gPlayerParty
-_080D7C20:
- ldrb r0, [r4]
- bl GetBattlerPosition
- adds r1, r0, 0
- movs r0, 0x1
- ands r0, r1
- bl GetBattlerAtPosition
- ldr r1, _080D7C44 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, 0x4
- adds r0, r1
- ldrh r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D7C48 @ =gEnemyParty
- b _080D82DA
- .align 2, 0
-_080D7C44: .4byte gBattlerPartyIndexes
-_080D7C48: .4byte gEnemyParty
-_080D7C4C:
- ldr r5, _080D7C98 @ =gBattlerAttacker
- ldrb r0, [r5]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D7CB0
- ldr r0, _080D7C9C @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D7CA0 @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D7C6A
- ldr r4, _080D7CA4 @ =gUnknown_83FD55B
-_080D7C6A:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, _080D7CA8 @ =gBattlerPartyIndexes
- ldr r2, _080D7CAC @ =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _080D7C8C
-_080D7C7A:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7C7A
-_080D7C8C:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- b _080D82A4
- .align 2, 0
-_080D7C98: .4byte gBattlerAttacker
-_080D7C9C: .4byte gBattleTypeFlags
-_080D7CA0: .4byte gUnknown_83FD555
-_080D7CA4: .4byte gUnknown_83FD55B
-_080D7CA8: .4byte gBattlerPartyIndexes
-_080D7CAC: .4byte gEnemyParty
-_080D7CB0:
- ldr r1, _080D7CBC @ =gBattlerPartyIndexes
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _080D82D4
- .align 2, 0
-_080D7CBC: .4byte gBattlerPartyIndexes
-_080D7CC0:
- ldr r5, _080D7D0C @ =gBattlerTarget
- ldrb r0, [r5]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D7D24
- ldr r0, _080D7D10 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D7D14 @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D7CDE
- ldr r4, _080D7D18 @ =gUnknown_83FD55B
-_080D7CDE:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, _080D7D1C @ =gBattlerPartyIndexes
- ldr r2, _080D7D20 @ =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _080D7D00
-_080D7CEE:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7CEE
-_080D7D00:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- b _080D82A4
- .align 2, 0
-_080D7D0C: .4byte gBattlerTarget
-_080D7D10: .4byte gBattleTypeFlags
-_080D7D14: .4byte gUnknown_83FD555
-_080D7D18: .4byte gUnknown_83FD55B
-_080D7D1C: .4byte gBattlerPartyIndexes
-_080D7D20: .4byte gEnemyParty
-_080D7D24:
- ldr r1, _080D7D30 @ =gBattlerPartyIndexes
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _080D82D4
- .align 2, 0
-_080D7D30: .4byte gBattlerPartyIndexes
-_080D7D34:
- ldr r5, _080D7D80 @ =gEffectBattler
- ldrb r0, [r5]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D7D98
- ldr r0, _080D7D84 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D7D88 @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D7D52
- ldr r4, _080D7D8C @ =gUnknown_83FD55B
-_080D7D52:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, _080D7D90 @ =gBattlerPartyIndexes
- ldr r2, _080D7D94 @ =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _080D7D74
-_080D7D62:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7D62
-_080D7D74:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- b _080D82A4
- .align 2, 0
-_080D7D80: .4byte gEffectBattler
-_080D7D84: .4byte gBattleTypeFlags
-_080D7D88: .4byte gUnknown_83FD555
-_080D7D8C: .4byte gUnknown_83FD55B
-_080D7D90: .4byte gBattlerPartyIndexes
-_080D7D94: .4byte gEnemyParty
-_080D7D98:
- ldr r1, _080D7DA4 @ =gBattlerPartyIndexes
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _080D82D4
- .align 2, 0
-_080D7DA4: .4byte gBattlerPartyIndexes
-_080D7DA8:
- ldr r5, _080D7DF4 @ =gActiveBattler
- ldrb r0, [r5]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D7E0C
- ldr r0, _080D7DF8 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D7DFC @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D7DC6
- ldr r4, _080D7E00 @ =gUnknown_83FD55B
-_080D7DC6:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, _080D7E04 @ =gBattlerPartyIndexes
- ldr r2, _080D7E08 @ =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _080D7DE8
-_080D7DD6:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7DD6
-_080D7DE8:
- ldrb r0, [r2]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- b _080D82A4
- .align 2, 0
-_080D7DF4: .4byte gActiveBattler
-_080D7DF8: .4byte gBattleTypeFlags
-_080D7DFC: .4byte gUnknown_83FD555
-_080D7E00: .4byte gUnknown_83FD55B
-_080D7E04: .4byte gBattlerPartyIndexes
-_080D7E08: .4byte gEnemyParty
-_080D7E0C:
- ldr r1, _080D7E18 @ =gBattlerPartyIndexes
- ldrb r0, [r5]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _080D82D4
- .align 2, 0
-_080D7E18: .4byte gBattlerPartyIndexes
-_080D7E1C:
- ldr r5, _080D7E68 @ =gBattleScripting
- ldrb r0, [r5, 0x17]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D7E80
- ldr r0, _080D7E6C @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D7E70 @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D7E3A
- ldr r4, _080D7E74 @ =gUnknown_83FD55B
-_080D7E3A:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r3, _080D7E78 @ =gBattlerPartyIndexes
- ldr r2, _080D7E7C @ =gEnemyParty
- mov r12, r2
- adds r2, r5, 0
- cmp r0, 0xFF
- beq _080D7E5C
-_080D7E4A:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D7E4A
-_080D7E5C:
- ldrb r0, [r2, 0x17]
- lsls r0, 1
- adds r0, r3
- ldrh r1, [r0]
- b _080D82A4
- .align 2, 0
-_080D7E68: .4byte gBattleScripting
-_080D7E6C: .4byte gBattleTypeFlags
-_080D7E70: .4byte gUnknown_83FD555
-_080D7E74: .4byte gUnknown_83FD55B
-_080D7E78: .4byte gBattlerPartyIndexes
-_080D7E7C: .4byte gEnemyParty
-_080D7E80:
- ldr r1, _080D7E8C @ =gBattlerPartyIndexes
- ldrb r0, [r5, 0x17]
- lsls r0, 1
- adds r0, r1
- ldrh r1, [r0]
- b _080D82D4
- .align 2, 0
-_080D7E8C: .4byte gBattlerPartyIndexes
-_080D7E90:
- ldr r0, _080D7EA4 @ =gUnknown_2039A34
- ldr r2, [r0]
- ldrh r1, [r2]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bhi _080D7EB6
- ldrh r1, [r2]
- b _080D7ED6
- .align 2, 0
-_080D7EA4: .4byte gUnknown_2039A34
-_080D7EA8:
- ldr r0, _080D7EC8 @ =gUnknown_2039A34
- ldr r2, [r0]
- ldrh r1, [r2, 0x2]
- movs r0, 0xB1
- lsls r0, 1
- cmp r1, r0
- bls _080D7ED4
-_080D7EB6:
- ldr r0, _080D7ECC @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x8E
- ldrb r0, [r0]
- lsls r0, 2
- ldr r1, _080D7ED0 @ =gUnknown_83FEA28
- adds r4, r0, r1
- b _080D8382
- .align 2, 0
-_080D7EC8: .4byte gUnknown_2039A34
-_080D7ECC: .4byte gBattleStruct
-_080D7ED0: .4byte gUnknown_83FEA28
-_080D7ED4:
- ldrh r1, [r2, 0x2]
-_080D7ED6:
- movs r0, 0xD
- muls r1, r0
- ldr r0, _080D7EE0 @ =gMoveNames
- adds r4, r1, r0
- b _080D8382
- .align 2, 0
-_080D7EE0: .4byte gMoveNames
-_080D7EE4:
- ldr r0, _080D7F1C @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D7F9C
- ldr r2, _080D7F20 @ =gLastUsedItem
- ldrh r0, [r2]
- cmp r0, 0xAF
- bne _080D7F98
- movs r0, 0x40
- ands r1, r0
- cmp r1, 0
- bne _080D7F44
- ldr r0, _080D7F24 @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB5
- ldrb r0, [r0]
- cmp r0, 0
- beq _080D7F2C
- ldr r2, _080D7F28 @ =gPotentialItemEffectBattler
- ldrb r1, [r2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080D7F38
- b _080D7F90
- .align 2, 0
-_080D7F1C: .4byte gBattleTypeFlags
-_080D7F20: .4byte gLastUsedItem
-_080D7F24: .4byte gBattleStruct
-_080D7F28: .4byte gPotentialItemEffectBattler
-_080D7F2C:
- ldr r2, _080D7F40 @ =gPotentialItemEffectBattler
- ldrb r1, [r2]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080D7F90
-_080D7F38:
- ldrb r0, [r2]
- lsls r1, r0, 3
- subs r1, r0
- b _080D7F64
- .align 2, 0
-_080D7F40: .4byte gPotentialItemEffectBattler
-_080D7F44:
- ldr r2, _080D7F7C @ =gLinkPlayers
- ldr r0, _080D7F80 @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB5
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, _080D7F84 @ =gPotentialItemEffectBattler
- ldrb r2, [r1]
- ldrh r0, [r0, 0x18]
- cmp r0, r2
- bne _080D7F90
- lsls r1, r2, 3
- subs r1, r2
-_080D7F64:
- lsls r1, 2
- ldr r0, _080D7F88 @ =gEnigmaBerries
- adds r1, r0
- mov r0, sp
- bl StringCopy
- ldr r1, _080D7F8C @ =gUnknown_83FD8AF
- mov r0, sp
- bl StringAppend
- mov r4, sp
- b _080D8382
- .align 2, 0
-_080D7F7C: .4byte gLinkPlayers
-_080D7F80: .4byte gBattleStruct
-_080D7F84: .4byte gPotentialItemEffectBattler
-_080D7F88: .4byte gEnigmaBerries
-_080D7F8C: .4byte gUnknown_83FD8AF
-_080D7F90:
- ldr r4, _080D7F94 @ =gUnknown_83FD8A2
- b _080D8382
- .align 2, 0
-_080D7F94: .4byte gUnknown_83FD8A2
-_080D7F98:
- ldrh r0, [r2]
- b _080D7FA0
-_080D7F9C:
- ldr r0, _080D7FAC @ =gLastUsedItem
- ldrh r0, [r0]
-_080D7FA0:
- mov r1, sp
- bl CopyItemName
- mov r4, sp
- b _080D8382
- .align 2, 0
-_080D7FAC: .4byte gLastUsedItem
-_080D7FB0:
- ldr r0, _080D7FB4 @ =gLastUsedAbility
- b _080D7FF0
- .align 2, 0
-_080D7FB4: .4byte gLastUsedAbility
-_080D7FB8:
- ldr r1, _080D7FC0 @ =gUnknown_2039A30
- ldr r0, _080D7FC4 @ =gBattlerAttacker
- b _080D7FEC
- .align 2, 0
-_080D7FC0: .4byte gUnknown_2039A30
-_080D7FC4: .4byte gBattlerAttacker
-_080D7FC8:
- ldr r1, _080D7FD0 @ =gUnknown_2039A30
- ldr r0, _080D7FD4 @ =gBattlerTarget
- b _080D7FEC
- .align 2, 0
-_080D7FD0: .4byte gUnknown_2039A30
-_080D7FD4: .4byte gBattlerTarget
-_080D7FD8:
- ldr r1, _080D7FE0 @ =gUnknown_2039A30
- ldr r0, _080D7FE4 @ =gBattleScripting
- ldrb r0, [r0, 0x17]
- b _080D7FEE
- .align 2, 0
-_080D7FE0: .4byte gUnknown_2039A30
-_080D7FE4: .4byte gBattleScripting
-_080D7FE8:
- ldr r1, _080D7FFC @ =gUnknown_2039A30
- ldr r0, _080D8000 @ =gEffectBattler
-_080D7FEC:
- ldrb r0, [r0]
-_080D7FEE:
- adds r0, r1
-_080D7FF0:
- ldrb r1, [r0]
- movs r0, 0xD
- muls r1, r0
- ldr r0, _080D8004 @ =gAbilityNames
- adds r4, r1, r0
- b _080D8382
- .align 2, 0
-_080D7FFC: .4byte gUnknown_2039A30
-_080D8000: .4byte gEffectBattler
-_080D8004: .4byte gAbilityNames
-_080D8008:
- ldr r3, _080D8020 @ =gTrainerBattleOpponent_A
- ldrh r1, [r3]
- movs r0, 0x80
- lsls r0, 3
- cmp r1, r0
- bne _080D8024
- bl GetSecretBaseTrainerNameIndex
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0xD
- b _080D8094
- .align 2, 0
-_080D8020: .4byte gTrainerBattleOpponent_A
-_080D8024:
- movs r0, 0xC0
- lsls r0, 4
- cmp r1, r0
- bne _080D8038
- bl sub_80447F0
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0xD
- b _080D8094
-_080D8038:
- ldr r0, _080D8054 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080D8058
- bl GetBattleTowerTrainerClassNameId
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0xD
- b _080D8094
- .align 2, 0
-_080D8054: .4byte gBattleTypeFlags
-_080D8058:
- movs r0, 0x80
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- beq _080D806E
- bl sub_815DA10
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0xD
- b _080D8094
-_080D806E:
- movs r0, 0x80
- lsls r0, 4
- ands r1, r0
- cmp r1, 0
- beq _080D8084
- bl GetEreaderTrainerClassId
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0xD
- b _080D8094
-_080D8084:
- ldr r2, _080D809C @ =gTrainers
- ldrh r1, [r3]
- lsls r0, r1, 2
- adds r0, r1
- lsls r0, 3
- adds r0, r2
- ldrb r1, [r0, 0x1]
- movs r0, 0xD
-_080D8094:
- muls r1, r0
- ldr r0, _080D80A0 @ =gTrainerClassNames
- adds r4, r1, r0
- b _080D8382
- .align 2, 0
-_080D809C: .4byte gTrainers
-_080D80A0: .4byte gTrainerClassNames
-_080D80A4:
- ldr r0, _080D80E8 @ =gTrainerBattleOpponent_A
- ldrh r2, [r0]
- movs r1, 0x80
- lsls r1, 3
- adds r5, r0, 0
- cmp r2, r1
- bne _080D80D6
- movs r2, 0
- ldr r0, _080D80EC @ =gBattleResources
- ldr r3, [r0]
-_080D80B8:
- mov r1, sp
- adds r0, r1, r2
- ldr r1, [r3]
- adds r1, 0x2
- adds r1, r2
- ldrb r1, [r1]
- strb r1, [r0]
- adds r2, 0x1
- cmp r2, 0x6
- ble _080D80B8
- mov r3, sp
- adds r1, r3, r2
- movs r0, 0xFF
- strb r0, [r1]
- mov r4, sp
-_080D80D6:
- ldrh r1, [r5]
- movs r0, 0xC0
- lsls r0, 4
- cmp r1, r0
- bne _080D80F0
- movs r1, 0x1
- adds r0, r7, 0
- eors r0, r1
- b _080D81C8
- .align 2, 0
-_080D80E8: .4byte gTrainerBattleOpponent_A
-_080D80EC: .4byte gBattleResources
-_080D80F0:
- ldr r0, _080D8108 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x80
- lsls r0, 1
- ands r0, r1
- cmp r0, 0
- beq _080D810C
- mov r0, sp
- bl GetBattleTowerTrainerName
- b _080D8382
- .align 2, 0
-_080D8108: .4byte gBattleTypeFlags
-_080D810C:
- movs r0, 0x80
- lsls r0, 12
- ands r0, r1
- cmp r0, 0
- beq _080D8120
- mov r0, sp
- bl sub_815DA28
- mov r4, sp
- b _080D8382
-_080D8120:
- movs r0, 0x80
- lsls r0, 4
- ands r1, r0
- cmp r1, 0
- beq _080D8134
- mov r0, sp
- bl CopyEReaderTrainerName5
- mov r4, sp
- b _080D8382
-_080D8134:
- ldr r2, _080D8158 @ =gTrainers
- ldrh r0, [r5]
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r0, r1, r2
- ldrb r0, [r0, 0x1]
- cmp r0, 0x51
- beq _080D814E
- cmp r0, 0x59
- beq _080D814E
- cmp r0, 0x5A
- bne _080D815C
-_080D814E:
- movs r0, 0x6
- bl GetExpandedPlaceholder
- adds r4, r0, 0
- b _080D8382
- .align 2, 0
-_080D8158: .4byte gTrainers
-_080D815C:
- adds r0, r2, 0x4
- adds r4, r1, r0
- b _080D8382
-_080D8162:
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- ldr r1, _080D8170 @ =gLinkPlayers + 8
- adds r4, r0, r1
- b _080D8382
- .align 2, 0
-_080D8170: .4byte gLinkPlayers + 8
-_080D8174:
- ldr r4, _080D8184 @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x18]
- movs r0, 0x2
- b _080D81AA
- .align 2, 0
-_080D8184: .4byte gLinkPlayers
-_080D8188:
- ldr r4, _080D8198 @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x18]
- movs r0, 0x1
- b _080D81AA
- .align 2, 0
-_080D8198: .4byte gLinkPlayers
-_080D819C:
- ldr r4, _080D81BC @ =gLinkPlayers
- lsls r0, r7, 3
- subs r0, r7
- lsls r0, 2
- adds r0, r4
- ldrh r1, [r0, 0x18]
- movs r0, 0x3
-_080D81AA:
- eors r0, r1
- bl GetBattlerMultiplayerId
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- adds r4, 0x8
- adds r4, r1, r4
- b _080D8382
- .align 2, 0
-_080D81BC: .4byte gLinkPlayers
-_080D81C0:
- ldr r0, _080D81D4 @ =gBattleScripting
- ldrb r0, [r0, 0x17]
- bl GetBattlerMultiplayerId
-_080D81C8:
- lsls r1, r0, 3
- subs r1, r0
- lsls r1, 2
- ldr r0, _080D81D8 @ =gLinkPlayers + 8
- adds r4, r1, r0
- b _080D8382
- .align 2, 0
-_080D81D4: .4byte gBattleScripting
-_080D81D8: .4byte gLinkPlayers + 8
-_080D81DC:
- ldr r0, _080D81E4 @ =gSaveBlock2Ptr
- ldr r4, [r0]
- b _080D8382
- .align 2, 0
-_080D81E4: .4byte gSaveBlock2Ptr
-_080D81E8:
- ldr r0, _080D8204 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 12
- ands r0, r1
- cmp r0, 0
- beq _080D820C
- ldr r4, _080D8208 @ =gStringVar4
- adds r0, r4, 0
- movs r1, 0
- bl sub_815DC40
- b _080D8382
- .align 2, 0
-_080D8204: .4byte gBattleTypeFlags
-_080D8208: .4byte gStringVar4
-_080D820C:
- bl GetTrainerALoseText
- adds r4, r0, 0
- b _080D8382
-_080D8214:
- ldr r0, _080D8230 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x80
- lsls r1, 12
- ands r0, r1
- cmp r0, 0
- beq _080D8238
- ldr r4, _080D8234 @ =gStringVar4
- adds r0, r4, 0
- movs r1, 0
- bl sub_815DBF4
- b _080D8382
- .align 2, 0
-_080D8230: .4byte gBattleTypeFlags
-_080D8234: .4byte gStringVar4
-_080D8238:
- bl GetTrainerWonSpeech
- adds r4, r0, 0
- b _080D8382
-_080D8240:
- ldr r4, _080D824C @ =gStringVar4
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_815DC40
- b _080D8382
- .align 2, 0
-_080D824C: .4byte gStringVar4
-_080D8250:
- ldr r4, _080D825C @ =gStringVar4
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_815DBF4
- b _080D8382
- .align 2, 0
-_080D825C: .4byte gStringVar4
-_080D8260:
- ldr r0, _080D82B4 @ =gBattleScripting
- ldrb r0, [r0, 0x17]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- beq _080D82CC
- ldr r0, _080D82B8 @ =gBattleTypeFlags
- ldr r1, [r0]
- movs r0, 0x8
- ands r1, r0
- ldr r4, _080D82BC @ =gUnknown_83FD555
- cmp r1, 0
- beq _080D827E
- ldr r4, _080D82C0 @ =gUnknown_83FD55B
-_080D827E:
- ldrb r1, [r4]
- adds r0, r1, 0
- ldr r5, _080D82C4 @ =gEnemyParty
- mov r12, r5
- ldr r2, _080D82C8 @ =gBattleStruct
- cmp r0, 0xFF
- beq _080D829E
-_080D828C:
- mov r3, r8
- adds r0, r3, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D828C
-_080D829E:
- ldr r0, [r2]
- adds r0, 0x52
- ldrb r1, [r0]
-_080D82A4:
- movs r0, 0x64
- muls r0, r1
- add r0, r12
-_080D82AA:
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _080D82E4
- .align 2, 0
-_080D82B4: .4byte gBattleScripting
-_080D82B8: .4byte gBattleTypeFlags
-_080D82BC: .4byte gUnknown_83FD555
-_080D82C0: .4byte gUnknown_83FD55B
-_080D82C4: .4byte gEnemyParty
-_080D82C8: .4byte gBattleStruct
-_080D82CC:
- ldr r0, _080D82F0 @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0x52
- ldrb r1, [r0]
-_080D82D4:
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D82F4 @ =gPlayerParty
-_080D82DA:
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_080D82E4:
- mov r0, sp
- bl StringGetEnd10
- mov r4, sp
- b _080D8382
- .align 2, 0
-_080D82F0: .4byte gBattleStruct
-_080D82F4: .4byte gPlayerParty
-_080D82F8:
- ldr r0, _080D830C @ =0x00000834
- bl FlagGet
- lsls r0, 24
- ldr r4, _080D8310 @ =gUnknown_83FD81A
- cmp r0, 0
- beq _080D8382
- ldr r4, _080D8314 @ =gUnknown_83FD824
- b _080D8382
- .align 2, 0
-_080D830C: .4byte 0x00000834
-_080D8310: .4byte gUnknown_83FD81A
-_080D8314: .4byte gUnknown_83FD824
-_080D8318:
- ldr r0, _080D831C @ =gBattlerAttacker
- b _080D8322
- .align 2, 0
-_080D831C: .4byte gBattlerAttacker
-_080D8320:
- ldr r0, _080D8334 @ =gBattlerTarget
-_080D8322:
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- ldr r4, _080D8338 @ =gUnknown_83FD569
- cmp r0, 0
- bne _080D8382
- ldr r4, _080D833C @ =gUnknown_83FD56D
- b _080D8382
- .align 2, 0
-_080D8334: .4byte gBattlerTarget
-_080D8338: .4byte gUnknown_83FD569
-_080D833C: .4byte gUnknown_83FD56D
-_080D8340:
- ldr r0, _080D8344 @ =gBattlerAttacker
- b _080D834A
- .align 2, 0
-_080D8344: .4byte gBattlerAttacker
-_080D8348:
- ldr r0, _080D835C @ =gBattlerTarget
-_080D834A:
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- ldr r4, _080D8360 @ =gUnknown_83FD560
- cmp r0, 0
- bne _080D8382
- ldr r4, _080D8364 @ =gUnknown_83FD564
- b _080D8382
- .align 2, 0
-_080D835C: .4byte gBattlerTarget
-_080D8360: .4byte gUnknown_83FD560
-_080D8364: .4byte gUnknown_83FD564
-_080D8368:
- ldr r0, _080D836C @ =gBattlerAttacker
- b _080D8372
- .align 2, 0
-_080D836C: .4byte gBattlerAttacker
-_080D8370:
- ldr r0, _080D83D4 @ =gBattlerTarget
-_080D8372:
- ldrb r0, [r0]
- bl GetBattlerSide
- lsls r0, 24
- ldr r4, _080D83D8 @ =gUnknown_83FD572
- cmp r0, 0
- bne _080D8382
- ldr r4, _080D83DC @ =gUnknown_83FD576
-_080D8382:
- ldrb r1, [r4]
- adds r0, r1, 0
- mov r5, r9
- ldrb r2, [r5]
- mov r3, r9
- adds r3, 0x1
- cmp r0, 0xFF
- beq _080D83A4
-_080D8392:
- mov r5, r8
- adds r0, r5, r6
- strb r1, [r0]
- adds r6, 0x1
- adds r4, 0x1
- ldrb r1, [r4]
- adds r0, r1, 0
- cmp r0, 0xFF
- bne _080D8392
-_080D83A4:
- adds r0, r2, 0
- subs r0, 0x24
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bls _080D83BC
- lsls r0, r2, 24
- lsrs r0, 24
- cmp r0, 0x2E
- beq _080D83BC
- cmp r0, 0x2F
- bne _080D83EC
-_080D83BC:
- mov r0, r8
- adds r1, r0, r6
- movs r0, 0xFC
- strb r0, [r1]
- adds r6, 0x1
- mov r2, r8
- adds r1, r2, r6
- movs r0, 0x9
- strb r0, [r1]
- adds r6, 0x1
- b _080D83EC
- .align 2, 0
-_080D83D4: .4byte gBattlerTarget
-_080D83D8: .4byte gUnknown_83FD572
-_080D83DC: .4byte gUnknown_83FD576
-_080D83E0:
- mov r3, r8
- adds r0, r3, r6
- strb r1, [r0]
- adds r6, 0x1
- mov r3, r9
- adds r3, 0x1
-_080D83EC:
- mov r9, r3
- ldrb r1, [r3]
-_080D83F0:
- adds r0, r1, 0
- cmp r0, 0xFF
- beq _080D83FA
- bl _080D788A
-_080D83FA:
- mov r5, r8
- adds r1, r5, r6
- mov r2, r9
- ldrb r0, [r2]
- strb r0, [r1]
- adds r6, 0x1
- adds r0, r6, 0
- add sp, 0x20
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end BattleStringExpandPlaceholders
-
- thumb_func_start ExpandBattleTextBuffPlaceholders
-ExpandBattleTextBuffPlaceholders: @ 80D8418
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- adds r7, r0, 0
- adds r6, r1, 0
- movs r5, 0x1
- movs r0, 0
- mov r8, r0
- movs r0, 0xFF
- strb r0, [r6]
- ldrb r0, [r7, 0x1]
- cmp r0, 0xFF
- bne _080D8436
- b _080D86BA
-_080D8436:
- adds r0, r7, r5
- ldrb r1, [r0]
- adds r4, r0, 0
- cmp r1, 0xA
- bls _080D8442
- b _080D86B0
-_080D8442:
- lsls r0, r1, 2
- ldr r1, _080D844C @ =_080D8450
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080D844C: .4byte _080D8450
- .align 2, 0
-_080D8450:
- .4byte _080D847C
- .4byte _080D8498
- .4byte _080D84EC
- .4byte _080D8504
- .4byte _080D8514
- .4byte _080D858C
- .4byte _080D85A0
- .4byte _080D85B2
- .4byte _080D85F8
- .4byte _080D860C
- .4byte _080D8628
-_080D847C:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- ldr r0, _080D8494 @ =gBattleStringsTable
- subs r1, 0xC
- lsls r1, 2
- adds r1, r0
- ldr r1, [r1]
- b _080D868E
- .align 2, 0
-_080D8494: .4byte gBattleStringsTable
-_080D8498:
- ldrb r0, [r4, 0x1]
- cmp r0, 0x2
- beq _080D84B4
- cmp r0, 0x2
- bgt _080D84A8
- cmp r0, 0x1
- beq _080D84AE
- b _080D84D6
-_080D84A8:
- cmp r0, 0x4
- beq _080D84BC
- b _080D84D6
-_080D84AE:
- ldrb r4, [r4, 0x3]
- mov r8, r4
- b _080D84D6
-_080D84B4:
- ldrb r1, [r4, 0x3]
- ldrb r0, [r4, 0x4]
- lsls r0, 8
- b _080D84D2
-_080D84BC:
- ldrb r0, [r4, 0x3]
- mov r8, r0
- ldrb r0, [r4, 0x4]
- lsls r0, 8
- mov r1, r8
- orrs r1, r0
- ldrb r0, [r4, 0x5]
- lsls r0, 16
- orrs r1, r0
- ldrb r0, [r4, 0x6]
- lsls r0, 24
-_080D84D2:
- orrs r1, r0
- mov r8, r1
-_080D84D6:
- adds r4, r5, r7
- ldrb r3, [r4, 0x2]
- adds r0, r6, 0
- mov r1, r8
- movs r2, 0
- bl ConvertIntToDecimalStringN
- adds r0, r5, 0x3
- ldrb r4, [r4, 0x1]
- adds r5, r0, r4
- b _080D86B0
-_080D84EC:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- movs r0, 0xD
- muls r1, r0
- ldr r0, _080D8500 @ =gMoveNames
- adds r1, r0
- b _080D868E
- .align 2, 0
-_080D8500: .4byte gMoveNames
-_080D8504:
- adds r0, r5, r7
- ldrb r0, [r0, 0x1]
- lsls r1, r0, 3
- subs r1, r0
- ldr r0, _080D8510 @ =gTypeNames
- b _080D8616
- .align 2, 0
-_080D8510: .4byte gTypeNames
-_080D8514:
- ldrb r0, [r4, 0x1]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D8538
- ldrb r1, [r4, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D8534 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
- b _080D8574
- .align 2, 0
-_080D8534: .4byte gPlayerParty
-_080D8538:
- ldr r0, _080D8550 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080D8558
- ldr r1, _080D8554 @ =gUnknown_83FD55B
- adds r0, r6, 0
- bl StringAppend
- b _080D8560
- .align 2, 0
-_080D8550: .4byte gBattleTypeFlags
-_080D8554: .4byte gUnknown_83FD55B
-_080D8558:
- ldr r1, _080D8584 @ =gUnknown_83FD555
- adds r0, r6, 0
- bl StringAppend
-_080D8560:
- adds r0, r5, r7
- ldrb r1, [r0, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D8588 @ =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- mov r2, sp
- bl GetMonData
-_080D8574:
- mov r0, sp
- bl StringGetEnd10
- adds r0, r6, 0
- mov r1, sp
- bl StringAppend
- b _080D86AE
- .align 2, 0
-_080D8584: .4byte gUnknown_83FD555
-_080D8588: .4byte gEnemyParty
-_080D858C:
- ldr r1, _080D859C @ =gUnknown_83FD5D0
- adds r0, r5, r7
- ldrb r0, [r0, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- b _080D8618
- .align 2, 0
-_080D859C: .4byte gUnknown_83FD5D0
-_080D85A0:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r1, r0
- adds r0, r6, 0
- bl GetSpeciesName
- b _080D86AE
-_080D85B2:
- adds r4, r5, r7
- ldrb r0, [r4, 0x1]
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _080D85D8
- ldrb r1, [r4, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D85D4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2
- adds r2, r6, 0
- bl GetMonData
- b _080D85EA
- .align 2, 0
-_080D85D4: .4byte gPlayerParty
-_080D85D8:
- ldrb r1, [r4, 0x2]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _080D85F4 @ =gEnemyParty
- adds r0, r1
- movs r1, 0x2
- adds r2, r6, 0
- bl GetMonData
-_080D85EA:
- adds r0, r6, 0
- bl StringGetEnd10
- b _080D86AE
- .align 2, 0
-_080D85F4: .4byte gEnemyParty
-_080D85F8:
- ldr r1, _080D8608 @ =gUnknown_83FD63C
- adds r0, r5, r7
- ldrb r0, [r0, 0x1]
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- b _080D8618
- .align 2, 0
-_080D8608: .4byte gUnknown_83FD63C
-_080D860C:
- adds r0, r5, r7
- ldrb r1, [r0, 0x1]
- movs r0, 0xD
- muls r1, r0
- ldr r0, _080D8624 @ =gAbilityNames
-_080D8616:
- adds r1, r0
-_080D8618:
- adds r0, r6, 0
- bl StringAppend
- adds r5, 0x2
- b _080D86B0
- .align 2, 0
-_080D8624: .4byte gAbilityNames
-_080D8628:
- adds r0, r5, r7
- ldrb r2, [r0, 0x1]
- ldrb r0, [r0, 0x2]
- lsls r0, 8
- orrs r2, r0
- ldr r0, _080D8674 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D86A6
- cmp r2, 0xAF
- bne _080D869C
- ldr r2, _080D8678 @ =gLinkPlayers
- ldr r0, _080D867C @ =gBattleStruct
- ldr r0, [r0]
- adds r0, 0xB5
- ldrb r1, [r0]
- lsls r0, r1, 3
- subs r0, r1
- lsls r0, 2
- adds r0, r2
- ldr r1, _080D8680 @ =gPotentialItemEffectBattler
- ldrb r2, [r1]
- ldrh r0, [r0, 0x18]
- cmp r0, r2
- bne _080D868C
- lsls r1, r2, 3
- subs r1, r2
- lsls r1, 2
- ldr r0, _080D8684 @ =gEnigmaBerries
- adds r1, r0
- adds r0, r6, 0
- bl StringCopy
- ldr r1, _080D8688 @ =gUnknown_83FD8AF
- b _080D868E
- .align 2, 0
-_080D8674: .4byte gBattleTypeFlags
-_080D8678: .4byte gLinkPlayers
-_080D867C: .4byte gBattleStruct
-_080D8680: .4byte gPotentialItemEffectBattler
-_080D8684: .4byte gEnigmaBerries
-_080D8688: .4byte gUnknown_83FD8AF
-_080D868C:
- ldr r1, _080D8698 @ =gUnknown_83FD8A2
-_080D868E:
- adds r0, r6, 0
- bl StringAppend
- b _080D86AE
- .align 2, 0
-_080D8698: .4byte gUnknown_83FD8A2
-_080D869C:
- adds r0, r2, 0
- adds r1, r6, 0
- bl CopyItemName
- b _080D86AE
-_080D86A6:
- adds r0, r2, 0
- adds r1, r6, 0
- bl CopyItemName
-_080D86AE:
- adds r5, 0x3
-_080D86B0:
- adds r0, r7, r5
- ldrb r0, [r0]
- cmp r0, 0xFF
- beq _080D86BA
- b _080D8436
-_080D86BA:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end ExpandBattleTextBuffPlaceholders
-
- thumb_func_start sub_80D86C8
-sub_80D86C8: @ 80D86C8
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r2, 0
- ldr r5, _080D86FC @ =gUnknown_2039A34
- ldr r3, _080D8700 @ =gUnknown_83FEA70
-_080D86D2:
- cmp r2, 0x4
- beq _080D86E8
- ldrh r1, [r3]
- cmp r1, 0
- bne _080D86DE
- adds r2, 0x1
-_080D86DE:
- ldr r0, [r5]
- adds r3, 0x2
- ldrh r0, [r0]
- cmp r1, r0
- bne _080D86D2
-_080D86E8:
- cmp r2, 0
- blt _080D8714
- cmp r2, 0x2
- bgt _080D8708
- ldr r1, _080D8704 @ =gUnknown_83FE88B
- adds r0, r4, 0
- bl StringCopy
- b _080D8714
- .align 2, 0
-_080D86FC: .4byte gUnknown_2039A34
-_080D8700: .4byte gUnknown_83FEA70
-_080D8704: .4byte gUnknown_83FE88B
-_080D8708:
- cmp r2, 0x4
- bgt _080D8714
- ldr r1, _080D871C @ =gUnknown_83FE88F
- adds r0, r4, 0
- bl StringCopy
-_080D8714:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D871C: .4byte gUnknown_83FE88F
- thumb_func_end sub_80D86C8
-
- thumb_func_start sub_80D8720
-sub_80D8720: @ 80D8720
- push {r4,r5,lr}
- adds r3, r0, 0
- movs r4, 0
- b _080D872A
-_080D8728:
- adds r3, 0x1
-_080D872A:
- ldrb r0, [r3]
- cmp r0, 0xFF
- bne _080D8728
- ldr r1, _080D8760 @ =gUnknown_83FEA70
- ldr r5, _080D8764 @ =gUnknown_2039A34
- movs r0, 0
- lsls r0, 1
- adds r2, r0, r1
-_080D873A:
- cmp r4, 0x4
- beq _080D8754
- ldrh r1, [r2]
- cmp r1, 0
- bne _080D8746
- adds r4, 0x1
-_080D8746:
- ldr r0, [r5]
- adds r2, 0x2
- ldrh r0, [r0]
- cmp r1, r0
- bne _080D873A
- cmp r4, 0x4
- bhi _080D87B0
-_080D8754:
- lsls r0, r4, 2
- ldr r1, _080D8768 @ =_080D876C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_080D8760: .4byte gUnknown_83FEA70
-_080D8764: .4byte gUnknown_2039A34
-_080D8768: .4byte _080D876C
- .align 2, 0
-_080D876C:
- .4byte _080D8780
- .4byte _080D8788
- .4byte _080D8790
- .4byte _080D8798
- .4byte _080D87A8
-_080D8780:
- ldr r1, _080D8784 @ =gUnknown_83FD586
- b _080D879A
- .align 2, 0
-_080D8784: .4byte gUnknown_83FD586
-_080D8788:
- ldr r1, _080D878C @ =gUnknown_83FD588
- b _080D879A
- .align 2, 0
-_080D878C: .4byte gUnknown_83FD588
-_080D8790:
- ldr r1, _080D8794 @ =gUnknown_83FD58A
- b _080D879A
- .align 2, 0
-_080D8794: .4byte gUnknown_83FD58A
-_080D8798:
- ldr r1, _080D87A4 @ =gUnknown_83FD58C
-_080D879A:
- adds r0, r3, 0
- bl StringCopy
- b _080D87B0
- .align 2, 0
-_080D87A4: .4byte gUnknown_83FD58C
-_080D87A8:
- ldr r1, _080D87B8 @ =gUnknown_83FD58E
- adds r0, r3, 0
- bl StringCopy
-_080D87B0:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D87B8: .4byte gUnknown_83FD58E
- thumb_func_end sub_80D8720
-
- thumb_func_start BattlePutTextOnWindow
-BattlePutTextOnWindow: @ 80D87BC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- adds r4, r0, 0
- lsls r1, 24
- lsrs r7, r1, 24
- movs r0, 0xC0
- mov r8, r0
- mov r1, r8
- ands r1, r7
- mov r8, r1
- movs r0, 0x3F
- ands r7, r0
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _080D87F2
- ldr r0, _080D8814 @ =gUnknown_83FEB64
- lsls r1, r7, 1
- adds r1, r7
- lsls r1, 2
- adds r1, r0
- ldrb r1, [r1]
- adds r0, r7, 0
- bl FillWindowPixelBuffer
-_080D87F2:
- movs r0, 0x40
- mov r1, r8
- ands r0, r1
- cmp r0, 0
- beq _080D881C
- bl ContextNpcGetTextColor
- lsls r0, 24
- lsrs r0, 24
- mov r2, sp
- ldr r1, _080D8818 @ =gUnknown_83FEC90
- adds r0, r1
- ldrb r0, [r0]
- strb r0, [r2, 0x5]
- lsls r6, r7, 1
- b _080D882E
- .align 2, 0
-_080D8814: .4byte gUnknown_83FEB64
-_080D8818: .4byte gUnknown_83FEC90
-_080D881C:
- mov r3, sp
- ldr r1, _080D884C @ =gUnknown_83FEB64
- lsls r2, r7, 1
- adds r0, r2, r7
- lsls r0, 2
- adds r0, r1
- ldrb r0, [r0, 0x1]
- strb r0, [r3, 0x5]
- adds r6, r2, 0
-_080D882E:
- cmp r7, 0xF
- blt _080D8878
- cmp r7, 0x14
- bgt _080D8850
- ldr r0, _080D884C @ =gUnknown_83FEB64
- adds r1, r6, r7
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- ldrb r2, [r1, 0x4]
- adds r1, r4, 0
- bl GetStringWidth
- movs r1, 0x30
- b _080D8868
- .align 2, 0
-_080D884C: .4byte gUnknown_83FEB64
-_080D8850:
- cmp r7, 0x17
- bgt _080D8878
- ldr r0, _080D8874 @ =gUnknown_83FEB64
- adds r1, r6, r7
- lsls r1, 2
- adds r1, r0
- ldrb r0, [r1, 0x1]
- ldrb r2, [r1, 0x4]
- adds r1, r4, 0
- bl GetStringWidth
- movs r1, 0x40
-_080D8868:
- subs r1, r0
- lsrs r0, r1, 31
- adds r1, r0
- asrs r1, 1
- b _080D8882
- .align 2, 0
-_080D8874: .4byte gUnknown_83FEB64
-_080D8878:
- ldr r1, _080D88F8 @ =gUnknown_83FEB64
- adds r0, r6, r7
- lsls r0, 2
- adds r0, r1
- ldrb r1, [r0, 0x2]
-_080D8882:
- cmp r1, 0
- bge _080D8888
- movs r1, 0
-_080D8888:
- str r4, [sp]
- mov r0, sp
- strb r7, [r0, 0x4]
- strb r1, [r0, 0x6]
- mov r1, sp
- ldr r0, _080D88F8 @ =gUnknown_83FEB64
- mov r12, r0
- adds r3, r6, r7
- lsls r3, 2
- add r3, r12
- ldrb r0, [r3, 0x3]
- strb r0, [r1, 0x7]
- mov r0, sp
- ldrb r0, [r0, 0x6]
- strb r0, [r1, 0x8]
- mov r0, sp
- ldrb r0, [r0, 0x7]
- strb r0, [r1, 0x9]
- ldrb r0, [r3, 0x4]
- strb r0, [r1, 0xA]
- ldrb r0, [r3, 0x5]
- strb r0, [r1, 0xB]
- mov r4, sp
- ldrb r2, [r4, 0xC]
- movs r1, 0x10
- negs r1, r1
- adds r0, r1, 0
- ands r0, r2
- strb r0, [r4, 0xC]
- mov r2, sp
- ldrb r0, [r3, 0x7]
- lsls r0, 4
- movs r5, 0xF
- strb r0, [r2, 0xC]
- ldrb r2, [r3, 0x8]
- adds r0, r5, 0
- ands r0, r2
- ldrb r2, [r4, 0xD]
- ands r1, r2
- orrs r1, r0
- strb r1, [r4, 0xD]
- mov r2, sp
- ldrb r0, [r3, 0x9]
- lsls r0, 4
- ands r1, r5
- orrs r1, r0
- strb r1, [r2, 0xD]
- mov r3, r12
- cmp r7, 0x18
- bne _080D8900
- ldr r0, _080D88FC @ =gTextFlags
- ldrb r2, [r0]
- movs r1, 0x3
- negs r1, r1
- ands r1, r2
- b _080D8908
- .align 2, 0
-_080D88F8: .4byte gUnknown_83FEB64
-_080D88FC: .4byte gTextFlags
-_080D8900:
- ldr r0, _080D8930 @ =gTextFlags
- ldrb r1, [r0]
- movs r2, 0x2
- orrs r1, r2
-_080D8908:
- strb r1, [r0]
- adds r4, r0, 0
- ldr r1, _080D8934 @ =gBattleTypeFlags
- ldr r2, [r1]
- movs r0, 0x2
- ands r0, r2
- adds r5, r1, 0
- cmp r0, 0
- bne _080D8928
- movs r0, 0x80
- lsls r0, 9
- ands r2, r0
- cmp r2, 0
- beq _080D8938
- cmp r7, 0x18
- beq _080D8938
-_080D8928:
- ldrb r0, [r4]
- movs r1, 0x4
- orrs r0, r1
- b _080D8940
- .align 2, 0
-_080D8930: .4byte gTextFlags
-_080D8934: .4byte gBattleTypeFlags
-_080D8938:
- ldrb r1, [r4]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
-_080D8940:
- strb r0, [r4]
- cmp r7, 0
- beq _080D894A
- cmp r7, 0x18
- bne _080D8970
-_080D894A:
- ldr r0, [r5]
- movs r1, 0x2
- ands r0, r1
- cmp r0, 0
- beq _080D8958
- movs r3, 0x1
- b _080D8960
-_080D8958:
- bl GetTextSpeedSetting
- lsls r0, 24
- lsrs r3, r0, 24
-_080D8960:
- ldr r0, _080D896C @ =gTextFlags
- ldrb r1, [r0]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0]
- b _080D8982
- .align 2, 0
-_080D896C: .4byte gTextFlags
-_080D8970:
- adds r0, r6, r7
- lsls r0, 2
- adds r0, r3
- ldrb r3, [r0, 0x6]
- ldrb r1, [r4]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r4]
-_080D8982:
- mov r0, sp
- adds r1, r3, 0
- movs r2, 0
- bl AddTextPrinter
- movs r0, 0x80
- mov r1, r8
- ands r1, r0
- cmp r1, 0
- bne _080D89A4
- adds r0, r7, 0
- bl PutWindowTilemap
- adds r0, r7, 0
- movs r1, 0x3
- bl CopyWindowToVram
-_080D89A4:
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end BattlePutTextOnWindow
-
- thumb_func_start sub_80D89B0
-sub_80D89B0: @ 80D89B0
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0xC
- beq _080D89CC
- ldr r0, _080D89D0 @ =0x00000177
- cmp r1, r0
- beq _080D89CC
- adds r0, 0x8
- cmp r1, r0
- beq _080D89CC
- subs r0, 0x7
- cmp r1, r0
- bne _080D89D4
-_080D89CC:
- movs r0, 0x1
- b _080D89D6
- .align 2, 0
-_080D89D0: .4byte 0x00000177
-_080D89D4:
- movs r0, 0
-_080D89D6:
- pop {r1}
- bx r1
- thumb_func_end sub_80D89B0
-
- thumb_func_start SetPpNumbersPaletteInMoveSelection
-SetPpNumbersPaletteInMoveSelection: @ 80D89DC
- push {r4,r5,lr}
- ldr r0, _080D8A38 @ =gActiveBattler
- ldrb r2, [r0]
- lsls r1, r2, 9
- ldr r0, _080D8A3C @ =gBattleBufferA + 4
- adds r1, r0
- ldr r4, _080D8A40 @ =gUnknown_8D2FBB4
- ldr r0, _080D8A44 @ =gMoveSelectionCursor
- adds r2, r0
- ldrb r2, [r2]
- adds r0, r1, 0
- adds r0, 0x8
- adds r0, r2
- ldrb r0, [r0]
- adds r1, 0xC
- adds r1, r2
- ldrb r1, [r1]
- bl GetCurrentPpToMaxPpState
- lsls r0, 24
- ldr r5, _080D8A48 @ =gPlttBufferUnfaded
- lsrs r0, 22
- adds r0, r4
- ldrh r1, [r0]
- adds r2, r5, 0
- adds r2, 0xB8
- strh r1, [r2]
- ldrh r0, [r0, 0x2]
- adds r5, 0xB6
- strh r0, [r5]
- ldr r4, _080D8A4C @ =gPlttBufferFaded + 0xB8
- adds r0, r2, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl CpuSet
- subs r4, 0x2
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl CpuSet
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080D8A38: .4byte gActiveBattler
-_080D8A3C: .4byte gBattleBufferA + 4
-_080D8A40: .4byte gUnknown_8D2FBB4
-_080D8A44: .4byte gMoveSelectionCursor
-_080D8A48: .4byte gPlttBufferUnfaded
-_080D8A4C: .4byte gPlttBufferFaded + 0xB8
- thumb_func_end SetPpNumbersPaletteInMoveSelection
-
- thumb_func_start GetCurrentPpToMaxPpState
-GetCurrentPpToMaxPpState: @ 80D8A50
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r3, r2, 0
- lsls r1, 24
- lsrs r0, r1, 24
- cmp r0, r2
- beq _080D8A98
- cmp r0, 0x2
- bhi _080D8A6A
- cmp r2, 0x1
- bhi _080D8A98
- b _080D8A72
-_080D8A6A:
- cmp r0, 0x7
- bhi _080D8A7C
- cmp r2, 0x2
- bhi _080D8A98
-_080D8A72:
- movs r0, 0x2
- subs r0, r2
- lsls r0, 24
- lsrs r0, 24
- b _080D8A9A
-_080D8A7C:
- cmp r2, 0
- bne _080D8A84
- movs r0, 0x2
- b _080D8A9A
-_080D8A84:
- lsrs r0, r1, 26
- cmp r2, r0
- bhi _080D8A8E
- movs r0, 0x1
- b _080D8A9A
-_080D8A8E:
- lsrs r0, r1, 25
- cmp r3, r0
- bhi _080D8A98
- movs r0, 0
- b _080D8A9A
-_080D8A98:
- movs r0, 0x3
-_080D8A9A:
- pop {r1}
- bx r1
- thumb_func_end GetCurrentPpToMaxPpState
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index dd84f75c1..c0efe9975 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -2572,7 +2572,7 @@ _0806DC78:
bl sub_805550C
ldrb r0, [r4, 0x7]
ldrb r1, [r4, 0x6]
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldr r1, [r0, 0x4]
ldrb r0, [r4, 0x5]
ldr r1, [r1, 0x8]
diff --git a/asm/field_effect.s b/asm/field_effect.s
index a8542fcc3..41c33c6fc 100644
--- a/asm/field_effect.s
+++ b/asm/field_effect.s
@@ -2014,7 +2014,7 @@ task00_8084310: @ 8084310
ldrsh r6, [r4, r0]
cmp r6, 0
bne _08084350
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
cmp r0, 0
beq _08084376
@@ -2287,7 +2287,7 @@ _08084560: .4byte gSprites
sub_8084564: @ 8084564
push {r4,lr}
adds r4, r0, 0
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
cmp r0, 0
beq _08084578
@@ -4002,7 +4002,7 @@ sub_8085274: @ 8085274
adds r4, r0, 0
adds r5, r1, 0
adds r6, r2, 0
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
cmp r0, 0
beq _080852B4
@@ -5025,7 +5025,7 @@ _08085A50: .4byte gTasks
sub_8085A54: @ 8085A54
push {r4,lr}
adds r4, r0, 0
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
cmp r0, 0
beq _08085A78
@@ -5492,7 +5492,7 @@ _08085E08: .4byte gTasks
sub_8085E0C: @ 8085E0C
push {r4-r6,lr}
adds r6, r0, 0
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
cmp r0, 0
beq _08085E82
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index 8787ff647..8c782d3dd 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -376,7 +376,7 @@ sub_805E080: @ 805E080
str r0, [sp, 0x8]
adds r0, r6, 0
adds r1, r7, 0
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldr r1, [r0, 0x4]
lsls r0, r4, 1
adds r0, r4
@@ -4294,7 +4294,7 @@ _0805FD90: .4byte gMapHeader
_0805FD94:
adds r0, r2, 0
adds r1, r3, 0
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldr r0, [r0, 0x4]
ldr r1, [r0, 0x4]
_0805FDA0:
diff --git a/asm/field_weather.s b/asm/field_weather.s
index b65548171..ece13573f 100644
--- a/asm/field_weather.s
+++ b/asm/field_weather.s
@@ -1889,8 +1889,8 @@ _0807AA68: .4byte 0x000006ca
_0807AA6C: .4byte 0x000006cb
thumb_func_end FieldWeather_StartFadingOutCreditsMap
- thumb_func_start field_weather_is_fade_finished
-field_weather_is_fade_finished: @ 807AA70
+ thumb_func_start IsWeatherNotFadingIn
+IsWeatherNotFadingIn: @ 807AA70
ldr r0, _0807AA84 @ =gUnknown_2037F34
ldr r1, _0807AA88 @ =0x000006c6
adds r0, r1
@@ -1904,7 +1904,7 @@ field_weather_is_fade_finished: @ 807AA70
.align 2, 0
_0807AA84: .4byte gUnknown_2037F34
_0807AA88: .4byte 0x000006c6
- thumb_func_end field_weather_is_fade_finished
+ thumb_func_end IsWeatherNotFadingIn
thumb_func_start sub_807AA8C
sub_807AA8C: @ 807AA8C
diff --git a/asm/fldeff_cut.s b/asm/fldeff_cut.s
index ec892e0bb..d56ccd500 100644
--- a/asm/fldeff_cut.s
+++ b/asm/fldeff_cut.s
@@ -24,8 +24,8 @@ sub_8097874: @ 8097874
bx r1
thumb_func_end sub_8097874
- thumb_func_start sub_8097898
-sub_8097898: @ 8097898
+ thumb_func_start SetUpFieldMove_Cut
+SetUpFieldMove_Cut: @ 8097898
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -138,7 +138,7 @@ _08097970:
.align 2, 0
_0809797C: .4byte gPlayerFacingPosition
_08097980: .4byte 0x0000ffff
- thumb_func_end sub_8097898
+ thumb_func_end SetUpFieldMove_Cut
thumb_func_start sub_8097984
sub_8097984: @ 8097984
diff --git a/asm/fldeff_flash.s b/asm/fldeff_flash.s
index 51e55de63..23f86d6b7 100644
--- a/asm/fldeff_flash.s
+++ b/asm/fldeff_flash.s
@@ -5,8 +5,8 @@
.text
- thumb_func_start sub_80C9B2C
-sub_80C9B2C: @ 80C9B2C
+ thumb_func_start SetUpFieldMove_Flash
+SetUpFieldMove_Flash: @ 80C9B2C
push {lr}
ldr r0, _080C9B54 @ =gMapHeader
ldrb r0, [r0, 0x15]
@@ -37,7 +37,7 @@ _080C9B6C:
_080C9B6E:
pop {r1}
bx r1
- thumb_func_end sub_80C9B2C
+ thumb_func_end SetUpFieldMove_Flash
thumb_func_start sub_80C9B74
sub_80C9B74: @ 80C9B74
diff --git a/asm/item_menu.s b/asm/item_menu.s
index a8487864a..3f662656e 100644
--- a/asm/item_menu.s
+++ b/asm/item_menu.s
@@ -5,8 +5,8 @@
.text
- thumb_func_start sub_8107DB4
-sub_8107DB4: @ 8107DB4
+ thumb_func_start GoToBagMenu
+GoToBagMenu: @ 8107DB4
push {r4-r7,lr}
mov r7, r8
push {r7}
@@ -136,19 +136,19 @@ _08107EA8: .4byte gSpecialVar_ItemId
_08107EAC: .4byte sub_8107F10
_08107EB0: .4byte gUnknown_203AD10
_08107EB4: .4byte gUnknown_203ACFC
- thumb_func_end sub_8107DB4
+ thumb_func_end GoToBagMenu
thumb_func_start CB2_BagMenuFromStartMenu
CB2_BagMenuFromStartMenu: @ 8107EB8
push {lr}
- ldr r2, _08107EC8 @ =CB2_ReturnToStartMenu
+ ldr r2, _08107EC8 @ =CB2_ReturnToFieldWithOpenMenu
movs r0, 0
movs r1, 0x3
- bl sub_8107DB4
+ bl GoToBagMenu
pop {r0}
bx r0
.align 2, 0
-_08107EC8: .4byte CB2_ReturnToStartMenu
+_08107EC8: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end CB2_BagMenuFromStartMenu
thumb_func_start sub_8107ECC
@@ -157,7 +157,7 @@ sub_8107ECC: @ 8107ECC
ldr r2, _08107EDC @ =SetCB2ToReshowScreenAfterMenu2
movs r0, 0x5
movs r1, 0x3
- bl sub_8107DB4
+ bl GoToBagMenu
pop {r0}
bx r0
.align 2, 0
@@ -1934,15 +1934,15 @@ _08108CE8: .4byte 0x0000fff0
_08108CEC: .4byte gUnknown_203ACFC
thumb_func_end sub_8108CB4
- thumb_func_start sub_8108CF0
-sub_8108CF0: @ 8108CF0
+ thumb_func_start CB2_SetUpReshowBattleScreenAfterMenu
+CB2_SetUpReshowBattleScreenAfterMenu: @ 8108CF0
ldr r1, _08108CF8 @ =gUnknown_203ACFC
movs r0, 0
strb r0, [r1, 0x5]
bx lr
.align 2, 0
_08108CF8: .4byte gUnknown_203ACFC
- thumb_func_end sub_8108CF0
+ thumb_func_end CB2_SetUpReshowBattleScreenAfterMenu
thumb_func_start sub_8108CFC
sub_8108CFC: @ 8108CFC
@@ -2514,7 +2514,7 @@ sub_8109140: @ 8109140
movs r1, 0
movs r2, 0xE
movs r3, 0x1E
- bl SetBgRectPal
+ bl SetBgTilemapPalette
movs r0, 0x1
bl ScheduleBgCopyTilemapToVram
add sp, 0x8
@@ -4399,7 +4399,7 @@ _0810A120:
_0810A13E:
ldr r0, _0810A154 @ =gUnknown_203AD10
ldr r1, [r0]
- ldr r0, _0810A158 @ =sub_8126EDC
+ ldr r0, _0810A158 @ =CB2_ChooseMonToGiveItem
str r0, [r1]
mov r0, r8
subs r0, 0x8
@@ -4409,7 +4409,7 @@ _0810A13E:
b _0810A166
.align 2, 0
_0810A154: .4byte gUnknown_203AD10
-_0810A158: .4byte sub_8126EDC
+_0810A158: .4byte CB2_ChooseMonToGiveItem
_0810A15C: .4byte ItemMenu_StartFadeToExitCallback
_0810A160:
adds r0, r7, 0
@@ -4786,7 +4786,7 @@ _0810A458: .4byte sub_810A45C
thumb_func_start sub_810A45C
sub_810A45C: @ 810A45C
push {lr}
- bl sub_8123730
+ bl CB2_SelectBagItemToGive
pop {r0}
bx r0
thumb_func_end sub_810A45C
@@ -4918,7 +4918,7 @@ sub_810A554: @ 810A554
ldr r2, _0810A564 @ =sub_808CE60
movs r0, 0x4
movs r1, 0x3
- bl sub_8107DB4
+ bl GoToBagMenu
pop {r0}
bx r0
.align 2, 0
@@ -5063,7 +5063,7 @@ sub_810A67C: @ 810A67C
ldr r2, _0810A68C @ =CB2_ReturnToField
movs r0, 0x2
movs r1, 0x3
- bl sub_8107DB4
+ bl GoToBagMenu
pop {r0}
bx r0
.align 2, 0
@@ -6127,7 +6127,7 @@ sub_810AF74: @ 810AF74
ldr r2, _0810AF98 @ =SetCB2ToReshowScreenAfterMenu2
movs r0, 0x6
movs r1, 0
- bl sub_8107DB4
+ bl GoToBagMenu
pop {r0}
bx r0
.align 2, 0
@@ -6358,7 +6358,7 @@ _0810B16C:
movs r0, 0x8
_0810B170:
movs r1, 0
- bl sub_8107DB4
+ bl GoToBagMenu
pop {r4}
pop {r0}
bx r0
@@ -6856,10 +6856,10 @@ _0810B564:
movs r2, 0
bl DestroyListMenuTask
bl sub_810AECC
- ldr r1, _0810B5B0 @ =gUnknown_3005E98
- ldr r0, _0810B5B4 @ =ItemUseCB_Medicine
+ ldr r1, _0810B5B0 @ =gItemUseCB
+ ldr r0, _0810B5B4 @ =ItemUseCB_MedicineStep
str r0, [r1]
- ldr r0, _0810B5B8 @ =sub_81279A4
+ ldr r0, _0810B5B8 @ =ChooseMonForInBattleItem
bl ItemMenu_SetExitCallback
mov r0, r9
subs r0, 0x8
@@ -6868,9 +6868,9 @@ _0810B564:
str r1, [r0]
b _0810B5C6
.align 2, 0
-_0810B5B0: .4byte gUnknown_3005E98
-_0810B5B4: .4byte ItemUseCB_Medicine
-_0810B5B8: .4byte sub_81279A4
+_0810B5B0: .4byte gItemUseCB
+_0810B5B4: .4byte ItemUseCB_MedicineStep
+_0810B5B8: .4byte ChooseMonForInBattleItem
_0810B5BC: .4byte sub_810B070
_0810B5C0:
ldrh r0, [r5, 0x10]
diff --git a/asm/link_rfu.s b/asm/link_rfu.s
index 0ccbda9eb..df112d1ad 100644
--- a/asm/link_rfu.s
+++ b/asm/link_rfu.s
@@ -3172,8 +3172,8 @@ _080FEBA6:
bx r0
thumb_func_end sub_80FEB3C
- thumb_func_start sub_80FEBAC
-sub_80FEBAC: @ 80FEBAC
+ thumb_func_start DoEasyChatScreen
+DoEasyChatScreen: @ 80FEBAC
push {r4-r6,lr}
mov r6, r8
push {r6}
@@ -3214,7 +3214,7 @@ sub_80FEBAC: @ 80FEBAC
_080FEC00: .4byte sub_80FEC54
_080FEC04: .4byte gTasks
_080FEC08: .4byte sub_80FEC0C
- thumb_func_end sub_80FEBAC
+ thumb_func_end DoEasyChatScreen
thumb_func_start sub_80FEC0C
sub_80FEC0C: @ 80FEC0C
@@ -3588,7 +3588,7 @@ _080FEF08:
ldr r0, _080FEF24 @ =gSpecialVar_0x8004
ldrb r0, [r0]
ldr r2, _080FEF28 @ =sub_80568C4
- bl sub_80FEBAC
+ bl DoEasyChatScreen
_080FEF12:
pop {r0}
bx r0
diff --git a/asm/link_rfu_3.s b/asm/link_rfu_3.s
index 24125485e..1e076a55e 100644
--- a/asm/link_rfu_3.s
+++ b/asm/link_rfu_3.s
@@ -3650,7 +3650,7 @@ _08117784:
ldr r0, _0811779C @ =sub_811C1C8
str r0, [r1, 0x8]
movs r0, 0x2
- bl sub_81274A8
+ bl InitChooseHalfPartyForBattle
b _081178E0
.align 2, 0
_08117798: .4byte gMain
@@ -5602,12 +5602,12 @@ _0811887C:
_081188C4: .4byte gUnknown_203B06C
_081188C8: .4byte gSpecialVar_Result
_081188CC:
- bl sub_811FB18
+ bl GetPartyMenuType
lsls r0, 24
lsrs r0, 24
cmp r0, 0x8
beq _081188E4
- bl sub_811FB18
+ bl GetPartyMenuType
lsls r0, 24
lsrs r0, 24
cmp r0, 0x9
@@ -7335,7 +7335,7 @@ _081197CA:
adds r0, r1
ldr r0, [r0]
str r0, [r2]
- ldr r2, _0811982C @ =gUnknown_203B06A
+ ldr r2, _0811982C @ =gUnionRoomRequestedMonType
ldr r1, [r6]
movs r3, 0x2
ldrsh r0, [r7, r3]
@@ -7344,7 +7344,7 @@ _081197CA:
ldrb r0, [r1, 0x9]
lsrs r0, 2
strb r0, [r2]
- ldr r2, _08119830 @ =gUnknown_203B068
+ ldr r2, _08119830 @ =gUnionRoomOfferedSpecies
ldr r1, [r6]
movs r3, 0x2
ldrsh r0, [r7, r3]
@@ -7369,8 +7369,8 @@ _081197CA:
_08119820: .4byte gUnknown_8458D1C
_08119824: .4byte gUnknown_203B06C
_08119828: .4byte gUnknown_203B064
-_0811982C: .4byte gUnknown_203B06A
-_08119830: .4byte gUnknown_203B068
+_0811982C: .4byte gUnionRoomRequestedMonType
+_08119830: .4byte gUnionRoomOfferedSpecies
_08119834: .4byte gFieldCallback
_08119838: .4byte sub_807DCE4
_0811983C: .4byte CB2_ReturnToField
diff --git a/asm/naming_screen.s b/asm/naming_screen.s
index 817d215a0..49ab9164f 100644
--- a/asm/naming_screen.s
+++ b/asm/naming_screen.s
@@ -3623,7 +3623,7 @@ sub_809F5C4: @ 809F5C4
push {r4,r5,lr}
sub sp, 0x10
movs r4, 0
- ldr r1, _0809F61C @ =gUnknown_841621F
+ ldr r1, _0809F61C @ =gText_MaleSymbol
add r0, sp, 0xC
bl StringCopy
ldr r5, _0809F620 @ =gUnknown_203998C
@@ -3635,7 +3635,7 @@ sub_809F5C4: @ 809F5C4
beq _0809F614
cmp r0, 0xFE
bne _0809F5EE
- ldr r1, _0809F628 @ =gUnknown_8416221
+ ldr r1, _0809F628 @ =gText_FemaleSymbol
add r0, sp, 0xC
bl StringCopy
movs r4, 0x1
@@ -3664,10 +3664,10 @@ _0809F614:
pop {r0}
bx r0
.align 2, 0
-_0809F61C: .4byte gUnknown_841621F
+_0809F61C: .4byte gText_MaleSymbol
_0809F620: .4byte gUnknown_203998C
_0809F624: .4byte 0x00001e36
-_0809F628: .4byte gUnknown_8416221
+_0809F628: .4byte gText_FemaleSymbol
_0809F62C: .4byte 0x00001e13
_0809F630: .4byte gUnknown_83E2428
thumb_func_end sub_809F5C4
@@ -4490,7 +4490,7 @@ sub_809FC90: @ 809FC90
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
- ldr r0, _0809FCB4 @ =CB2_ReturnToStartMenu
+ ldr r0, _0809FCB4 @ =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x4]
movs r0, 0
movs r3, 0
@@ -4500,7 +4500,7 @@ sub_809FC90: @ 809FC90
bx r0
.align 2, 0
_0809FCB0: .4byte gSaveBlock2Ptr
-_0809FCB4: .4byte CB2_ReturnToStartMenu
+_0809FCB4: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end sub_809FC90
thumb_func_start sub_809FCB8
@@ -4512,7 +4512,7 @@ sub_809FCB8: @ 809FCB8
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
- ldr r0, _0809FCDC @ =CB2_ReturnToStartMenu
+ ldr r0, _0809FCDC @ =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x4]
movs r0, 0x1
movs r3, 0
@@ -4522,7 +4522,7 @@ sub_809FCB8: @ 809FCB8
bx r0
.align 2, 0
_0809FCD8: .4byte gSaveBlock2Ptr
-_0809FCDC: .4byte CB2_ReturnToStartMenu
+_0809FCDC: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end sub_809FCB8
thumb_func_start sub_809FCE0
@@ -4534,7 +4534,7 @@ sub_809FCE0: @ 809FCE0
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
- ldr r0, _0809FD04 @ =CB2_ReturnToStartMenu
+ ldr r0, _0809FD04 @ =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x4]
movs r0, 0x2
movs r3, 0
@@ -4544,7 +4544,7 @@ sub_809FCE0: @ 809FCE0
bx r0
.align 2, 0
_0809FD00: .4byte gSaveBlock2Ptr
-_0809FD04: .4byte CB2_ReturnToStartMenu
+_0809FD04: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end sub_809FCE0
thumb_func_start sub_809FD08
@@ -4556,7 +4556,7 @@ sub_809FD08: @ 809FD08
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
- ldr r0, _0809FD2C @ =CB2_ReturnToStartMenu
+ ldr r0, _0809FD2C @ =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x4]
movs r0, 0x3
movs r3, 0
@@ -4566,7 +4566,7 @@ sub_809FD08: @ 809FD08
bx r0
.align 2, 0
_0809FD28: .4byte gSaveBlock2Ptr
-_0809FD2C: .4byte CB2_ReturnToStartMenu
+_0809FD2C: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end sub_809FD08
thumb_func_start sub_809FD30
@@ -4578,7 +4578,7 @@ sub_809FD30: @ 809FD30
ldrb r2, [r1, 0x8]
movs r0, 0
str r0, [sp]
- ldr r0, _0809FD54 @ =CB2_ReturnToStartMenu
+ ldr r0, _0809FD54 @ =CB2_ReturnToFieldWithOpenMenu
str r0, [sp, 0x4]
movs r0, 0x4
movs r3, 0
@@ -4588,7 +4588,7 @@ sub_809FD30: @ 809FD30
bx r0
.align 2, 0
_0809FD50: .4byte gSaveBlock2Ptr
-_0809FD54: .4byte CB2_ReturnToStartMenu
+_0809FD54: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end sub_809FD30
.align 2, 0 @ Don't pad with nop.
diff --git a/asm/overworld.s b/asm/overworld.s
index 28bcd8ecb..370aa054d 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -473,7 +473,7 @@ _08054F8A:
str r2, [sp, 0x4]
adds r0, r2, 0
adds r1, r5, 0
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
mov r6, r10
ldr r1, [r6]
mov r2, r8
@@ -821,8 +821,8 @@ _08055232:
bx r1
thumb_func_end warp_data_is_not_neg_1
- thumb_func_start get_mapheader_by_bank_and_number
-get_mapheader_by_bank_and_number: @ 8055238
+ thumb_func_start Overworld_GetMapHeaderByGroupAndId
+Overworld_GetMapHeaderByGroupAndId: @ 8055238
lsls r0, 16
lsls r1, 16
ldr r2, _0805524C @ =gMapGroups
@@ -835,7 +835,7 @@ get_mapheader_by_bank_and_number: @ 8055238
bx lr
.align 2, 0
_0805524C: .4byte gMapGroups
- thumb_func_end get_mapheader_by_bank_and_number
+ thumb_func_end Overworld_GetMapHeaderByGroupAndId
thumb_func_start warp1_get_mapheader
warp1_get_mapheader: @ 8055250
@@ -850,7 +850,7 @@ warp1_get_mapheader: @ 8055250
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
pop {r1}
bx r1
.align 2, 0
@@ -872,7 +872,7 @@ set_current_map_header_from_sav1_save_old_name: @ 8055274
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
adds r1, r4, 0
ldm r0!, {r2,r3,r6}
stm r1!, {r2,r3,r6}
@@ -908,7 +908,7 @@ set_current_map_header_from_sav1: @ 80552BC
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
adds r1, r4, 0
ldm r0!, {r2,r3,r5}
stm r1!, {r2,r3,r5}
@@ -2336,7 +2336,7 @@ sub_8055D6C: @ 8055D6C
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrh r0, [r0, 0x10]
pop {r1}
bx r1
@@ -2863,7 +2863,7 @@ get_map_light_level_by_bank_and_number: @ 8056158
lsls r1, 24
asrs r1, 8
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x17]
pop {r1}
bx r1
@@ -2925,7 +2925,7 @@ sub_80561B4: @ 80561B4
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14]
pop {r1}
bx r1
@@ -3014,7 +3014,7 @@ sav1_saved_warp2_map_get_name: @ 8056238
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14]
pop {r1}
bx r1
@@ -3036,7 +3036,7 @@ GetCurrentRegionMapSectionId: @ 8056260
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14]
pop {r1}
bx r1
@@ -3058,7 +3058,7 @@ sav1_map_get_battletype: @ 8056288
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x1B]
pop {r1}
bx r1
@@ -3754,8 +3754,8 @@ _080568A0: .4byte gFieldCallback
_080568A4: .4byte sub_807DDD0
thumb_func_end c2_8056854
- thumb_func_start CB2_ReturnToStartMenu
-CB2_ReturnToStartMenu: @ 80568A8
+ thumb_func_start CB2_ReturnToFieldWithOpenMenu
+CB2_ReturnToFieldWithOpenMenu: @ 80568A8
push {lr}
bl sub_80569BC
ldr r1, _080568BC @ =gFieldCallback2
@@ -3767,7 +3767,7 @@ CB2_ReturnToStartMenu: @ 80568A8
.align 2, 0
_080568BC: .4byte gFieldCallback2
_080568C0: .4byte FieldCB2_ReturnToStartMenuInit
- thumb_func_end CB2_ReturnToStartMenu
+ thumb_func_end CB2_ReturnToFieldWithOpenMenu
thumb_func_start sub_80568C4
sub_80568C4: @ 80568C4
diff --git a/asm/party_menu.s b/asm/party_menu.s
deleted file mode 100644
index 3cb62c712..000000000
--- a/asm/party_menu.s
+++ /dev/null
@@ -1,19390 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start PartyMenuInit
-PartyMenuInit: @ 811EA44
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r4, [sp, 0x24]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- lsls r2, 24
- lsrs r2, 24
- mov r8, r2
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp]
- lsls r4, 24
- lsrs r7, r4, 24
- bl reset_brm
- ldr r6, _0811EA8C @ =gUnknown_203B09C
- movs r0, 0x8E
- lsls r0, 2
- bl Alloc
- adds r5, r0, 0
- str r5, [r6]
- cmp r5, 0
- bne _0811EA90
- ldr r0, [sp, 0x2C]
- bl SetMainCallback2
- b _0811EB80
- .align 2, 0
-_0811EA8C: .4byte gUnknown_203B09C
-_0811EA90:
- ldr r3, _0811EAE0 @ =gUnknown_203B0A0
- movs r1, 0xF
- mov r0, r9
- ands r1, r0
- ldrb r2, [r3, 0x8]
- movs r0, 0x10
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x8]
- ldr r1, [sp, 0x2C]
- str r1, [r3]
- movs r4, 0
- mov r0, r8
- strb r0, [r3, 0xB]
- lsls r2, r7, 2
- ldrh r1, [r5, 0xA]
- movs r0, 0x3
- ands r0, r1
- orrs r0, r2
- strh r0, [r5, 0xA]
- ldr r0, [sp, 0x28]
- str r0, [r5]
- str r4, [r5, 0x4]
- ldrb r1, [r5, 0x8]
- movs r0, 0xF
- negs r0, r0
- ands r0, r1
- strb r0, [r5, 0x8]
- adds r7, r3, 0
- mov r1, r9
- cmp r1, 0x4
- bne _0811EAE4
- ldr r0, [r6]
- ldrb r1, [r0, 0x8]
- movs r2, 0x1
- orrs r1, r2
- strb r1, [r0, 0x8]
- b _0811EAF0
- .align 2, 0
-_0811EAE0: .4byte gUnknown_203B0A0
-_0811EAE4:
- ldr r2, [r6]
- ldrb r1, [r2, 0x8]
- movs r0, 0x2
- negs r0, r0
- ands r0, r1
- strb r0, [r2, 0x8]
-_0811EAF0:
- mov r5, r10
- cmp r5, 0xFF
- beq _0811EB08
- movs r0, 0x3
- ands r0, r5
- lsls r0, 4
- ldrb r2, [r7, 0x8]
- movs r1, 0x31
- negs r1, r1
- ands r1, r2
- orrs r1, r0
- strb r1, [r7, 0x8]
-_0811EB08:
- movs r2, 0
- ldr r5, _0811EB90 @ =gUnknown_203B09C
- movs r4, 0x86
- lsls r4, 2
- movs r3, 0
-_0811EB12:
- ldr r0, [r5]
- lsls r1, r2, 1
- adds r0, r4
- adds r0, r1
- strh r3, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0xF
- bls _0811EB12
- movs r2, 0
- ldr r4, _0811EB90 @ =gUnknown_203B09C
- movs r3, 0xFF
-_0811EB2C:
- ldr r0, [r4]
- adds r0, 0xC
- adds r0, r2
- ldrb r1, [r0]
- orrs r1, r3
- strb r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 16
- lsrs r2, r0, 16
- cmp r2, 0x2
- bls _0811EB2C
- ldr r0, [sp]
- cmp r0, 0
- beq _0811EB68
- adds r1, r7, 0
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- cmp r0, 0x5
- bgt _0811EB66
- adds r1, r0, 0
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0811EB94 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- bne _0811EB6A
-_0811EB66:
- movs r0, 0
-_0811EB68:
- strb r0, [r7, 0x9]
-_0811EB6A:
- ldr r2, _0811EB98 @ =gTextFlags
- ldrb r1, [r2]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r2]
- bl CalculatePlayerPartyCount
- ldr r0, _0811EB9C @ =sub_811EBD0
- bl SetMainCallback2
-_0811EB80:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811EB90: .4byte gUnknown_203B09C
-_0811EB94: .4byte gPlayerParty
-_0811EB98: .4byte gTextFlags
-_0811EB9C: .4byte sub_811EBD0
- thumb_func_end PartyMenuInit
-
- thumb_func_start sub_811EBA0
-sub_811EBA0: @ 811EBA0
- push {lr}
- bl RunTasks
- bl AnimateSprites
- bl BuildOamBuffer
- bl DoScheduledBgTilemapCopiesToVram
- bl UpdatePaletteFade
- pop {r0}
- bx r0
- thumb_func_end sub_811EBA0
-
- thumb_func_start sub_811EBBC
-sub_811EBBC: @ 811EBBC
- push {lr}
- bl LoadOam
- bl ProcessSpriteCopyRequests
- bl TransferPlttBuffer
- pop {r0}
- bx r0
- thumb_func_end sub_811EBBC
-
- thumb_func_start sub_811EBD0
-sub_811EBD0: @ 811EBD0
- push {lr}
-_0811EBD2:
- bl sub_80BF748
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811EBF6
- bl sub_811EBFC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811EBF6
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0811EBD2
-_0811EBF6:
- pop {r0}
- bx r0
- thumb_func_end sub_811EBD0
-
- thumb_func_start sub_811EBFC
-sub_811EBFC: @ 811EBFC
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _0811EC1C @ =gMain
- movs r1, 0x87
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x16
- bls _0811EC10
- b _0811EE14
-_0811EC10:
- lsls r0, 2
- ldr r1, _0811EC20 @ =_0811EC24
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811EC1C: .4byte gMain
-_0811EC20: .4byte _0811EC24
- .align 2, 0
-_0811EC24:
- .4byte _0811EC80
- .4byte _0811EC8E
- .4byte _0811EC94
- .4byte _0811ECA8
- .4byte _0811ECAE
- .4byte _0811ECB4
- .4byte _0811ECC6
- .4byte _0811ECCC
- .4byte _0811ECF4
- .4byte _0811ED02
- .4byte _0811ED14
- .4byte _0811ED38
- .4byte _0811ED3E
- .4byte _0811ED44
- .4byte _0811ED4A
- .4byte _0811ED50
- .4byte _0811ED70
- .4byte _0811ED90
- .4byte _0811ED96
- .4byte _0811EDAC
- .4byte _0811EDB4
- .4byte _0811EDD0
- .4byte _0811EDDE
-_0811EC80:
- bl SetVBlankHBlankCallbacksToNull
- bl ClearVramOamPltt
- bl ClearScheduledBgCopiesToVram
- b _0811EDFC
-_0811EC8E:
- bl ScanlineEffect_Stop
- b _0811EDFC
-_0811EC94:
- bl ResetPaletteFade
- ldr r2, _0811ECA4 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- b _0811EDFA
- .align 2, 0
-_0811ECA4: .4byte gPaletteFade
-_0811ECA8:
- bl ResetSpriteData
- b _0811EDFC
-_0811ECAE:
- bl FreeAllSpritePalettes
- b _0811EDFC
-_0811ECB4:
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- cmp r0, 0
- beq _0811ECC0
- b _0811EDFC
-_0811ECC0:
- bl ResetTasks
- b _0811EDFC
-_0811ECC6:
- bl sub_81208E4
- b _0811EDFC
-_0811ECCC:
- bl sub_811EECC
- lsls r0, 24
- cmp r0, 0
- bne _0811ECDE
- bl sub_811EE38
- movs r0, 0x1
- b _0811EE2E
-_0811ECDE:
- ldr r0, _0811ECF0 @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _0811EDFC
- .align 2, 0
-_0811ECF0: .4byte gUnknown_203B09C
-_0811ECF4:
- bl sub_811EF44
- lsls r0, 24
- cmp r0, 0
- bne _0811ED00
- b _0811EE2C
-_0811ED00:
- b _0811EDFC
-_0811ED02:
- ldr r0, _0811ED10 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- lsls r0, 26
- lsrs r0, 30
- bl sub_8121060
- b _0811EDFC
- .align 2, 0
-_0811ED10: .4byte gUnknown_203B0A0
-_0811ED14:
- ldr r0, _0811ED30 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- lsls r0, 26
- lsrs r0, 30
- bl sub_811F0BC
- ldr r0, _0811ED34 @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _0811EDFC
- .align 2, 0
-_0811ED30: .4byte gUnknown_203B0A0
-_0811ED34: .4byte gUnknown_203B09C
-_0811ED38:
- bl LoadHeldItemIcons
- b _0811EDFC
-_0811ED3E:
- bl sub_8122860
- b _0811EDFC
-_0811ED44:
- bl sub_8122980
- b _0811EDFC
-_0811ED4A:
- bl LoadMonIconPalettes
- b _0811EDFC
-_0811ED50:
- bl party_menu_add_per_mon_objects
- lsls r0, 24
- cmp r0, 0
- beq _0811EE2C
- ldr r0, _0811ED6C @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _0811EDFC
- .align 2, 0
-_0811ED6C: .4byte gUnknown_203B09C
-_0811ED70:
- bl sub_811F5EC
- lsls r0, 24
- cmp r0, 0
- beq _0811EE2C
- ldr r0, _0811ED8C @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- strh r1, [r0]
- b _0811EDFC
- .align 2, 0
-_0811ED8C: .4byte gUnknown_203B09C
-_0811ED90:
- bl sub_811F774
- b _0811EDFC
-_0811ED96:
- ldr r0, _0811EDA8 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- lsrs r0, 31
- bl sub_81210F8
- b _0811EDFC
- .align 2, 0
-_0811EDA8: .4byte gUnknown_203B09C
-_0811EDAC:
- movs r0, 0x5
- bl HelpSystem_SetSomeVariable2
- b _0811EDFC
-_0811EDB4:
- ldr r4, _0811EDCC @ =gUnknown_203B09C
- ldr r0, [r4]
- ldr r0, [r0]
- movs r1, 0
- bl CreateTask
- ldr r0, [r4]
- ldrh r0, [r0, 0xA]
- lsrs r0, 2
- bl sub_8121D0C
- b _0811EDFC
- .align 2, 0
-_0811EDCC: .4byte gUnknown_203B09C
-_0811EDD0:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x10
- movs r2, 0
- bl BlendPalettes
- b _0811EDFC
-_0811EDDE:
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x2
- negs r1, r1
- movs r2, 0
- str r2, [sp]
- movs r2, 0x10
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r2, _0811EE0C @ =gPaletteFade
- ldrb r1, [r2, 0x8]
- movs r0, 0x7F
- ands r0, r1
-_0811EDFA:
- strb r0, [r2, 0x8]
-_0811EDFC:
- ldr r1, _0811EE10 @ =gMain
- movs r0, 0x87
- lsls r0, 3
- adds r1, r0
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- b _0811EE2C
- .align 2, 0
-_0811EE0C: .4byte gPaletteFade
-_0811EE10: .4byte gMain
-_0811EE14:
- ldr r0, _0811EE24 @ =sub_811EBBC
- bl SetVBlankCallback
- ldr r0, _0811EE28 @ =sub_811EBA0
- bl SetMainCallback2
- movs r0, 0x1
- b _0811EE2E
- .align 2, 0
-_0811EE24: .4byte sub_811EBBC
-_0811EE28: .4byte sub_811EBA0
-_0811EE2C:
- movs r0, 0
-_0811EE2E:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811EBFC
-
- thumb_func_start sub_811EE38
-sub_811EE38: @ 811EE38
- push {lr}
- sub sp, 0x4
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x2
- negs r1, r1
- movs r2, 0
- str r2, [sp]
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r0, _0811EE68 @ =sub_811EE74
- movs r1, 0
- bl CreateTask
- ldr r0, _0811EE6C @ =sub_811EBBC
- bl SetVBlankCallback
- ldr r0, _0811EE70 @ =sub_811EBA0
- bl SetMainCallback2
- add sp, 0x4
- pop {r0}
- bx r0
- .align 2, 0
-_0811EE68: .4byte sub_811EE74
-_0811EE6C: .4byte sub_811EBBC
-_0811EE70: .4byte sub_811EBA0
- thumb_func_end sub_811EE38
-
- thumb_func_start sub_811EE74
-sub_811EE74: @ 811EE74
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0811EEA0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811EE98
- ldr r0, _0811EEA4 @ =gUnknown_203B0A0
- ldr r0, [r0]
- bl SetMainCallback2
- bl sub_811F070
- adds r0, r4, 0
- bl DestroyTask
-_0811EE98:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811EEA0: .4byte gPaletteFade
-_0811EEA4: .4byte gUnknown_203B0A0
- thumb_func_end sub_811EE74
-
- thumb_func_start reset_brm
-reset_brm: @ 811EEA8
- ldr r0, _0811EEBC @ =gUnknown_203B09C
- movs r1, 0
- str r1, [r0]
- ldr r0, _0811EEC0 @ =gUnknown_203B0BC
- str r1, [r0]
- ldr r0, _0811EEC4 @ =gUnknown_203B0B4
- str r1, [r0]
- ldr r0, _0811EEC8 @ =gUnknown_203B0B8
- str r1, [r0]
- bx lr
- .align 2, 0
-_0811EEBC: .4byte gUnknown_203B09C
-_0811EEC0: .4byte gUnknown_203B0BC
-_0811EEC4: .4byte gUnknown_203B0B4
-_0811EEC8: .4byte gUnknown_203B0B8
- thumb_func_end reset_brm
-
- thumb_func_start sub_811EECC
-sub_811EECC: @ 811EECC
- push {r4,r5,lr}
- bl ResetAllBgsCoordinatesAndBgCntRegs
- ldr r5, _0811EF34 @ =gUnknown_203B0BC
- movs r4, 0x80
- lsls r4, 4
- adds r0, r4, 0
- bl Alloc
- str r0, [r5]
- cmp r0, 0
- beq _0811EF3C
- movs r1, 0
- adds r2, r4, 0
- bl memset
- movs r0, 0
- bl ResetBgsAndClearDma3BusyFlags
- ldr r1, _0811EF38 @ =gUnknown_8459EB8
- movs r0, 0
- movs r2, 0x3
- bl InitBgsFromTemplates
- ldr r1, [r5]
- movs r0, 0x1
- bl SetBgTilemapBuffer
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
- movs r1, 0x82
- lsls r1, 5
- movs r0, 0
- bl SetGpuReg
- movs r0, 0x50
- movs r1, 0
- bl SetGpuReg
- movs r0, 0
- bl ShowBg
- movs r0, 0x1
- bl ShowBg
- movs r0, 0x2
- bl ShowBg
- movs r0, 0x1
- b _0811EF3E
- .align 2, 0
-_0811EF34: .4byte gUnknown_203B0BC
-_0811EF38: .4byte gUnknown_8459EB8
-_0811EF3C:
- movs r0, 0
-_0811EF3E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811EECC
-
- thumb_func_start sub_811EF44
-sub_811EF44: @ 811EF44
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _0811EF64 @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- movs r1, 0
- ldrsh r0, [r0, r1]
- cmp r0, 0x7
- bhi _0811F02C
- lsls r0, 2
- ldr r1, _0811EF68 @ =_0811EF6C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811EF64: .4byte gUnknown_203B09C
-_0811EF68: .4byte _0811EF6C
- .align 2, 0
-_0811EF6C:
- .4byte _0811EF8C
- .4byte _0811EFB4
- .4byte _0811EFD4
- .4byte _0811F000
- .4byte _0811F004
- .4byte _0811F008
- .4byte _0811F00C
- .4byte _0811F010
-_0811EF8C:
- ldr r4, _0811EFAC @ =gUnknown_203B0B8
- ldr r0, _0811EFB0 @ =gFile_graphics_interface_party_menu_misc_sheet
- mov r1, sp
- bl MallocAndDecompress
- adds r1, r0, 0
- str r1, [r4]
- ldr r2, [sp]
- lsls r2, 16
- lsrs r2, 16
- movs r0, 0x1
- movs r3, 0
- bl LoadBgTiles
- b _0811F016
- .align 2, 0
-_0811EFAC: .4byte gUnknown_203B0B8
-_0811EFB0: .4byte gFile_graphics_interface_party_menu_misc_sheet
-_0811EFB4:
- bl IsDma3ManagerBusyWithBgCopy
- lsls r0, 24
- cmp r0, 0
- bne _0811F030
- ldr r0, _0811EFCC @ =gFile_graphics_interface_party_menu_misc_tilemap
- ldr r1, _0811EFD0 @ =gUnknown_203B0BC
- ldr r1, [r1]
- bl LZDecompressWram
- b _0811F016
- .align 2, 0
-_0811EFCC: .4byte gFile_graphics_interface_party_menu_misc_tilemap
-_0811EFD0: .4byte gUnknown_203B0BC
-_0811EFD4:
- ldr r0, _0811EFF4 @ =gUnknown_8E829C8
- movs r2, 0xB0
- lsls r2, 1
- movs r1, 0
- bl LoadCompressedPalette
- ldr r0, _0811EFF8 @ =gPlttBufferUnfaded
- ldr r4, _0811EFFC @ =gUnknown_203B09C
- ldr r1, [r4]
- adds r1, 0x18
- movs r2, 0xB0
- bl CpuSet
- ldr r1, [r4]
- b _0811F01A
- .align 2, 0
-_0811EFF4: .4byte gUnknown_8E829C8
-_0811EFF8: .4byte gPlttBufferUnfaded
-_0811EFFC: .4byte gUnknown_203B09C
-_0811F000:
- movs r0, 0x4
- b _0811F012
-_0811F004:
- movs r0, 0x5
- b _0811F012
-_0811F008:
- movs r0, 0x6
- b _0811F012
-_0811F00C:
- movs r0, 0x7
- b _0811F012
-_0811F010:
- movs r0, 0x8
-_0811F012:
- bl sub_811F03C
-_0811F016:
- ldr r0, _0811F028 @ =gUnknown_203B09C
- ldr r1, [r0]
-_0811F01A:
- movs r0, 0x86
- lsls r0, 2
- adds r1, r0
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- b _0811F030
- .align 2, 0
-_0811F028: .4byte gUnknown_203B09C
-_0811F02C:
- movs r0, 0x1
- b _0811F032
-_0811F030:
- movs r0, 0
-_0811F032:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811EF44
-
- thumb_func_start sub_811F03C
-sub_811F03C: @ 811F03C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 28
- ldr r5, _0811F068 @ =gPlttBufferUnfaded + 0x60
- lsrs r4, 23
- adds r1, r5, 0
- subs r1, 0x60
- adds r1, r4, r1
- adds r0, r5, 0
- movs r2, 0x10
- bl CpuSet
- ldr r0, _0811F06C @ =gPlttBufferFaded
- adds r4, r0
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0x10
- bl CpuSet
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F068: .4byte gPlttBufferUnfaded + 0x60
-_0811F06C: .4byte gPlttBufferFaded
- thumb_func_end sub_811F03C
-
- thumb_func_start sub_811F070
-sub_811F070: @ 811F070
- push {lr}
- ldr r0, _0811F0AC @ =gUnknown_203B09C
- ldr r0, [r0]
- cmp r0, 0
- beq _0811F07E
- bl Free
-_0811F07E:
- ldr r0, _0811F0B0 @ =gUnknown_203B0BC
- ldr r0, [r0]
- cmp r0, 0
- beq _0811F08A
- bl Free
-_0811F08A:
- ldr r0, _0811F0B4 @ =gUnknown_203B0B8
- ldr r0, [r0]
- cmp r0, 0
- beq _0811F096
- bl Free
-_0811F096:
- ldr r0, _0811F0B8 @ =gUnknown_203B0B4
- ldr r0, [r0]
- cmp r0, 0
- beq _0811F0A2
- bl Free
-_0811F0A2:
- bl FreeAllWindowBuffers
- pop {r0}
- bx r0
- .align 2, 0
-_0811F0AC: .4byte gUnknown_203B09C
-_0811F0B0: .4byte gUnknown_203B0BC
-_0811F0B4: .4byte gUnknown_203B0B8
-_0811F0B8: .4byte gUnknown_203B0B4
- thumb_func_end sub_811F070
-
- thumb_func_start sub_811F0BC
-sub_811F0BC: @ 811F0BC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r4, _0811F108 @ =gUnknown_203B0B4
- movs r0, 0x60
- bl Alloc
- str r0, [r4]
- movs r2, 0
- ldr r7, _0811F10C @ =gUnknown_8459EE4
- lsls r0, r5, 1
- adds r0, r5
- lsls r3, r0, 4
- mov r12, r4
- ldr r6, _0811F110 @ =gUnknown_8459F04
-_0811F0DA:
- ldr r0, [r4]
- lsls r1, r2, 4
- adds r1, r0
- str r7, [r1]
- lsls r0, r2, 3
- adds r0, r6
- adds r0, r3, r0
- str r0, [r1, 0x4]
- strb r2, [r1, 0x8]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0x5
- bls _0811F0DA
- mov r1, r12
- ldr r0, [r1]
- ldr r1, _0811F114 @ =gUnknown_8459EC4
- str r1, [r0]
- cmp r5, 0x3
- bne _0811F118
- str r1, [r0, 0x30]
- b _0811F11E
- .align 2, 0
-_0811F108: .4byte gUnknown_203B0B4
-_0811F10C: .4byte gUnknown_8459EE4
-_0811F110: .4byte gUnknown_8459F04
-_0811F114: .4byte gUnknown_8459EC4
-_0811F118:
- cmp r5, 0
- beq _0811F11E
- str r1, [r0, 0x10]
-_0811F11E:
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_811F0BC
-
- thumb_func_start sub_811F124
-sub_811F124: @ 811F124
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0811F16C @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x5
- bne _0811F174
- cmp r4, 0x2
- bls _0811F174
- adds r0, r4, 0
- bl sub_811F528
- ldr r5, _0811F170 @ =gUnknown_203B0B4
- lsls r4, 4
- ldr r0, [r5]
- adds r0, r4
- movs r1, 0x8
- bl sub_812142C
- ldr r0, [r5]
- adds r0, r4, r0
- ldrb r0, [r0, 0x8]
- movs r1, 0x2
- bl CopyWindowToVram
- ldr r0, [r5]
- adds r4, r0
- ldrb r0, [r4, 0x8]
- bl PutWindowTilemap
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- b _0811F22A
- .align 2, 0
-_0811F16C: .4byte gUnknown_203B0A0
-_0811F170: .4byte gUnknown_203B0B4
-_0811F174:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _0811F1A4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- bne _0811F1AC
- ldr r5, _0811F1A8 @ =gUnknown_203B0B4
- ldr r0, [r5]
- lsls r4, 4
- adds r0, r4, r0
- ldrb r0, [r0, 0x8]
- bl sub_8121404
- ldr r0, [r5]
- adds r0, r4, r0
- ldrb r0, [r0, 0x8]
- movs r1, 0x2
- bl CopyWindowToVram
- b _0811F218
- .align 2, 0
-_0811F1A4: .4byte gPlayerParty
-_0811F1A8: .4byte gUnknown_203B0B4
-_0811F1AC:
- ldr r0, _0811F1C0 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- movs r1, 0xF
- ands r1, r0
- cmp r1, 0x4
- bne _0811F1C4
- adds r0, r4, 0
- bl sub_811F388
- b _0811F1E2
- .align 2, 0
-_0811F1C0: .4byte gUnknown_203B0A0
-_0811F1C4:
- cmp r1, 0xB
- bne _0811F1D0
- adds r0, r4, 0
- bl sub_811F404
- b _0811F1E2
-_0811F1D0:
- adds r0, r4, 0
- bl sub_811F430
- lsls r0, 24
- cmp r0, 0
- bne _0811F1E2
- adds r0, r4, 0
- bl sub_811F234
-_0811F1E2:
- ldr r2, _0811F1F8 @ =gUnknown_203B0A0
- ldrb r1, [r2, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x5
- bne _0811F1FC
- adds r0, r4, 0
- movs r1, 0
- bl sub_811F818
- b _0811F216
- .align 2, 0
-_0811F1F8: .4byte gUnknown_203B0A0
-_0811F1FC:
- movs r0, 0x9
- ldrsb r0, [r2, r0]
- cmp r0, r4
- bne _0811F20E
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_811F818
- b _0811F216
-_0811F20E:
- adds r0, r4, 0
- movs r1, 0
- bl sub_811F818
-_0811F216:
- lsls r4, 4
-_0811F218:
- ldr r0, _0811F230 @ =gUnknown_203B0B4
- ldr r0, [r0]
- adds r0, r4, r0
- ldrb r0, [r0, 0x8]
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
-_0811F22A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F230: .4byte gUnknown_203B0B4
- thumb_func_end sub_811F124
-
- thumb_func_start sub_811F234
-sub_811F234: @ 811F234
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x64
- adds r1, r4, 0
- muls r1, r0
- ldr r0, _0811F284 @ =gPlayerParty
- adds r7, r1, r0
- adds r0, r7, 0
- movs r1, 0x2D
- bl GetMonData
- adds r2, r0, 0
- cmp r2, 0
- beq _0811F28C
- ldr r6, _0811F288 @ =gUnknown_203B0B4
- ldr r0, [r6]
- lsls r5, r4, 4
- adds r0, r5, r0
- ldr r2, [r0]
- ldrb r0, [r0, 0x8]
- movs r1, 0
- str r1, [sp]
- movs r1, 0x1
- str r1, [sp, 0x4]
- ldr r4, [r2]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl _call_via_r4
- ldr r1, [r6]
- adds r1, r5
- adds r0, r7, 0
- movs r2, 0
- bl sub_8121738
- b _0811F2EE
- .align 2, 0
-_0811F284: .4byte gPlayerParty
-_0811F288: .4byte gUnknown_203B0B4
-_0811F28C:
- ldr r5, _0811F2F8 @ =gUnknown_203B0B4
- ldr r0, [r5]
- lsls r4, 4
- adds r0, r4, r0
- ldr r1, [r0]
- ldrb r0, [r0, 0x8]
- str r2, [sp]
- str r2, [sp, 0x4]
- ldr r6, [r1]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl _call_via_r6
- ldr r1, [r5]
- adds r1, r4
- adds r0, r7, 0
- movs r2, 0
- bl sub_8121738
- ldr r1, [r5]
- adds r1, r4
- adds r0, r7, 0
- movs r2, 0
- bl sub_8121790
- ldr r1, [r5]
- adds r1, r4
- adds r0, r7, 0
- movs r2, 0
- bl sub_8121854
- ldr r1, [r5]
- adds r1, r4
- adds r0, r7, 0
- movs r2, 0
- bl sub_812199C
- ldr r1, [r5]
- adds r1, r4
- adds r0, r7, 0
- movs r2, 0
- bl sub_8121A3C
- ldr r1, [r5]
- adds r1, r4
- adds r0, r7, 0
- bl sub_8121AF0
-_0811F2EE:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F2F8: .4byte gUnknown_203B0B4
- thumb_func_end sub_811F234
-
- thumb_func_start sub_811F2FC
-sub_811F2FC: @ 811F2FC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- movs r1, 0x64
- adds r2, r0, 0
- muls r2, r1
- ldr r1, _0811F380 @ =gPlayerParty
- adds r6, r2, r1
- ldr r7, _0811F384 @ =gUnknown_203B0B4
- ldr r1, [r7]
- lsls r5, r0, 4
- adds r1, r5, r1
- ldr r2, [r1]
- ldrb r0, [r1, 0x8]
- movs r1, 0
- str r1, [sp]
- movs r1, 0x1
- str r1, [sp, 0x4]
- ldr r4, [r2]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl _call_via_r4
- ldr r1, [r7]
- adds r1, r5
- adds r0, r6, 0
- movs r2, 0
- bl sub_8121738
- adds r0, r6, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0811F368
- ldr r1, [r7]
- adds r1, r5
- adds r0, r6, 0
- movs r2, 0
- bl sub_8121790
- ldr r1, [r7]
- adds r1, r5
- adds r0, r6, 0
- movs r2, 0
- bl sub_8121854
-_0811F368:
- ldr r1, [r7]
- adds r1, r5
- mov r0, r8
- movs r2, 0
- bl sub_8121C70
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F380: .4byte gPlayerParty
-_0811F384: .4byte gUnknown_203B0B4
- thumb_func_end sub_811F2FC
-
- thumb_func_start sub_811F388
-sub_811F388: @ 811F388
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x64
- muls r0, r4
- ldr r1, _0811F3AC @ =gPlayerParty
- adds r0, r1
- ldr r5, _0811F3B0 @ =gSelectedOrderFromParty
- bl sub_8127550
- lsls r0, 24
- cmp r0, 0
- bne _0811F3C2
- adds r0, r4, 0
- movs r1, 0x6
- bl sub_811F2FC
- b _0811F3F8
- .align 2, 0
-_0811F3AC: .4byte gPlayerParty
-_0811F3B0: .4byte gSelectedOrderFromParty
-_0811F3B4:
- adds r1, 0x2
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_811F2FC
- b _0811F3F8
-_0811F3C2:
- ldr r0, _0811F400 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xC0
- ands r0, r1
- movs r3, 0x3
- cmp r0, 0x80
- bne _0811F3D2
- movs r3, 0x2
-_0811F3D2:
- movs r1, 0
- cmp r1, r3
- bcs _0811F3F0
-_0811F3D8:
- adds r2, r5, r1
- ldrb r0, [r2]
- cmp r0, 0
- beq _0811F3E6
- subs r0, 0x1
- cmp r0, r4
- beq _0811F3B4
-_0811F3E6:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, r3
- bcc _0811F3D8
-_0811F3F0:
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_811F2FC
-_0811F3F8:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F400: .4byte gUnknown_203B0A0
- thumb_func_end sub_811F388
-
- thumb_func_start sub_811F404
-sub_811F404: @ 811F404
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_81209D4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0811F422
- adds r0, r4, 0
- movs r1, 0x5
- bl sub_811F2FC
- b _0811F42A
-_0811F422:
- adds r0, r4, 0
- movs r1, 0x6
- bl sub_811F2FC
-_0811F42A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811F404
-
- thumb_func_start sub_811F430
-sub_811F430: @ 811F430
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0811F468 @ =gPlayerParty
- adds r6, r1, r0
- ldr r0, _0811F46C @ =gSpecialVar_ItemId
- ldrh r4, [r0]
- ldr r0, _0811F470 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0xC
- bne _0811F47C
- ldr r0, _0811F474 @ =gSpecialVar_Result
- movs r1, 0
- strh r1, [r0]
- ldr r0, _0811F478 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- cmp r0, 0xE
- bhi _0811F492
- lsls r2, r0, 24
- lsrs r2, 24
- adds r0, r5, 0
- movs r1, 0
- bl sub_811F4D0
- b _0811F4C6
- .align 2, 0
-_0811F468: .4byte gPlayerParty
-_0811F46C: .4byte gSpecialVar_ItemId
-_0811F470: .4byte gUnknown_203B0A0
-_0811F474: .4byte gSpecialVar_Result
-_0811F478: .4byte gSpecialVar_0x8005
-_0811F47C:
- cmp r0, 0x3
- bne _0811F492
- adds r0, r4, 0
- bl GetItemCompatibilityRule
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811F496
- cmp r0, 0x2
- beq _0811F4A2
-_0811F492:
- movs r0, 0
- b _0811F4C8
-_0811F496:
- adds r0, r5, 0
- adds r1, r4, 0
- movs r2, 0
- bl sub_811F4D0
- b _0811F4C6
-_0811F4A2:
- adds r0, r6, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0811F4BE
- adds r0, r6, 0
- movs r1, 0x3
- adds r2, r4, 0
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- cmp r0, 0
- bne _0811F492
-_0811F4BE:
- adds r0, r5, 0
- movs r1, 0
- bl sub_811F2FC
-_0811F4C6:
- movs r0, 0x1
-_0811F4C8:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_811F430
-
- thumb_func_start sub_811F4D0
-sub_811F4D0: @ 811F4D0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 16
- lsrs r1, 16
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0x64
- muls r0, r4
- ldr r3, _0811F4FC @ =gPlayerParty
- adds r0, r3
- bl sub_8120B20
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _0811F50E
- cmp r0, 0x2
- bgt _0811F500
- cmp r0, 0x1
- beq _0811F504
- b _0811F518
- .align 2, 0
-_0811F4FC: .4byte gPlayerParty
-_0811F500:
- cmp r0, 0x3
- bne _0811F518
-_0811F504:
- adds r0, r4, 0
- movs r1, 0x8
- bl sub_811F2FC
- b _0811F520
-_0811F50E:
- adds r0, r4, 0
- movs r1, 0x9
- bl sub_811F2FC
- b _0811F520
-_0811F518:
- adds r0, r4, 0
- movs r1, 0x7
- bl sub_811F2FC
-_0811F520:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811F4D0
-
- thumb_func_start sub_811F528
-sub_811F528: @ 811F528
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _0811F558 @ =gUnknown_203B0B4
- lsls r2, r0, 4
- ldr r1, [r1]
- adds r5, r1, r2
- subs r0, 0x3
- lsls r0, 24
- ldr r1, _0811F55C @ =gUnknown_2022B58
- mov r8, r1
- lsrs r7, r0, 19
- adds r6, r7, r1
- ldrh r0, [r6]
- cmp r0, 0
- bne _0811F560
- ldrb r0, [r5, 0x8]
- bl sub_8121404
- b _0811F5DC
- .align 2, 0
-_0811F558: .4byte gUnknown_203B0B4
-_0811F55C: .4byte gUnknown_2022B58
-_0811F560:
- ldr r2, [r5]
- ldrb r0, [r5, 0x8]
- movs r1, 0
- str r1, [sp]
- str r1, [sp, 0x4]
- ldr r4, [r2]
- movs r2, 0
- movs r3, 0
- bl _call_via_r4
- ldr r4, _0811F5E8 @ =gStringVar1
- mov r0, r8
- adds r0, 0x4
- adds r7, r0
- adds r0, r4, 0
- adds r1, r7, 0
- bl StringCopy
- adds r0, r4, 0
- bl StringGetEnd10
- adds r0, r4, 0
- bl StringLength
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x5
- bhi _0811F5A0
- adds r0, r4, 0
- movs r1, 0x1
- bl ConvertInternationalString
-_0811F5A0:
- ldrb r0, [r5, 0x8]
- ldr r3, [r5]
- adds r3, 0x4
- adds r1, r4, 0
- movs r2, 0
- bl sub_8121704
- ldrb r0, [r6, 0xF]
- adds r1, r5, 0
- bl sub_8121808
- ldrb r0, [r6, 0x1C]
- ldrh r1, [r6]
- adds r2, r7, 0
- adds r3, r5, 0
- bl sub_81218BC
- ldrh r0, [r6, 0x10]
- adds r1, r5, 0
- bl sub_8121A04
- ldrh r0, [r6, 0x12]
- adds r1, r5, 0
- bl sub_8121AA4
- ldrh r0, [r6, 0x10]
- ldrh r1, [r6, 0x12]
- adds r2, r5, 0
- bl sub_8121B2C
-_0811F5DC:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F5E8: .4byte gStringVar1
- thumb_func_end sub_811F528
-
- thumb_func_start sub_811F5EC
-sub_811F5EC: @ 811F5EC
- push {r4,r5,lr}
- ldr r5, _0811F614 @ =gUnknown_203B09C
- ldr r0, [r5]
- movs r4, 0x86
- lsls r4, 2
- adds r0, r4
- ldrb r0, [r0]
- bl sub_811F124
- ldr r1, [r5]
- adds r1, r4
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6
- beq _0811F618
- movs r0, 0
- b _0811F61A
- .align 2, 0
-_0811F614: .4byte gUnknown_203B09C
-_0811F618:
- movs r0, 0x1
-_0811F61A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_811F5EC
-
- thumb_func_start sub_811F620
-sub_811F620: @ 811F620
- lsls r0, 16
- ldr r1, _0811F630 @ =gUnknown_203B0B8
- lsrs r0, 11
- ldr r1, [r1]
- adds r1, r0
- adds r0, r1, 0
- bx lr
- .align 2, 0
-_0811F630: .4byte gUnknown_203B0B8
- thumb_func_end sub_811F620
-
- thumb_func_start party_menu_add_per_mon_objects_internal
-party_menu_add_per_mon_objects_internal: @ 811F634
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0811F6A8 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x5
- bne _0811F6E4
- cmp r7, 0x2
- bls _0811F6E4
- subs r0, r7, 0x3
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
- ldr r0, _0811F6AC @ =gUnknown_2022B58
- mov r9, r0
- mov r2, r10
- lsls r2, 5
- mov r8, r2
- mov r6, r8
- add r6, r9
- ldrh r0, [r6]
- cmp r0, 0
- beq _0811F728
- mov r1, r9
- adds r1, 0x18
- add r1, r8
- ldr r1, [r1]
- ldr r4, _0811F6B0 @ =gUnknown_203B0B4
- lsls r5, r7, 4
- ldr r2, [r4]
- adds r2, r5
- movs r3, 0
- str r3, [sp]
- bl party_menu_link_mon_icon_anim
- ldrh r0, [r6]
- ldrh r1, [r6, 0x2]
- ldr r2, [r4]
- adds r2, r5
- bl party_menu_link_mon_held_item_object
- ldrh r0, [r6]
- ldr r1, [r4]
- adds r1, r5
- bl party_menu_link_mon_pokeball_object
- ldrh r0, [r6, 0x10]
- cmp r0, 0
- bne _0811F6B4
- movs r3, 0x7
- b _0811F6C4
- .align 2, 0
-_0811F6A8: .4byte gUnknown_203B0A0
-_0811F6AC: .4byte gUnknown_2022B58
-_0811F6B0: .4byte gUnknown_203B0B4
-_0811F6B4:
- mov r0, r9
- adds r0, 0x14
- add r0, r8
- ldr r0, [r0]
- bl pokemon_ailments_get_primary
- lsls r0, 24
- lsrs r3, r0, 24
-_0811F6C4:
- ldr r1, _0811F6DC @ =gUnknown_2022B58
- mov r2, r10
- lsls r0, r2, 5
- adds r0, r1
- ldrh r0, [r0]
- ldr r1, _0811F6E0 @ =gUnknown_203B0B4
- ldr r2, [r1]
- adds r2, r5
- adds r1, r3, 0
- bl party_menu_link_mon_status_condition_object
- b _0811F728
- .align 2, 0
-_0811F6DC: .4byte gUnknown_2022B58
-_0811F6E0: .4byte gUnknown_203B0B4
-_0811F6E4:
- movs r0, 0x64
- adds r1, r7, 0
- muls r1, r0
- ldr r0, _0811F738 @ =gPlayerParty
- adds r6, r1, r0
- adds r0, r6, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0811F728
- ldr r4, _0811F73C @ =gUnknown_203B0B4
- lsls r5, r7, 4
- ldr r1, [r4]
- adds r1, r5
- adds r0, r6, 0
- adds r2, r7, 0
- bl party_menu_icon_anim
- ldr r1, [r4]
- adds r1, r5
- adds r0, r6, 0
- bl party_menu_held_item_object
- ldr r1, [r4]
- adds r1, r5
- adds r0, r6, 0
- bl party_menu_pokeball_object
- ldr r1, [r4]
- adds r1, r5
- adds r0, r6, 0
- bl party_menu_status_condition_object
-_0811F728:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F738: .4byte gPlayerParty
-_0811F73C: .4byte gUnknown_203B0B4
- thumb_func_end party_menu_add_per_mon_objects_internal
-
- thumb_func_start party_menu_add_per_mon_objects
-party_menu_add_per_mon_objects: @ 811F740
- push {r4,r5,lr}
- ldr r5, _0811F768 @ =gUnknown_203B09C
- ldr r0, [r5]
- movs r4, 0x86
- lsls r4, 2
- adds r0, r4
- ldrb r0, [r0]
- bl party_menu_add_per_mon_objects_internal
- ldr r1, [r5]
- adds r1, r4
- ldrh r0, [r1]
- adds r0, 0x1
- strh r0, [r1]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x6
- beq _0811F76C
- movs r0, 0
- b _0811F76E
- .align 2, 0
-_0811F768: .4byte gUnknown_203B09C
-_0811F76C:
- movs r0, 0x1
-_0811F76E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end party_menu_add_per_mon_objects
-
- thumb_func_start sub_811F774
-sub_811F774: @ 811F774
- push {r4,lr}
- sub sp, 0xC
- ldr r0, _0811F79C @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x5
- bne _0811F7A0
- movs r0, 0x7
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r1, 0xE
- movs r2, 0x17
- movs r3, 0x11
- bl FillBgTilemapBufferRect
- b _0811F808
- .align 2, 0
-_0811F79C: .4byte gUnknown_203B0A0
-_0811F7A0:
- ldr r4, _0811F7D8 @ =gUnknown_203B09C
- ldr r0, [r4]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _0811F7E0
- movs r0, 0xBF
- movs r1, 0x88
- bl sub_8122794
- ldr r3, [r4]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x7F
- ands r0, r1
- lsls r0, 4
- ldrh r2, [r3, 0x8]
- ldr r1, _0811F7DC @ =0xfffff80f
- ands r1, r2
- orrs r1, r0
- strh r1, [r3, 0x8]
- bl sub_811F9DC
- movs r0, 0xBF
- movs r1, 0x98
- bl sub_8122794
- b _0811F7E8
- .align 2, 0
-_0811F7D8: .4byte gUnknown_203B09C
-_0811F7DC: .4byte 0xfffff80f
-_0811F7E0:
- movs r0, 0xC6
- movs r1, 0x94
- bl sub_8122754
-_0811F7E8:
- ldr r3, [r4]
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x7F
- ands r0, r1
- lsls r0, 11
- ldr r1, [r3, 0x8]
- ldr r2, _0811F810 @ =0xfffc07ff
- ands r1, r2
- orrs r1, r0
- str r1, [r3, 0x8]
- ldr r0, _0811F814 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- movs r1, 0x1
- bl sub_811F818
-_0811F808:
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F810: .4byte 0xfffc07ff
-_0811F814: .4byte gUnknown_203B0A0
- thumb_func_end sub_811F774
-
- thumb_func_start sub_811F818
-sub_811F818: @ 811F818
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r8, r1
- cmp r7, 0x6
- beq _0811F884
- cmp r7, 0x7
- beq _0811F8C0
- movs r0, 0x64
- muls r0, r7
- ldr r1, _0811F87C @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0811F934
- ldr r6, _0811F880 @ =gUnknown_203B0B4
- lsls r5, r7, 4
- ldr r4, [r6]
- adds r4, r5
- adds r0, r7, 0
- mov r1, r8
- bl sub_811F944
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_812142C
- ldr r0, [r6]
- adds r0, r5, r0
- ldrb r0, [r0, 0x9]
- mov r1, r8
- bl sub_812238C
- ldr r0, [r6]
- adds r5, r0
- ldrb r0, [r5, 0xB]
- mov r1, r8
- bl sub_81227B8
- b _0811F934
- .align 2, 0
-_0811F87C: .4byte gPlayerParty
-_0811F880: .4byte gUnknown_203B0B4
-_0811F884:
- mov r0, r8
- cmp r0, 0
- bne _0811F89E
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r1, 0x17
- movs r2, 0x10
- movs r3, 0x7
- bl SetBgRectPal
- b _0811F8B0
-_0811F89E:
- movs r0, 0x2
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0x17
- movs r2, 0x10
- movs r3, 0x7
- bl SetBgRectPal
-_0811F8B0:
- ldr r0, _0811F8BC @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrh r0, [r0, 0x8]
- lsls r0, 21
- b _0811F926
- .align 2, 0
-_0811F8BC: .4byte gUnknown_203B09C
-_0811F8C0:
- ldr r0, _0811F8E0 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- bne _0811F8F2
- mov r0, r8
- cmp r0, 0
- bne _0811F8E4
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r1, 0x17
- movs r2, 0x11
- b _0811F904
- .align 2, 0
-_0811F8E0: .4byte gUnknown_203B09C
-_0811F8E4:
- movs r0, 0x2
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0x17
- movs r2, 0x11
- b _0811F904
-_0811F8F2:
- mov r0, r8
- cmp r0, 0
- bne _0811F90C
- movs r0, 0x2
- str r0, [sp]
- movs r0, 0x1
- str r0, [sp, 0x4]
- movs r1, 0x17
- movs r2, 0x12
-_0811F904:
- movs r3, 0x7
- bl SetBgRectPal
- b _0811F91E
-_0811F90C:
- movs r0, 0x2
- str r0, [sp]
- str r0, [sp, 0x4]
- movs r0, 0x1
- movs r1, 0x17
- movs r2, 0x12
- movs r3, 0x7
- bl SetBgRectPal
-_0811F91E:
- ldr r0, _0811F940 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldr r0, [r0, 0x8]
- lsls r0, 14
-_0811F926:
- lsrs r0, 25
- mov r1, r8
- bl sub_81227B8
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
-_0811F934:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0811F940: .4byte gUnknown_203B09C
- thumb_func_end sub_811F818
-
- thumb_func_start sub_811F944
-sub_811F944: @ 811F944
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- lsrs r1, 24
- movs r4, 0
- cmp r1, 0x1
- bne _0811F956
- movs r4, 0x1
-_0811F956:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0811F9D4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _0811F96C
- movs r0, 0x2
- orrs r4, r0
-_0811F96C:
- ldr r2, _0811F9D8 @ =gUnknown_203B0A0
- ldrb r1, [r2, 0x8]
- movs r0, 0x30
- ands r0, r1
- cmp r0, 0x20
- bne _0811F98C
- cmp r5, 0x1
- beq _0811F984
- cmp r5, 0x4
- beq _0811F984
- cmp r5, 0x5
- bne _0811F98C
-_0811F984:
- movs r0, 0x8
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0811F98C:
- ldrb r1, [r2, 0xB]
- cmp r1, 0x9
- bne _0811F99A
- movs r0, 0x10
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0811F99A:
- cmp r1, 0x8
- bne _0811F9B6
- movs r0, 0x9
- ldrsb r0, [r2, r0]
- cmp r5, r0
- beq _0811F9AE
- movs r0, 0xA
- ldrsb r0, [r2, r0]
- cmp r5, r0
- bne _0811F9B6
-_0811F9AE:
- movs r0, 0x4
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0811F9B6:
- ldrb r0, [r2, 0xB]
- cmp r0, 0xA
- bne _0811F9CC
- movs r0, 0x9
- ldrsb r0, [r2, r0]
- cmp r5, r0
- bne _0811F9CC
- movs r0, 0x20
- orrs r4, r0
- lsls r0, r4, 24
- lsrs r4, r0, 24
-_0811F9CC:
- adds r0, r4, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_0811F9D4: .4byte gPlayerParty
-_0811F9D8: .4byte gUnknown_203B0A0
- thumb_func_end sub_811F944
-
- thumb_func_start sub_811F9DC
-sub_811F9DC: @ 811F9DC
- push {r4-r6,lr}
- sub sp, 0xC
- ldr r1, _0811FA18 @ =gUnknown_8459FC4
- movs r6, 0x7
- str r6, [sp]
- movs r5, 0x2
- str r5, [sp, 0x4]
- movs r4, 0x11
- str r4, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0x17
- movs r3, 0x10
- bl CopyToBgTilemapBufferRect_ChangePalette
- ldr r1, _0811FA1C @ =gUnknown_8459FE0
- str r6, [sp]
- str r5, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0x17
- movs r3, 0x12
- bl CopyToBgTilemapBufferRect_ChangePalette
- movs r0, 0x1
- bl ScheduleBgCopyTilemapToVram
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811FA18: .4byte gUnknown_8459FC4
-_0811FA1C: .4byte gUnknown_8459FE0
- thumb_func_end sub_811F9DC
-
- thumb_func_start IsMultiBattle
-IsMultiBattle: @ 811FA20
- push {lr}
- ldr r0, _0811FA34 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x4B
- ands r0, r1
- cmp r0, 0x4B
- beq _0811FA38
- movs r0, 0
- b _0811FA3A
- .align 2, 0
-_0811FA34: .4byte gBattleTypeFlags
-_0811FA38:
- movs r0, 0x1
-_0811FA3A:
- pop {r1}
- bx r1
- thumb_func_end IsMultiBattle
-
- thumb_func_start sub_811FA40
-sub_811FA40: @ 811FA40
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r6, r1, 0
- movs r0, 0x64
- bl Alloc
- adds r5, r0, 0
- adds r1, r4, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r4, 0
- adds r1, r6, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r6, 0
- adds r1, r5, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r5, 0
- bl Free
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_811FA40
-
- thumb_func_start sub_811FA78
-sub_811FA78: @ 811FA78
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x1
- negs r0, r0
- movs r1, 0x2
- negs r1, r1
- movs r2, 0
- str r2, [sp]
- movs r3, 0x10
- bl BeginNormalPaletteFade
- ldr r1, _0811FAAC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0811FAB0 @ =sub_811FAB4
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811FAAC: .4byte gTasks
-_0811FAB0: .4byte sub_811FAB4
- thumb_func_end sub_811FA78
-
- thumb_func_start sub_811FAB4
-sub_811FAB4: @ 811FAB4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _0811FAE8 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811FB04
- ldr r4, _0811FAEC @ =gUnknown_203B0A0
- ldrb r1, [r4, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _0811FAD6
- bl sub_81280C4
-_0811FAD6:
- ldr r0, _0811FAF0 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldr r0, [r0, 0x4]
- cmp r0, 0
- beq _0811FAF4
- bl SetMainCallback2
- b _0811FAFA
- .align 2, 0
-_0811FAE8: .4byte gPaletteFade
-_0811FAEC: .4byte gUnknown_203B0A0
-_0811FAF0: .4byte gUnknown_203B09C
-_0811FAF4:
- ldr r0, [r4]
- bl SetMainCallback2
-_0811FAFA:
- bl sub_811F070
- adds r0, r5, 0
- bl DestroyTask
-_0811FB04:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811FAB4
-
- thumb_func_start GetCursorSelectionMonId
-GetCursorSelectionMonId: @ 811FB0C
- ldr r0, _0811FB14 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- bx lr
- .align 2, 0
-_0811FB14: .4byte gUnknown_203B0A0
- thumb_func_end GetCursorSelectionMonId
-
- thumb_func_start sub_811FB18
-sub_811FB18: @ 811FB18
- ldr r0, _0811FB24 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- lsls r0, 28
- lsrs r0, 28
- bx lr
- .align 2, 0
-_0811FB24: .4byte gUnknown_203B0A0
- thumb_func_end sub_811FB18
-
- thumb_func_start sub_811FB28
-sub_811FB28: @ 811FB28
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- ldr r0, _0811FB64 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0811FB98
- bl sub_80BF748
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811FB98
- bl sub_811FBA4
- adds r4, r0, 0
- bl sub_811FEFC
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x2
- beq _0811FB78
- cmp r0, 0x2
- bgt _0811FB68
- cmp r0, 0x1
- beq _0811FB6E
- b _0811FB98
- .align 2, 0
-_0811FB64: .4byte gPaletteFade
-_0811FB68:
- cmp r0, 0x8
- beq _0811FB82
- b _0811FB98
-_0811FB6E:
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_811FBC4
- b _0811FB98
-_0811FB78:
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_811FD88
- b _0811FB98
-_0811FB82:
- ldr r0, _0811FBA0 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _0811FB98
- movs r0, 0x5
- bl PlaySE
- bl sub_8124258
-_0811FB98:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0811FBA0: .4byte gUnknown_203B09C
- thumb_func_end sub_811FB28
-
- thumb_func_start sub_811FBA4
-sub_811FBA4: @ 811FBA4
- push {lr}
- ldr r0, _0811FBB8 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0xB]
- cmp r1, 0x8
- beq _0811FBB2
- cmp r1, 0xA
- bne _0811FBBC
-_0811FBB2:
- adds r0, 0xA
- b _0811FBBE
- .align 2, 0
-_0811FBB8: .4byte gUnknown_203B0A0
-_0811FBBC:
- adds r0, 0x9
-_0811FBBE:
- pop {r1}
- bx r1
- thumb_func_end sub_811FBA4
-
- thumb_func_start sub_811FBC4
-sub_811FBC4: @ 811FBC4
- push {r4-r6,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0
- ldrsb r0, [r5, r0]
- cmp r0, 0x6
- bne _0811FBE4
- ldr r0, _0811FBE0 @ =gUnknown_203B0A0
- ldr r1, [r0, 0x4]
- adds r0, r6, 0
- bl _call_via_r1
- b _0811FD56
- .align 2, 0
-_0811FBE0: .4byte gUnknown_203B0A0
-_0811FBE4:
- ldr r0, _0811FBFC @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- subs r0, 0x3
- cmp r0, 0xA
- bls _0811FBF0
- b _0811FD4A
-_0811FBF0:
- lsls r0, 2
- ldr r1, _0811FC00 @ =_0811FC04
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0811FBFC: .4byte gUnknown_203B0A0
-_0811FC00: .4byte _0811FC04
- .align 2, 0
-_0811FC04:
- .4byte _0811FC46
- .4byte _0811FD4A
- .4byte _0811FCC0
- .4byte _0811FCC0
- .4byte _0811FCA6
- .4byte _0811FCDA
- .4byte _0811FD4A
- .4byte _0811FC30
- .4byte _0811FCE8
- .4byte _0811FC8C
- .4byte _0811FD34
-_0811FC30:
- adds r0, r5, 0
- bl sub_811FD5C
- lsls r0, 24
- cmp r0, 0
- bne _0811FC3E
- b _0811FD56
-_0811FC3E:
- adds r0, r6, 0
- bl sub_80E5724
- b _0811FD56
-_0811FC46:
- adds r0, r5, 0
- bl sub_811FD5C
- lsls r0, 24
- cmp r0, 0
- bne _0811FC54
- b _0811FD56
-_0811FC54:
- ldr r0, _0811FC78 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _0811FC68
- ldr r0, _0811FC7C @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _0811FC80 @ =sub_8128184
- str r0, [r1, 0x4]
-_0811FC68:
- ldr r0, _0811FC84 @ =gUnknown_3005E98
- ldr r1, _0811FC88 @ =sub_81255BC
- ldr r2, [r0]
- adds r0, r6, 0
- bl _call_via_r2
- b _0811FD56
- .align 2, 0
-_0811FC78: .4byte gUnknown_203B0A0
-_0811FC7C: .4byte gUnknown_203B09C
-_0811FC80: .4byte sub_8128184
-_0811FC84: .4byte gUnknown_3005E98
-_0811FC88: .4byte sub_81255BC
-_0811FC8C:
- adds r0, r5, 0
- bl sub_811FD5C
- lsls r0, 24
- cmp r0, 0
- beq _0811FD56
- movs r0, 0x5
- bl PlaySE
- adds r0, r6, 0
- bl sub_8126DC8
- b _0811FD56
-_0811FCA6:
- adds r0, r5, 0
- bl sub_811FD5C
- lsls r0, 24
- cmp r0, 0
- beq _0811FD56
- movs r0, 0x5
- bl PlaySE
- adds r0, r6, 0
- bl sub_8127404
- b _0811FD56
-_0811FCC0:
- adds r0, r5, 0
- bl sub_811FD5C
- lsls r0, 24
- cmp r0, 0
- beq _0811FD56
- movs r0, 0x5
- bl PlaySE
- adds r0, r6, 0
- bl sub_8126F40
- b _0811FD56
-_0811FCDA:
- movs r0, 0x5
- bl PlaySE
- adds r0, r6, 0
- bl sub_8122E5C
- b _0811FD56
-_0811FCE8:
- movs r0, 0x5
- bl PlaySE
- ldr r1, _0811FD24 @ =gSpecialVar_0x8004
- movs r0, 0
- ldrsb r0, [r5, r0]
- strh r0, [r1]
- ldr r0, _0811FD28 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x7
- bne _0811FD1A
- ldr r4, _0811FD2C @ =gSpecialVar_0x8005
- movs r1, 0
- ldrsb r1, [r5, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0811FD30 @ =gPlayerParty
- adds r0, r1
- bl GetNumberOfRelearnableMoves
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4]
-_0811FD1A:
- adds r0, r6, 0
- bl sub_811FA78
- b _0811FD56
- .align 2, 0
-_0811FD24: .4byte gSpecialVar_0x8004
-_0811FD28: .4byte gUnknown_203B0A0
-_0811FD2C: .4byte gSpecialVar_0x8005
-_0811FD30: .4byte gPlayerParty
-_0811FD34:
- adds r0, r5, 0
- bl sub_811FD5C
- lsls r0, 24
- cmp r0, 0
- beq _0811FD56
- ldrb r1, [r5]
- adds r0, r6, 0
- bl sub_81209F4
- b _0811FD56
-_0811FD4A:
- movs r0, 0x5
- bl PlaySE
- adds r0, r6, 0
- bl sub_8122C30
-_0811FD56:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_811FBC4
-
- thumb_func_start sub_811FD5C
-sub_811FD5C: @ 811FD5C
- push {lr}
- ldrb r1, [r0]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0811FD78 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0x1
- beq _0811FD7C
- movs r0, 0x1
- b _0811FD84
- .align 2, 0
-_0811FD78: .4byte gPlayerParty
-_0811FD7C:
- movs r0, 0x1A
- bl PlaySE
- movs r0, 0
-_0811FD84:
- pop {r1}
- bx r1
- thumb_func_end sub_811FD5C
-
- thumb_func_start sub_811FD88
-sub_811FD88: @ 811FD88
- push {r4,r5,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0811FDA4 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x8
- beq _0811FDBA
- cmp r0, 0x8
- bgt _0811FDA8
- cmp r0, 0x1
- beq _0811FDB2
- b _0811FDD6
- .align 2, 0
-_0811FDA4: .4byte gUnknown_203B0A0
-_0811FDA8:
- cmp r0, 0xA
- beq _0811FDBA
- cmp r0, 0xD
- beq _0811FDC8
- b _0811FDD6
-_0811FDB2:
- movs r0, 0x1A
- bl PlaySE
- b _0811FE14
-_0811FDBA:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81235E8
- b _0811FE14
-_0811FDC8:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_8120A58
- b _0811FE14
-_0811FDD6:
- movs r0, 0x5
- bl PlaySE
- ldr r0, _0811FDF0 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x4
- bne _0811FDF4
- adds r0, r4, 0
- bl sub_811FE24
- b _0811FE14
- .align 2, 0
-_0811FDF0: .4byte gUnknown_203B0A0
-_0811FDF4:
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- cmp r0, 0
- bne _0811FE04
- ldr r1, _0811FE1C @ =gSpecialVar_0x8004
- movs r0, 0x7
- strh r0, [r1]
-_0811FE04:
- ldr r0, _0811FE20 @ =gUnknown_203B0C0
- movs r1, 0
- strb r1, [r0]
- movs r0, 0x7
- strb r0, [r5]
- adds r0, r4, 0
- bl sub_811FA78
-_0811FE14:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811FE1C: .4byte gSpecialVar_0x8004
-_0811FE20: .4byte gUnknown_203B0C0
- thumb_func_end sub_811FD88
-
- thumb_func_start sub_811FE24
-sub_811FE24: @ 811FE24
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _0811FE5C @ =gUnknown_203B09C
- ldr r0, [r0]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r5, _0811FE60 @ =gStringVar4
- ldr r1, _0811FE64 @ =gUnknown_84176CF
- adds r0, r5, 0
- bl StringExpandPlaceholders
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _0811FE68 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0811FE6C @ =sub_811FE70
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0811FE5C: .4byte gUnknown_203B09C
-_0811FE60: .4byte gStringVar4
-_0811FE64: .4byte gUnknown_84176CF
-_0811FE68: .4byte gTasks
-_0811FE6C: .4byte sub_811FE70
- thumb_func_end sub_811FE24
-
- thumb_func_start sub_811FE70
-sub_811FE70: @ 811FE70
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811FE94
- bl sub_812200C
- ldr r0, _0811FE9C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _0811FEA0 @ =sub_811FEA4
- str r0, [r1]
-_0811FE94:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0811FE9C: .4byte gTasks
-_0811FEA0: .4byte sub_811FEA4
- thumb_func_end sub_811FE70
-
- thumb_func_start sub_811FEA4
-sub_811FEA4: @ 811FEA4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811FECA
- cmp r1, 0
- bgt _0811FEC4
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0811FEE8
- b _0811FEF4
-_0811FEC4:
- cmp r1, 0x1
- beq _0811FEEE
- b _0811FEF4
-_0811FECA:
- ldr r0, _0811FEE0 @ =gUnknown_203B0C0
- strb r1, [r0]
- ldr r1, _0811FEE4 @ =gUnknown_203B0A0
- movs r0, 0x7
- strb r0, [r1, 0x9]
- bl sub_81274FC
- adds r0, r4, 0
- bl sub_811FA78
- b _0811FEF4
- .align 2, 0
-_0811FEE0: .4byte gUnknown_203B0C0
-_0811FEE4: .4byte gUnknown_203B0A0
-_0811FEE8:
- movs r0, 0x5
- bl PlaySE
-_0811FEEE:
- adds r0, r4, 0
- bl sub_81203B8
-_0811FEF4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_811FEA4
-
- thumb_func_start sub_811FEFC
-sub_811FEFC: @ 811FEFC
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _0811FF14 @ =gMain
- ldrh r1, [r0, 0x30]
- adds r3, r0, 0
- cmp r1, 0x20
- beq _0811FF2A
- cmp r1, 0x20
- bgt _0811FF18
- cmp r1, 0x10
- beq _0811FF2E
- b _0811FF32
- .align 2, 0
-_0811FF14: .4byte gMain
-_0811FF18:
- cmp r1, 0x40
- beq _0811FF22
- cmp r1, 0x80
- beq _0811FF26
- b _0811FF32
-_0811FF22:
- movs r1, 0xFF
- b _0811FF4E
-_0811FF26:
- movs r1, 0x1
- b _0811FF4E
-_0811FF2A:
- movs r1, 0xFE
- b _0811FF4E
-_0811FF2E:
- movs r1, 0x2
- b _0811FF4E
-_0811FF32:
- bl sub_80BF66C
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0811FF46
- cmp r0, 0x2
- beq _0811FF4A
- movs r1, 0
- b _0811FF4C
-_0811FF46:
- movs r1, 0xFF
- b _0811FF4C
-_0811FF4A:
- movs r1, 0x1
-_0811FF4C:
- ldr r3, _0811FF5C @ =gMain
-_0811FF4E:
- ldrh r2, [r3, 0x2E]
- movs r0, 0x8
- ands r0, r2
- cmp r0, 0
- beq _0811FF60
- movs r0, 0x8
- b _0811FF8C
- .align 2, 0
-_0811FF5C: .4byte gMain
-_0811FF60:
- lsls r0, r1, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0811FF72
- adds r0, r4, 0
- bl sub_811FF94
- movs r0, 0
- b _0811FF8C
-_0811FF72:
- movs r0, 0x1
- ands r0, r2
- cmp r0, 0
- beq _0811FF86
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x7
- bne _0811FF86
- movs r0, 0x2
- b _0811FF8C
-_0811FF86:
- ldrh r1, [r3, 0x2E]
- movs r0, 0x3
- ands r0, r1
-_0811FF8C:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_811FEFC
-
- thumb_func_start sub_811FF94
-sub_811FF94: @ 811FF94
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldrb r4, [r5]
- ldr r0, _0811FFB8 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- lsls r0, 26
- lsrs r0, 30
- cmp r0, 0
- bne _0811FFBC
- lsls r1, 24
- asrs r1, 24
- adds r0, r5, 0
- bl sub_811FFF0
- b _0811FFC6
- .align 2, 0
-_0811FFB8: .4byte gUnknown_203B0A0
-_0811FFBC:
- lsls r1, 24
- asrs r1, 24
- adds r0, r5, 0
- bl sub_81200F8
-_0811FFC6:
- movs r1, 0
- ldrsb r1, [r5, r1]
- lsls r4, 24
- asrs r0, r4, 24
- cmp r1, r0
- beq _0811FFE8
- movs r0, 0x5
- bl PlaySE
- lsrs r0, r4, 24
- movs r1, 0
- bl sub_811F818
- ldrb r0, [r5]
- movs r1, 0x1
- bl sub_811F818
-_0811FFE8:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_811FF94
-
- thumb_func_start sub_811FFF0
-sub_811FFF0: @ 811FFF0
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 24
- asrs r1, 24
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08120016
- cmp r1, r0
- bgt _0812000C
- subs r0, 0x1
- cmp r1, r0
- beq _081200C0
- b _081200EE
-_0812000C:
- cmp r1, 0x1
- beq _0812005C
- cmp r1, 0x2
- beq _08120094
- b _081200EE
-_08120016:
- ldrb r0, [r4]
- movs r1, 0
- ldrsb r1, [r4, r1]
- cmp r1, 0
- bne _08120024
- movs r0, 0x7
- b _081200EC
-_08120024:
- cmp r1, 0x6
- bne _08120034
- ldr r0, _08120030 @ =gPlayerPartyCount
- ldrb r0, [r0]
- subs r0, 0x1
- b _081200EC
- .align 2, 0
-_08120030: .4byte gPlayerPartyCount
-_08120034:
- cmp r1, 0x7
- bne _08120058
- ldr r0, _08120048 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _0812004C
- movs r0, 0x6
- b _081200EC
- .align 2, 0
-_08120048: .4byte gUnknown_203B09C
-_0812004C:
- ldr r0, _08120054 @ =gPlayerPartyCount
- ldrb r0, [r0]
- subs r0, 0x1
- b _081200EC
- .align 2, 0
-_08120054: .4byte gPlayerPartyCount
-_08120058:
- subs r0, 0x1
- b _081200EC
-_0812005C:
- ldrb r2, [r4]
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x7
- beq _081200EA
- movs r1, 0
- ldrsb r1, [r4, r1]
- ldr r0, _08120084 @ =gPlayerPartyCount
- ldrb r0, [r0]
- subs r0, 0x1
- cmp r1, r0
- bne _08120090
- ldr r0, _08120088 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _0812008C
- movs r0, 0x6
- b _081200EC
- .align 2, 0
-_08120084: .4byte gPlayerPartyCount
-_08120088: .4byte gUnknown_203B09C
-_0812008C:
- movs r0, 0x7
- b _081200EC
-_08120090:
- adds r0, r2, 0x1
- b _081200EC
-_08120094:
- ldr r0, _081200B8 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r0, 0x1
- beq _081200EE
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0
- bne _081200EE
- ldr r0, _081200BC @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 28
- lsrs r0, 29
- cmp r0, 0
- bne _081200EC
- movs r0, 0x1
- b _081200EC
- .align 2, 0
-_081200B8: .4byte gPlayerPartyCount
-_081200BC: .4byte gUnknown_203B09C
-_081200C0:
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0
- beq _081200EE
- cmp r0, 0x6
- beq _081200EE
- cmp r0, 0x7
- beq _081200EE
- ldr r0, _081200F4 @ =gUnknown_203B09C
- ldr r3, [r0]
- movs r1, 0
- ldrsb r1, [r4, r1]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r3, 0x8]
- movs r0, 0xF
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x8]
-_081200EA:
- movs r0, 0
-_081200EC:
- strb r0, [r4]
-_081200EE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081200F4: .4byte gUnknown_203B09C
- thumb_func_end sub_811FFF0
-
- thumb_func_start sub_81200F8
-sub_81200F8: @ 81200F8
- push {r4-r6,lr}
- adds r4, r0, 0
- lsls r1, 24
- lsrs r2, r1, 24
- asrs r5, r1, 24
- movs r6, 0x1
- negs r6, r6
- cmp r5, r6
- beq _08120124
- cmp r5, r6
- bgt _0812011A
- movs r0, 0x2
- negs r0, r0
- cmp r5, r0
- bne _08120118
- b _08120238
-_08120118:
- b _08120290
-_0812011A:
- cmp r5, 0x1
- beq _08120180
- cmp r5, 0x2
- beq _081201C0
- b _08120290
-_08120124:
- ldrb r1, [r4]
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0
- bne _08120132
- movs r0, 0x7
- b _0812028E
-_08120132:
- cmp r0, 0x6
- bne _08120144
- ldr r0, _08120140 @ =gPlayerPartyCount
- ldrb r0, [r0]
- subs r0, 0x1
- b _0812028E
- .align 2, 0
-_08120140: .4byte gPlayerPartyCount
-_08120144:
- cmp r0, 0x7
- bne _08120160
- ldr r0, _08120158 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _0812015C
- movs r0, 0x6
- b _0812028E
- .align 2, 0
-_08120158: .4byte gUnknown_203B09C
-_0812015C:
- subs r0, r1, 0x1
- strb r0, [r4]
-_08120160:
- movs r0, 0
- ldrsb r0, [r4, r0]
- lsls r1, r2, 24
- asrs r1, 24
- bl sub_812029C
- lsls r0, 24
- lsrs r2, r0, 24
- asrs r0, 24
- movs r1, 0x1
- negs r1, r1
- cmp r0, r1
- bne _0812017C
- b _08120290
-_0812017C:
- strb r2, [r4]
- b _08120290
-_08120180:
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0x6
- bne _0812018C
- movs r0, 0x7
- b _0812028E
-_0812018C:
- cmp r0, 0x7
- bne _08120194
- movs r0, 0
- b _0812028E
-_08120194:
- movs r0, 0
- ldrsb r0, [r4, r0]
- movs r1, 0x1
- bl sub_812029C
- lsls r0, 24
- lsrs r2, r0, 24
- asrs r0, 24
- cmp r0, r6
- bne _0812017C
- ldr r0, _081201B8 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _081201BC
- movs r0, 0x6
- b _0812028E
- .align 2, 0
-_081201B8: .4byte gUnknown_203B09C
-_081201BC:
- movs r0, 0x7
- b _0812028E
-_081201C0:
- movs r0, 0
- ldrsb r0, [r4, r0]
- cmp r0, 0
- bne _081201F8
- ldr r0, _081201E8 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 28
- lsrs r6, r0, 29
- cmp r6, 0x3
- bne _081201F0
- ldr r0, _081201EC @ =gPlayerParty + 300 @ &gPlayerParty[3]
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08120290
- strb r6, [r4]
- b _08120290
- .align 2, 0
-_081201E8: .4byte gUnknown_203B09C
-_081201EC: .4byte gPlayerParty + 300 @ &gPlayerParty[3]
-_081201F0:
- ldr r0, _081201F4 @ =gPlayerParty + 200 @ &gPlayerParty[2]
- b _0812020C
- .align 2, 0
-_081201F4: .4byte gPlayerParty + 200 @ &gPlayerParty[2]
-_081201F8:
- cmp r0, 0x1
- bne _08120290
- ldr r0, _0812021C @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 28
- lsrs r5, r0, 29
- cmp r5, 0x5
- bne _08120224
- ldr r0, _08120220 @ =gPlayerParty + 500 @ &gPlayerParty[5]
-_0812020C:
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08120290
- strb r5, [r4]
- b _08120290
- .align 2, 0
-_0812021C: .4byte gUnknown_203B09C
-_08120220: .4byte gPlayerParty + 500 @ &gPlayerParty[5]
-_08120224:
- ldr r0, _08120234 @ =gPlayerParty + 400 @ &gPlayerParty[4]
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08120290
- movs r0, 0x4
- b _0812028E
- .align 2, 0
-_08120234: .4byte gPlayerParty + 400 @ &gPlayerParty[4]
-_08120238:
- ldrb r1, [r4]
- subs r0, r1, 0x2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08120268
- ldr r0, _08120264 @ =gUnknown_203B09C
- ldr r3, [r0]
- movs r1, 0
- ldrsb r1, [r4, r1]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r3, 0x8]
- movs r0, 0xF
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x8]
- movs r0, 0
- b _0812028E
- .align 2, 0
-_08120264: .4byte gUnknown_203B09C
-_08120268:
- subs r0, r1, 0x4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08120290
- ldr r0, _08120298 @ =gUnknown_203B09C
- ldr r3, [r0]
- movs r1, 0
- ldrsb r1, [r4, r1]
- movs r0, 0x7
- ands r1, r0
- lsls r1, 1
- ldrb r2, [r3, 0x8]
- movs r0, 0xF
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3, 0x8]
- movs r0, 0x1
-_0812028E:
- strb r0, [r4]
-_08120290:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08120298: .4byte gUnknown_203B09C
- thumb_func_end sub_81200F8
-
- thumb_func_start sub_812029C
-sub_812029C: @ 812029C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, 24
- asrs r6, r1, 24
-_081202A6:
- lsls r0, r5, 24
- asrs r0, 24
- adds r0, r6
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r1, r5, 24
- lsrs r0, r1, 24
- cmp r0, 0x5
- bhi _081202D4
- asrs r4, r1, 24
- movs r0, 0x64
- muls r0, r4
- ldr r1, _081202D0 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _081202A6
- adds r0, r4, 0
- b _081202D8
- .align 2, 0
-_081202D0: .4byte gPlayerParty
-_081202D4:
- movs r0, 0x1
- negs r0, r0
-_081202D8:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_812029C
-
- thumb_func_start GetMonNickname
-GetMonNickname: @ 81202E0
- push {r4,lr}
- adds r4, r1, 0
- movs r1, 0x2
- adds r2, r4, 0
- bl GetMonData
- adds r0, r4, 0
- bl StringGetEnd10
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end GetMonNickname
-
- thumb_func_start sub_81202F8
-sub_81202F8: @ 81202F8
- push {r4,lr}
- lsls r4, r1, 24
- lsrs r4, 24
- bl sub_8121FC0
- ldr r0, _08120320 @ =sub_8120328
- movs r1, 0x1
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08120324 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08120320: .4byte sub_8120328
-_08120324: .4byte gTasks
- thumb_func_end sub_81202F8
-
- thumb_func_start sub_8120328
-sub_8120328: @ 8120328
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- movs r0, 0x6
- bl RunTextPrinters_CheckActive
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _08120364
- ldr r0, _0812036C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- movs r2, 0x8
- ldrsh r0, [r1, r2]
- cmp r0, 0
- bne _0812035E
- movs r0, 0x6
- movs r1, 0
- bl ClearStdWindowAndFrameToTransparent
- movs r0, 0x6
- bl ClearWindowTilemap
-_0812035E:
- adds r0, r5, 0
- bl DestroyTask
-_08120364:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812036C: .4byte gTasks
- thumb_func_end sub_8120328
-
- thumb_func_start sub_8120370
-sub_8120370: @ 8120370
- push {lr}
- ldr r0, _08120380 @ =sub_8120328
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_08120380: .4byte sub_8120328
- thumb_func_end sub_8120370
-
- thumb_func_start sub_8120384
-sub_8120384: @ 8120384
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_80BF748
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081203AA
- movs r0, 0
- bl sub_8121D0C
- ldr r0, _081203B0 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _081203B4 @ =sub_811FB28
- str r0, [r1]
-_081203AA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081203B0: .4byte gTasks
-_081203B4: .4byte sub_811FB28
- thumb_func_end sub_8120384
-
- thumb_func_start sub_81203B8
-sub_81203B8: @ 81203B8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08120410
- movs r0, 0x6
- movs r1, 0
- bl ClearStdWindowAndFrameToTransparent
- movs r0, 0x6
- bl ClearWindowTilemap
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081203FC
- ldr r0, _081203F4 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _081203F8 @ =sub_8120384
- b _0812040E
- .align 2, 0
-_081203F4: .4byte gTasks
-_081203F8: .4byte sub_8120384
-_081203FC:
- movs r0, 0
- bl sub_8121D0C
- ldr r0, _08120418 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812041C @ =sub_811FB28
-_0812040E:
- str r0, [r1]
-_08120410:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120418: .4byte gTasks
-_0812041C: .4byte sub_811FB28
- thumb_func_end sub_81203B8
-
- thumb_func_start sub_8120420
-sub_8120420: @ 8120420
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- lsls r2, 24
- lsrs r6, r2, 24
- lsls r3, 24
- cmp r3, 0
- bne _0812043C
- ldr r3, _08120438 @ =0x0000ffff
- movs r0, 0x5
- b _08120448
- .align 2, 0
-_08120438: .4byte 0x0000ffff
-_0812043C:
- ldr r0, _08120454 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x6
- bne _0812045C
- ldr r3, _08120458 @ =0x0000ffff
- movs r0, 0x7
-_08120448:
- adds r1, r5, 0
- adds r2, r4, 0
- bl ItemUse_SetQuestLogEvent
- b _08120468
- .align 2, 0
-_08120454: .4byte gUnknown_203B0A0
-_08120458: .4byte 0x0000ffff
-_0812045C:
- ldr r3, _08120498 @ =0x0000ffff
- movs r0, 0x6
- adds r1, r5, 0
- adds r2, r4, 0
- bl ItemUse_SetQuestLogEvent
-_08120468:
- ldr r1, _0812049C @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- ldr r1, _081204A0 @ =gStringVar2
- adds r0, r4, 0
- bl CopyItemName
- ldr r4, _081204A4 @ =gStringVar4
- ldr r1, _081204A8 @ =gUnknown_8416C2A
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- adds r1, r6, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08120498: .4byte 0x0000ffff
-_0812049C: .4byte gStringVar1
-_081204A0: .4byte gStringVar2
-_081204A4: .4byte gStringVar4
-_081204A8: .4byte gUnknown_8416C2A
- thumb_func_end sub_8120420
-
- thumb_func_start sub_81204AC
-sub_81204AC: @ 81204AC
- push {r4-r6,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- ldr r3, _081204F8 @ =0x0000ffff
- movs r0, 0x8
- adds r1, r6, 0
- adds r2, r4, 0
- bl ItemUse_SetQuestLogEvent
- ldr r1, _081204FC @ =gStringVar1
- adds r0, r6, 0
- bl GetMonNickname
- ldr r1, _08120500 @ =gStringVar2
- adds r0, r4, 0
- bl CopyItemName
- ldr r4, _08120504 @ =gStringVar4
- ldr r1, _08120508 @ =gUnknown_8416CAC
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081204F8: .4byte 0x0000ffff
-_081204FC: .4byte gStringVar1
-_08120500: .4byte gStringVar2
-_08120504: .4byte gStringVar4
-_08120508: .4byte gUnknown_8416CAC
- thumb_func_end sub_81204AC
-
- thumb_func_start sub_812050C
-sub_812050C: @ 812050C
- push {r4,r5,lr}
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- ldr r1, _08120548 @ =gStringVar1
- bl GetMonNickname
- ldr r1, _0812054C @ =gStringVar2
- adds r0, r4, 0
- bl CopyItemName
- ldr r4, _08120550 @ =gStringVar4
- ldr r1, _08120554 @ =gUnknown_8416C49
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120548: .4byte gStringVar1
-_0812054C: .4byte gStringVar2
-_08120550: .4byte gStringVar4
-_08120554: .4byte gUnknown_8416C49
- thumb_func_end sub_812050C
-
- thumb_func_start sub_8120558
-sub_8120558: @ 8120558
- push {r4-r6,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 24
- lsrs r6, 24
- ldr r0, _081205B0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _081205B4 @ =gPlayerParty
- adds r0, r1
- adds r1, r5, 0
- adds r2, r4, 0
- bl sub_8124B60
- ldr r1, _081205B8 @ =gStringVar1
- adds r0, r4, 0
- bl CopyItemName
- ldr r1, _081205BC @ =gStringVar2
- adds r0, r5, 0
- bl CopyItemName
- ldr r4, _081205C0 @ =gStringVar4
- ldr r1, _081205C4 @ =gUnknown_8416CEA
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- adds r1, r6, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081205B0: .4byte gUnknown_203B0A0
-_081205B4: .4byte gPlayerParty
-_081205B8: .4byte gStringVar1
-_081205BC: .4byte gStringVar2
-_081205C0: .4byte gStringVar4
-_081205C4: .4byte gUnknown_8416CEA
- thumb_func_end sub_8120558
-
- thumb_func_start sub_81205C8
-sub_81205C8: @ 81205C8
- push {r4-r7,lr}
- sub sp, 0x4
- adds r6, r0, 0
- lsls r5, r1, 16
- lsrs r4, r5, 16
- adds r7, r4, 0
- adds r0, r4, 0
- bl ItemIsMail
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081205F2
- adds r0, r6, 0
- adds r1, r4, 0
- bl GiveMailToMon
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _08120606
-_081205F2:
- mov r0, sp
- strb r7, [r0]
- mov r1, sp
- lsrs r0, r5, 24
- strb r0, [r1, 0x1]
- adds r0, r6, 0
- movs r1, 0xC
- mov r2, sp
- bl SetMonData
-_08120606:
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_81205C8
-
- thumb_func_start sub_8120610
-sub_8120610: @ 8120610
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r1, sp
- strh r0, [r1]
- cmp r0, 0
- bne _0812062C
- movs r0, 0
- b _0812064E
-_0812062C:
- movs r1, 0x1
- bl AddBagItem
- lsls r0, 24
- cmp r0, 0
- beq _0812064C
- movs r1, 0
- mov r0, sp
- strh r1, [r0]
- adds r0, r4, 0
- movs r1, 0xC
- mov r2, sp
- bl SetMonData
- movs r0, 0x2
- b _0812064E
-_0812064C:
- movs r0, 0x1
-_0812064E:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8120610
-
- thumb_func_start sub_8120658
-sub_8120658: @ 8120658
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl ItemId_GetPocket
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- beq _08120678
- cmp r0, 0x5
- beq _0812067E
- ldr r1, _08120674 @ =gStartMenuText_Bag
- b _08120686
- .align 2, 0
-_08120674: .4byte gStartMenuText_Bag
-_08120678:
- movs r0, 0xB6
- lsls r0, 1
- b _08120680
-_0812067E:
- ldr r0, _08120698 @ =0x0000016d
-_08120680:
- bl ItemId_GetName
- adds r1, r0, 0
-_08120686:
- ldr r0, _0812069C @ =gStringVar1
- bl StringCopy
- ldr r0, _081206A0 @ =gStringVar4
- ldr r1, _081206A4 @ =gUnknown_8416D78
- bl StringExpandPlaceholders
- pop {r0}
- bx r0
- .align 2, 0
-_08120698: .4byte 0x0000016d
-_0812069C: .4byte gStringVar1
-_081206A0: .4byte gStringVar4
-_081206A4: .4byte gUnknown_8416D78
- thumb_func_end sub_8120658
-
- thumb_func_start sub_81206A8
-sub_81206A8: @ 81206A8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r0, 2
- add r0, r8
- lsls r0, 3
- ldr r1, _08120750 @ =gTasks+0x8
- adds r7, r0, r1
- ldrh r0, [r7, 0x4]
- ldrh r1, [r7]
- adds r0, r1
- strh r0, [r7]
- ldrh r0, [r7, 0x6]
- subs r0, 0x1
- strh r0, [r7, 0x6]
- movs r2, 0x8
- ldrsh r0, [r7, r2]
- movs r5, 0x64
- muls r0, r5
- ldr r4, _08120754 @ =gPlayerParty
- adds r0, r4
- movs r1, 0x39
- adds r2, r7, 0
- bl SetMonData
- movs r3, 0x8
- ldrsh r2, [r7, r3]
- adds r0, r2, 0
- muls r0, r5
- adds r0, r4
- ldr r6, _08120758 @ =gUnknown_203B0B4
- lsls r2, 4
- ldr r1, [r6]
- adds r1, r2
- movs r2, 0x1
- bl sub_812199C
- movs r0, 0x8
- ldrsh r2, [r7, r0]
- adds r0, r2, 0
- muls r0, r5
- adds r0, r4
- lsls r2, 4
- ldr r1, [r6]
- adds r1, r2
- bl sub_8121AF0
- movs r1, 0x6
- ldrsh r0, [r7, r1]
- cmp r0, 0
- beq _08120724
- movs r2, 0
- ldrsh r1, [r7, r2]
- cmp r1, 0
- beq _08120724
- movs r3, 0x2
- ldrsh r0, [r7, r3]
- cmp r1, r0
- bne _08120746
-_08120724:
- movs r0, 0
- ldrsh r1, [r7, r0]
- movs r2, 0xA
- ldrsh r0, [r7, r2]
- cmp r1, r0
- ble _08120740
- ldr r0, _0812075C @ =gStringVar2
- movs r3, 0xA
- ldrsh r2, [r7, r3]
- subs r1, r2
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
-_08120740:
- mov r0, r8
- bl SwitchTaskToFollowupFunc
-_08120746:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08120750: .4byte gTasks+0x8
-_08120754: .4byte gPlayerParty
-_08120758: .4byte gUnknown_203B0B4
-_0812075C: .4byte gStringVar2
- thumb_func_end sub_81206A8
-
- thumb_func_start sub_8120760
-sub_8120760: @ 8120760
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- mov r8, r0
- mov r9, r1
- adds r5, r2, 0
- mov r10, r3
- ldr r7, [sp, 0x20]
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- lsls r5, 24
- lsrs r5, 24
- mov r0, r10
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- movs r0, 0x64
- mov r6, r9
- muls r6, r0
- ldr r0, _081207E4 @ =gPlayerParty
- adds r6, r0
- mov r0, r8
- lsls r4, r0, 2
- add r4, r8
- lsls r4, 3
- ldr r0, _081207E8 @ =gTasks+0x8
- adds r4, r0
- adds r0, r6, 0
- movs r1, 0x39
- bl GetMonData
- strh r0, [r4]
- adds r0, r6, 0
- movs r1, 0x3A
- bl GetMonData
- strh r0, [r4, 0x2]
- lsls r5, 24
- asrs r5, 24
- strh r5, [r4, 0x4]
- mov r0, r10
- strh r0, [r4, 0x6]
- mov r0, r9
- strh r0, [r4, 0x8]
- ldrh r0, [r4]
- strh r0, [r4, 0xA]
- ldr r1, _081207EC @ =sub_81206A8
- mov r0, r8
- adds r2, r7, 0
- bl SetTaskFuncWithFollowupFunc
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081207E4: .4byte gPlayerParty
-_081207E8: .4byte gTasks+0x8
-_081207EC: .4byte sub_81206A8
- thumb_func_end sub_8120760
-
- thumb_func_start sub_81207F0
-sub_81207F0: @ 81207F0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- ldr r1, _08120814 @ =gTasks+0x8
- adds r3, r0, r1
- cmp r5, 0x5
- bhi _08120852
- lsls r0, r5, 2
- ldr r1, _08120818 @ =_0812081C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08120814: .4byte gTasks+0x8
-_08120818: .4byte _0812081C
- .align 2, 0
-_0812081C:
- .4byte _08120834
- .4byte _0812083A
- .4byte _0812083E
- .4byte _08120842
- .4byte _08120846
- .4byte _0812084A
-_08120834:
- strh r2, [r3]
- strh r2, [r3, 0xA]
- b _08120852
-_0812083A:
- strh r2, [r3, 0x2]
- b _08120852
-_0812083E:
- strh r2, [r3, 0x4]
- b _08120852
-_08120842:
- strh r2, [r3, 0x6]
- b _08120852
-_08120846:
- strh r2, [r3, 0x8]
- b _08120852
-_0812084A:
- ldr r1, _08120858 @ =sub_81206A8
- adds r0, r4, 0
- bl SetTaskFuncWithFollowupFunc
-_08120852:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120858: .4byte sub_81206A8
- thumb_func_end sub_81207F0
-
- thumb_func_start pokemon_ailments_get_primary
-pokemon_ailments_get_primary: @ 812085C
- push {lr}
- adds r1, r0, 0
- movs r0, 0x88
- ands r0, r1
- cmp r0, 0
- beq _0812086C
- movs r0, 0x1
- b _0812089E
-_0812086C:
- movs r0, 0x40
- ands r0, r1
- cmp r0, 0
- beq _08120878
- movs r0, 0x2
- b _0812089E
-_08120878:
- movs r0, 0x7
- ands r0, r1
- cmp r0, 0
- beq _08120884
- movs r0, 0x3
- b _0812089E
-_08120884:
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _08120890
- movs r0, 0x4
- b _0812089E
-_08120890:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- bne _0812089C
- movs r0, 0
- b _0812089E
-_0812089C:
- movs r0, 0x5
-_0812089E:
- pop {r1}
- bx r1
- thumb_func_end pokemon_ailments_get_primary
-
- thumb_func_start sub_81208A4
-sub_81208A4: @ 81208A4
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _081208B6
- movs r0, 0x7
- b _081208DE
-_081208B6:
- adds r0, r4, 0
- movs r1, 0x37
- bl GetMonData
- bl pokemon_ailments_get_primary
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _081208DE
- adds r0, r4, 0
- movs r1, 0
- bl CheckPartyPokerus
- lsls r0, 24
- cmp r0, 0
- bne _081208DC
- movs r0, 0
- b _081208DE
-_081208DC:
- movs r0, 0x6
-_081208DE:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81208A4
-
- thumb_func_start sub_81208E4
-sub_81208E4: @ 81208E4
- push {r4,r5,lr}
- ldr r2, _08120934 @ =gUnknown_203B0A0
- ldrb r1, [r2, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0xB
- bne _0812096E
- adds r5, r2, 0
- adds r5, 0xE
- movs r0, 0
- strh r0, [r2, 0xE]
- ldr r0, _08120938 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- cmp r0, 0
- bne _08120944
- movs r4, 0
- ldr r0, _0812093C @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- bcs _0812096E
-_0812090C:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _08120940 @ =gPlayerParty
- adds r0, r1
- bl sub_812097C
- lsls r0, 16
- lsrs r0, 16
- lsls r0, r4
- ldrh r1, [r5]
- adds r0, r1
- strh r0, [r5]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0812093C @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- bcc _0812090C
- b _0812096E
- .align 2, 0
-_08120934: .4byte gUnknown_203B0A0
-_08120938: .4byte gSpecialVar_0x8005
-_0812093C: .4byte gPlayerPartyCount
-_08120940: .4byte gPlayerParty
-_08120944:
- movs r4, 0
- b _08120966
-_08120948:
- movs r0, 0x64
- muls r0, r4
- ldr r1, _08120974 @ =gPlayerParty
- adds r0, r1
- bl sub_81209AC
- lsls r0, 16
- lsrs r0, 16
- lsls r0, r4
- ldrh r1, [r5]
- adds r0, r1
- strh r0, [r5]
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_08120966:
- ldr r0, _08120978 @ =gPlayerPartyCount
- ldrb r0, [r0]
- cmp r4, r0
- bcc _08120948
-_0812096E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120974: .4byte gPlayerParty
-_08120978: .4byte gPlayerPartyCount
- thumb_func_end sub_81208E4
-
- thumb_func_start sub_812097C
-sub_812097C: @ 812097C
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0x1
- beq _081209A2
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- bl sub_8149A00
- cmp r0, 0
- beq _081209A2
- movs r0, 0x1
- b _081209A4
-_081209A2:
- movs r0, 0
-_081209A4:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_812097C
-
- thumb_func_start sub_81209AC
-sub_81209AC: @ 81209AC
- push {r4,lr}
- adds r4, r0, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0x1
- beq _081209CA
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0x55
- bne _081209CA
- movs r0, 0x1
- b _081209CC
-_081209CA:
- movs r0, 0
-_081209CC:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_81209AC
-
- thumb_func_start sub_81209D4
-sub_81209D4: @ 81209D4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _081209F0 @ =gUnknown_203B0A0
- movs r2, 0xE
- ldrsh r1, [r1, r2]
- asrs r1, r0
- movs r0, 0x1
- ands r1, r0
- cmp r1, 0
- bne _081209EC
- movs r0, 0
-_081209EC:
- pop {r1}
- bx r1
- .align 2, 0
-_081209F0: .4byte gUnknown_203B0A0
- thumb_func_end sub_81209D4
-
- thumb_func_start sub_81209F4
-sub_81209F4: @ 81209F4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- adds r0, r5, 0
- bl sub_81209D4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08120A24
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08120A20 @ =gSpecialVar_0x8004
- strh r5, [r0]
- adds r0, r4, 0
- bl sub_811FA78
- b _08120A46
- .align 2, 0
-_08120A20: .4byte gSpecialVar_0x8004
-_08120A24:
- movs r0, 0x1A
- bl PlaySE
- ldr r0, _08120A4C @ =gUnknown_8417696
- movs r1, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08120A50 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08120A54 @ =sub_81203B8
- str r1, [r0]
-_08120A46:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120A4C: .4byte gUnknown_8417696
-_08120A50: .4byte gTasks
-_08120A54: .4byte sub_81203B8
- thumb_func_end sub_81209F4
-
- thumb_func_start sub_8120A58
-sub_8120A58: @ 8120A58
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08120A84 @ =gUnknown_84176B8
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08120A88 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08120A8C @ =sub_8120A90
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120A84: .4byte gUnknown_84176B8
-_08120A88: .4byte gTasks
-_08120A8C: .4byte sub_8120A90
- thumb_func_end sub_8120A58
-
- thumb_func_start sub_8120A90
-sub_8120A90: @ 8120A90
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08120AB4
- bl sub_812200C
- ldr r0, _08120ABC @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08120AC0 @ =sub_8120AC4
- str r0, [r1]
-_08120AB4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120ABC: .4byte gTasks
-_08120AC0: .4byte sub_8120AC4
- thumb_func_end sub_8120A90
-
- thumb_func_start sub_8120AC4
-sub_8120AC4: @ 8120AC4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _08120AEA
- cmp r1, 0
- bgt _08120AE4
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08120AFC
- b _08120B10
-_08120AE4:
- cmp r1, 0x1
- beq _08120B02
- b _08120B10
-_08120AEA:
- ldr r1, _08120AF8 @ =gSpecialVar_0x8004
- movs r0, 0x7
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_811FA78
- b _08120B10
- .align 2, 0
-_08120AF8: .4byte gSpecialVar_0x8004
-_08120AFC:
- movs r0, 0x5
- bl PlaySE
-_08120B02:
- ldr r0, _08120B18 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08120B1C @ =sub_81203B8
- str r0, [r1]
-_08120B10:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120B18: .4byte gTasks
-_08120B1C: .4byte sub_81203B8
- thumb_func_end sub_8120AC4
-
- thumb_func_start sub_8120B20
-sub_8120B20: @ 8120B20
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r5, r0, 0
- lsls r1, 16
- lsrs r4, r1, 16
- adds r7, r4, 0
- lsls r2, 24
- lsrs r6, r2, 24
- mov r8, r6
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _08120B42
- movs r0, 0x3
- b _08120B9E
-_08120B42:
- movs r0, 0x90
- lsls r0, 1
- cmp r4, r0
- bls _08120B64
- adds r1, r4, 0
- subs r1, 0x21
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl CanMonLearnTMHM
- cmp r0, 0
- beq _08120B7C
- adds r0, r7, 0
- bl ItemIdToBattleMoveId
- b _08120B86
-_08120B64:
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl IsMonCompatibleWithMoveTutorMove
- lsls r0, 24
- cmp r0, 0
- bne _08120B80
-_08120B7C:
- movs r0, 0x1
- b _08120B9E
-_08120B80:
- mov r0, r8
- bl GetMoveTutorMove
-_08120B86:
- lsls r0, 16
- lsrs r1, r0, 16
- adds r0, r5, 0
- bl MonKnowsMove
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08120B9C
- movs r0, 0
- b _08120B9E
-_08120B9C:
- movs r0, 0x2
-_08120B9E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8120B20
-
- thumb_func_start GetMoveTutorMove
-GetMoveTutorMove: @ 8120BA8
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x10
- beq _08120BC8
- cmp r1, 0x10
- bgt _08120BBC
- cmp r1, 0xF
- beq _08120BC2
- b _08120BD6
-_08120BBC:
- cmp r1, 0x11
- beq _08120BD0
- b _08120BD6
-_08120BC2:
- movs r0, 0xA9
- lsls r0, 1 @ MOVE_FRENZY_PLANT
- b _08120BDE
-_08120BC8:
- ldr r0, _08120BCC @ =0x00000133 @ MOVE_BLAST_BURN
- b _08120BDE
- .align 2, 0
-_08120BCC: .4byte 0x00000133
-_08120BD0:
- movs r0, 0x9A
- lsls r0, 1 @ MOVE_HYDRO_CANNON
- b _08120BDE
-_08120BD6:
- ldr r0, _08120BE4 @ =gMoveTutorMoves
- lsls r1, 1
- adds r1, r0
- ldrh r0, [r1]
-_08120BDE:
- pop {r1}
- bx r1
- .align 2, 0
-_08120BE4: .4byte gMoveTutorMoves
- thumb_func_end GetMoveTutorMove
-
- thumb_func_start IsMonCompatibleWithMoveTutorMove
-IsMonCompatibleWithMoveTutorMove: @ 8120BE8
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- lsls r1, 24
- lsrs r2, r1, 24
- cmp r2, 0x10
- beq _08120C0C
- cmp r2, 0x10
- bgt _08120C00
- cmp r2, 0xF
- beq _08120C06
- b _08120C18
-_08120C00:
- cmp r2, 0x11
- beq _08120C12
- b _08120C18
-_08120C06:
- cmp r0, 3 @ SPECIES_VENUSAUR
- beq _08120C34
- b _08120C2A
-_08120C0C:
- cmp r0, 6 @ SPECIES_CHARIZARD
- beq _08120C34
- b _08120C2A
-_08120C12:
- cmp r0, 9 @ SPECIES_BLASTOISE
- beq _08120C34
- b _08120C2A
-_08120C18:
- ldr r1, _08120C30 @ =gMoveTutorMoveCompatibilityTable
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- asrs r0, r2
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08120C34
-_08120C2A:
- movs r0, 0
- b _08120C36
- .align 2, 0
-_08120C30: .4byte gMoveTutorMoveCompatibilityTable
-_08120C34:
- movs r0, 0x1
-_08120C36:
- pop {r1}
- bx r1
- thumb_func_end IsMonCompatibleWithMoveTutorMove
-
- thumb_func_start sub_8120C3C
-sub_8120C3C: @ 8120C3C
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08120C60 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08120C5C
- ldr r0, _08120C64 @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, _08120C68 @ =sub_8120C6C
- str r0, [r1]
-_08120C5C:
- pop {r0}
- bx r0
- .align 2, 0
-_08120C60: .4byte gPaletteFade
-_08120C64: .4byte gTasks
-_08120C68: .4byte sub_8120C6C
- thumb_func_end sub_8120C3C
-
- thumb_func_start sub_8120C6C
-sub_8120C6C: @ 8120C6C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08120C9C @ =0xffff1fff
- movs r1, 0
- str r1, [sp]
- movs r1, 0x4
- movs r2, 0
- movs r3, 0x6
- bl BeginNormalPaletteFade
- ldr r1, _08120CA0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08120CA4 @ =sub_8120CA8
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120C9C: .4byte 0xffff1fff
-_08120CA0: .4byte gTasks
-_08120CA4: .4byte sub_8120CA8
- thumb_func_end sub_8120C6C
-
- thumb_func_start sub_8120CA8
-sub_8120CA8: @ 8120CA8
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08120CCC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08120CC8
- ldr r0, _08120CD0 @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, _08120CD4 @ =sub_8120CD8
- str r0, [r1]
-_08120CC8:
- pop {r0}
- bx r0
- .align 2, 0
-_08120CCC: .4byte gPaletteFade
-_08120CD0: .4byte gTasks
-_08120CD4: .4byte sub_8120CD8
- thumb_func_end sub_8120CA8
-
- thumb_func_start sub_8120CD8
-sub_8120CD8: @ 8120CD8
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_81220D4
- ldr r2, _08120D00 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r2
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0x8]
- ldr r0, _08120D04 @ =sub_8120D08
- str r0, [r1]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120D00: .4byte gTasks
-_08120D04: .4byte sub_8120D08
- thumb_func_end sub_8120CD8
-
- thumb_func_start sub_8120D08
-sub_8120D08: @ 8120D08
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r4, r1, 3
- ldr r5, _08120D38 @ =gTasks+0x8
- adds r0, r4, r5
- ldrb r0, [r0]
- bl RunTextPrinters_CheckActive
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _08120D30
- adds r0, r5, 0
- subs r0, 0x8
- adds r0, r4, r0
- ldr r1, _08120D3C @ =sub_8120D40
- str r1, [r0]
-_08120D30:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120D38: .4byte gTasks+0x8
-_08120D3C: .4byte sub_8120D40
- thumb_func_end sub_8120D08
-
- thumb_func_start sub_8120D40
-sub_8120D40: @ 8120D40
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08120D70 @ =0xffff0008
- movs r1, 0
- str r1, [sp]
- movs r1, 0x4
- movs r2, 0x6
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, _08120D74 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08120D78 @ =sub_8120D7C
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120D70: .4byte 0xffff0008
-_08120D74: .4byte gTasks
-_08120D78: .4byte sub_8120D7C
- thumb_func_end sub_8120D40
-
- thumb_func_start sub_8120D7C
-sub_8120D7C: @ 8120D7C
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08120DA0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08120D9C
- ldr r0, _08120DA4 @ =gTasks
- lsls r1, r2, 2
- adds r1, r2
- lsls r1, 3
- adds r1, r0
- ldr r0, _08120DA8 @ =sub_8120DAC
- str r0, [r1]
-_08120D9C:
- pop {r0}
- bx r0
- .align 2, 0
-_08120DA0: .4byte gPaletteFade
-_08120DA4: .4byte gTasks
-_08120DA8: .4byte sub_8120DAC
- thumb_func_end sub_8120D7C
-
- thumb_func_start sub_8120DAC
-sub_8120DAC: @ 8120DAC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- ldr r5, _08120DD4 @ =gTasks+0x8
- adds r0, r4, r5
- ldrb r0, [r0]
- ldr r1, _08120DD8 @ =gUnknown_8417494
- bl sub_8122084
- subs r5, 0x8
- adds r4, r5
- ldr r0, _08120DDC @ =sub_8120DE0
- str r0, [r4]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08120DD4: .4byte gTasks+0x8
-_08120DD8: .4byte gUnknown_8417494
-_08120DDC: .4byte sub_8120DE0
- thumb_func_end sub_8120DAC
-
- thumb_func_start sub_8120DE0
-sub_8120DE0: @ 8120DE0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r5, r1, 3
- ldr r6, _08120E14 @ =gTasks+0x8
- adds r4, r5, r6
- ldrb r0, [r4]
- bl RunTextPrinters_CheckActive
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x1
- beq _08120E0E
- ldrb r0, [r4]
- bl sub_8122110
- adds r0, r6, 0
- subs r0, 0x8
- adds r0, r5, r0
- ldr r1, _08120E18 @ =sub_8120E1C
- str r1, [r0]
-_08120E0E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08120E14: .4byte gTasks+0x8
-_08120E18: .4byte sub_8120E1C
- thumb_func_end sub_8120DE0
-
- thumb_func_start sub_8120E1C
-sub_8120E1C: @ 8120E1C
- push {r4,lr}
- sub sp, 0x4
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08120E4C @ =0x0000fff7
- movs r1, 0
- str r1, [sp]
- movs r1, 0x4
- movs r2, 0x6
- movs r3, 0
- bl BeginNormalPaletteFade
- ldr r1, _08120E50 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08120E54 @ =sub_8120E58
- str r1, [r0]
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120E4C: .4byte 0x0000fff7
-_08120E50: .4byte gTasks
-_08120E54: .4byte sub_8120E58
- thumb_func_end sub_8120E1C
-
- thumb_func_start sub_8120E58
-sub_8120E58: @ 8120E58
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08120E90 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08120EAC
- movs r0, 0
- movs r1, 0x4F
- movs r2, 0xD0
- bl TextWindow_SetUserSelectedFrame
- movs r0, 0
- movs r1, 0x58
- movs r2, 0xF0
- bl TextWindow_SetStdFrame0_WithPal
- ldr r0, _08120E94 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x3
- bne _08120E98
- movs r0, 0x5
- bl sub_8121D0C
- b _08120E9E
- .align 2, 0
-_08120E90: .4byte gPaletteFade
-_08120E94: .4byte gUnknown_203B0A0
-_08120E98:
- movs r0, 0
- bl sub_8121D0C
-_08120E9E:
- ldr r0, _08120EB4 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08120EB8 @ =sub_811FB28
- str r0, [r1]
-_08120EAC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08120EB4: .4byte gTasks
-_08120EB8: .4byte sub_811FB28
- thumb_func_end sub_8120E58
-
- thumb_func_start sub_8120EBC
-sub_8120EBC: @ 8120EBC
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08120ED8 @ =gTasks+0x8
- adds r3, r1, r0
- movs r2, 0
- strh r2, [r3]
- subs r0, 0x8
- adds r1, r0
- ldr r0, _08120EDC @ =sub_8120EE0
- str r0, [r1]
- bx lr
- .align 2, 0
-_08120ED8: .4byte gTasks+0x8
-_08120EDC: .4byte sub_8120EE0
- thumb_func_end sub_8120EBC
-
- thumb_func_start sub_8120EE0
-sub_8120EE0: @ 8120EE0
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _08120F1C @ =gTasks+0x8
- adds r6, r0, r1
- ldr r0, _08120F20 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08120F68
- adds r0, r5, 0
- bl sub_8120F78
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08120F68
- movs r1, 0
- ldrsh r0, [r6, r1]
- cmp r0, 0xA0
- beq _08120F38
- cmp r0, 0xA0
- bgt _08120F24
- cmp r0, 0x50
- beq _08120F2A
- b _08120F62
- .align 2, 0
-_08120F1C: .4byte gTasks+0x8
-_08120F20: .4byte gPaletteFade
-_08120F24:
- cmp r0, 0xF0
- beq _08120F44
- b _08120F62
-_08120F2A:
- ldr r0, _08120F34 @ =gUnknown_203B0A9
- movs r1, 0x2
- bl sub_811FF94
- b _08120F62
- .align 2, 0
-_08120F34: .4byte gUnknown_203B0A9
-_08120F38:
- movs r0, 0x5
- bl PlaySE
- bl sub_8122BD4
- b _08120F62
-_08120F44:
- ldr r4, _08120F70 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xE
- bl sub_8121CE4
- ldr r1, _08120F74 @ =gUnknown_845A618
- ldr r0, [r4]
- ldrb r0, [r0, 0xF]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r1, [r0]
- adds r0, r5, 0
- bl _call_via_r1
-_08120F62:
- ldrh r0, [r6]
- adds r0, 0x1
- strh r0, [r6]
-_08120F68:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08120F70: .4byte gUnknown_203B09C
-_08120F74: .4byte gUnknown_845A618
- thumb_func_end sub_8120EE0
-
- thumb_func_start sub_8120F78
-sub_8120F78: @ 8120F78
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08120F90 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _08120F94
- movs r0, 0
- b _08120FA4
- .align 2, 0
-_08120F90: .4byte gMain
-_08120F94:
- ldr r0, _08120FA8 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _08120FAC @ =sub_8120FB0
- str r0, [r1, 0x4]
- adds r0, r2, 0
- bl sub_811FA78
- movs r0, 0x1
-_08120FA4:
- pop {r1}
- bx r1
- .align 2, 0
-_08120FA8: .4byte gUnknown_203B09C
-_08120FAC: .4byte sub_8120FB0
- thumb_func_end sub_8120F78
-
- thumb_func_start sub_8120FB0
-sub_8120FB0: @ 8120FB0
- push {lr}
- bl FreeRestoreBattleData
- bl LoadPlayerParty
- bl SetTeachyTvControllerModeToResume
- ldr r0, _08120FC8 @ =CB2_ReturnToTeachyTV
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_08120FC8: .4byte CB2_ReturnToTeachyTV
- thumb_func_end sub_8120FB0
-
- thumb_func_start sub_8120FCC
-sub_8120FCC: @ 8120FCC
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08120FE8 @ =gTasks+0x8
- adds r3, r1, r0
- movs r2, 0
- strh r2, [r3]
- subs r0, 0x8
- adds r1, r0
- ldr r0, _08120FEC @ =sub_8120FF0
- str r0, [r1]
- bx lr
- .align 2, 0
-_08120FE8: .4byte gTasks+0x8
-_08120FEC: .4byte sub_8120FF0
- thumb_func_end sub_8120FCC
-
- thumb_func_start sub_8120FF0
-sub_8120FF0: @ 8120FF0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r2, r0, 24
- adds r5, r2, 0
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _0812102C @ =gTasks+0x8
- adds r4, r0, r1
- ldr r0, _08121030 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08121048
- adds r0, r2, 0
- bl sub_8120F78
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08121048
- ldrh r1, [r4]
- movs r2, 0
- ldrsh r0, [r4, r2]
- cmp r0, 0x50
- beq _08121034
- adds r0, r1, 0x1
- strh r0, [r4]
- b _08121048
- .align 2, 0
-_0812102C: .4byte gTasks+0x8
-_08121030: .4byte gPaletteFade
-_08121034:
- ldr r0, _08121050 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _08121054 @ =sub_8128184
- str r0, [r1, 0x4]
- ldr r0, _08121058 @ =gUnknown_3005E98
- ldr r1, _0812105C @ =sub_81255BC
- ldr r2, [r0]
- adds r0, r5, 0
- bl _call_via_r2
-_08121048:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08121050: .4byte gUnknown_203B09C
-_08121054: .4byte sub_8128184
-_08121058: .4byte gUnknown_3005E98
-_0812105C: .4byte sub_81255BC
- thumb_func_end sub_8120FF0
-
- thumb_func_start sub_8121060
-sub_8121060: @ 8121060
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0x1
- beq _08121088
- cmp r0, 0x1
- bgt _08121076
- cmp r0, 0
- beq _0812107C
- b _081210A0
-_08121076:
- cmp r1, 0x2
- beq _08121094
- b _081210A0
-_0812107C:
- ldr r0, _08121084 @ =gUnknown_845A010
- bl InitWindows
- b _081210A6
- .align 2, 0
-_08121084: .4byte gUnknown_845A010
-_08121088:
- ldr r0, _08121090 @ =gUnknown_845A050
- bl InitWindows
- b _081210A6
- .align 2, 0
-_08121090: .4byte gUnknown_845A050
-_08121094:
- ldr r0, _0812109C @ =gUnknown_845A090
- bl InitWindows
- b _081210A6
- .align 2, 0
-_0812109C: .4byte gUnknown_845A090
-_081210A0:
- ldr r0, _081210F4 @ =gUnknown_845A0D0
- bl InitWindows
-_081210A6:
- bl DeactivateAllTextPrinters
- movs r4, 0
-_081210AC:
- adds r0, r4, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _081210AC
- movs r0, 0
- movs r1, 0x4F
- movs r2, 0xD0
- bl TextWindow_SetUserSelectedFrame
- movs r0, 0
- movs r1, 0x58
- movs r2, 0xF0
- bl TextWindow_SetStdFrame0_WithPal
- movs r0, 0x2
- bl stdpal_get
- movs r1, 0xC0
- movs r2, 0x20
- bl LoadPalette
- movs r0, 0
- bl stdpal_get
- movs r1, 0xE0
- movs r2, 0x20
- bl LoadPalette
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081210F4: .4byte gUnknown_845A0D0
- thumb_func_end sub_8121060
-
- thumb_func_start sub_81210F8
-sub_81210F8: @ 81210F8
- push {r4-r6,lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08121174 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x5
- bne _0812110E
- b _08121238
-_0812110E:
- cmp r2, 0x1
- bne _08121188
- ldr r0, _08121178 @ =gUnknown_845A118
- bl AddWindow
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- ldr r5, _0812117C @ =gUnknown_84169D5
- movs r0, 0
- adds r1, r5, 0
- movs r2, 0
- bl GetStringWidth
- movs r2, 0x30
- subs r2, r0
- lsrs r2, 1
- lsls r2, 24
- lsrs r2, 24
- movs r0, 0
- str r0, [sp]
- str r0, [sp, 0x4]
- ldr r0, _08121180 @ =gUnknown_8459FFC
- str r0, [sp, 0x8]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0xC]
- str r5, [sp, 0x10]
- adds r0, r4, 0
- movs r1, 0
- movs r3, 0x1
- bl AddTextPrinterParameterized4
- adds r0, r4, 0
- bl PutWindowTilemap
- adds r0, r4, 0
- movs r1, 0x2
- bl CopyWindowToVram
- ldr r0, _08121184 @ =gUnknown_845A110
- bl AddWindow
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0
- b _08121194
- .align 2, 0
-_08121174: .4byte gUnknown_203B0A0
-_08121178: .4byte gUnknown_845A118
-_0812117C: .4byte gUnknown_84169D5
-_08121180: .4byte gUnknown_8459FFC
-_08121184: .4byte gUnknown_845A110
-_08121188:
- ldr r0, _081211E0 @ =gUnknown_845A108
- bl AddWindow
- lsls r0, 24
- lsrs r6, r0, 24
- movs r5, 0x3
-_08121194:
- adds r0, r6, 0
- movs r1, 0
- bl FillWindowPixelBuffer
- ldr r0, _081211E4 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0xA
- beq _081211F0
- ldr r4, _081211E8 @ =gFameCheckerText_Cancel
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl GetStringWidth
- movs r1, 0x30
- subs r1, r0
- lsrs r0, r1, 31
- adds r1, r0
- asrs r1, 1
- adds r1, r5, r1
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _081211EC @ =gUnknown_8459FFC
- str r0, [sp]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0x4]
- str r4, [sp, 0x8]
- adds r0, r6, 0
- movs r1, 0
- adds r2, r5, 0
- movs r3, 0x1
- bl AddTextPrinterParameterized3
- b _08121224
- .align 2, 0
-_081211E0: .4byte gUnknown_845A108
-_081211E4: .4byte gUnknown_203B0A0
-_081211E8: .4byte gFameCheckerText_Cancel
-_081211EC: .4byte gUnknown_8459FFC
-_081211F0:
- ldr r4, _08121240 @ =gOtherText_Exit
- movs r0, 0
- adds r1, r4, 0
- movs r2, 0
- bl GetStringWidth
- movs r1, 0x30
- subs r1, r0
- lsrs r0, r1, 31
- adds r1, r0
- asrs r1, 1
- adds r1, r5, r1
- lsls r1, 24
- lsrs r5, r1, 24
- ldr r0, _08121244 @ =gUnknown_8459FFC
- str r0, [sp]
- movs r0, 0x1
- negs r0, r0
- str r0, [sp, 0x4]
- str r4, [sp, 0x8]
- adds r0, r6, 0
- movs r1, 0
- adds r2, r5, 0
- movs r3, 0x1
- bl AddTextPrinterParameterized3
-_08121224:
- adds r0, r6, 0
- bl PutWindowTilemap
- adds r0, r6, 0
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
-_08121238:
- add sp, 0x14
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08121240: .4byte gOtherText_Exit
-_08121244: .4byte gUnknown_8459FFC
- thumb_func_end sub_81210F8
-
- thumb_func_start sub_8121248
-sub_8121248: @ 8121248
- lsls r0, 24
- ldr r1, _08121258 @ =gUnknown_203B09C
- lsrs r0, 23
- adds r0, 0x18
- ldr r1, [r1]
- adds r1, r0
- adds r0, r1, 0
- bx lr
- .align 2, 0
-_08121258: .4byte gUnknown_203B09C
- thumb_func_end sub_8121248
-
- thumb_func_start sub_812125C
-sub_812125C: @ 812125C
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x2C
- str r1, [sp, 0xC]
- ldr r1, [sp, 0x4C]
- ldr r4, [sp, 0x50]
- ldr r5, [sp, 0x54]
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp, 0x8]
- lsls r2, 24
- lsrs r2, 24
- str r2, [sp, 0x10]
- lsls r3, 24
- lsrs r3, 24
- str r3, [sp, 0x14]
- lsls r1, 24
- lsrs r1, 24
- str r1, [sp, 0x18]
- lsls r4, 24
- lsrs r6, r4, 24
- lsls r5, 24
- lsrs r5, 24
- mov r10, r5
- mov r0, r10
- muls r0, r6
- lsls r0, 5
- bl AllocZeroed
- mov r9, r0
- cmp r0, 0
- beq _0812132A
- movs r5, 0
- ldr r0, [sp, 0x14]
- lsls r0, 19
- str r0, [sp, 0x1C]
- ldr r1, [sp, 0x18]
- lsls r1, 19
- str r1, [sp, 0x20]
- lsls r2, r6, 19
- str r2, [sp, 0x24]
- mov r0, r10
- lsls r0, 19
- str r0, [sp, 0x28]
- cmp r5, r10
- bcs _08121308
-_081212BE:
- movs r4, 0
- adds r1, r5, 0x1
- mov r8, r1
- cmp r4, r6
- bcs _081212FE
- ldr r2, [sp, 0x18]
- adds r0, r2, r5
- ldr r2, [sp, 0x10]
- adds r1, r0, 0
- muls r1, r2
- adds r7, r1, 0
-_081212D4:
- ldr r1, [sp, 0x14]
- adds r0, r1, r4
- adds r0, r7
- ldr r2, [sp, 0xC]
- adds r0, r2, r0
- ldrb r0, [r0]
- bl sub_811F620
- adds r1, r5, 0
- muls r1, r6
- adds r1, r4
- lsls r1, 5
- add r1, r9
- movs r2, 0x10
- bl CpuSet
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r6
- bcc _081212D4
-_081212FE:
- mov r1, r8
- lsls r0, r1, 24
- lsrs r5, r0, 24
- cmp r5, r10
- bcc _081212BE
-_08121308:
- ldr r0, [sp, 0x1C]
- lsrs r2, r0, 16
- ldr r1, [sp, 0x20]
- lsrs r3, r1, 16
- ldr r1, [sp, 0x24]
- lsrs r0, r1, 16
- str r0, [sp]
- ldr r1, [sp, 0x28]
- lsrs r0, r1, 16
- str r0, [sp, 0x4]
- ldr r0, [sp, 0x8]
- mov r1, r9
- bl BlitBitmapToWindow
- mov r0, r9
- bl Free
-_0812132A:
- add sp, 0x2C
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_812125C
-
- thumb_func_start sub_812133C
-sub_812133C: @ 812133C
- push {r4-r6,lr}
- sub sp, 0xC
- ldr r4, [sp, 0x1C]
- ldr r5, [sp, 0x20]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- cmp r3, 0
- bne _08121368
- cmp r4, 0
- bne _08121368
- movs r3, 0xA
- movs r4, 0x7
-_08121368:
- cmp r5, 0
- bne _08121384
- ldr r1, _08121380 @ =gUnknown_845A180
- str r2, [sp]
- str r3, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r2, 0xA
- adds r3, r6, 0
- bl sub_812125C
- b _08121394
- .align 2, 0
-_08121380: .4byte gUnknown_845A180
-_08121384:
- ldr r1, _0812139C @ =gUnknown_845A1C6
- str r2, [sp]
- str r3, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r2, 0xA
- adds r3, r6, 0
- bl sub_812125C
-_08121394:
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812139C: .4byte gUnknown_845A1C6
- thumb_func_end sub_812133C
-
- thumb_func_start sub_81213A0
-sub_81213A0: @ 81213A0
- push {r4-r6,lr}
- sub sp, 0xC
- ldr r4, [sp, 0x1C]
- ldr r5, [sp, 0x20]
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r6, r1, 24
- lsls r2, 24
- lsrs r2, 24
- lsls r3, 24
- lsrs r3, 24
- lsls r4, 24
- lsrs r4, 24
- lsls r5, 24
- lsrs r5, 24
- cmp r3, 0
- bne _081213CC
- cmp r4, 0
- bne _081213CC
- movs r3, 0x12
- movs r4, 0x3
-_081213CC:
- cmp r5, 0
- bne _081213E8
- ldr r1, _081213E4 @ =gUnknown_845A20C
- str r2, [sp]
- str r3, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r2, 0x12
- adds r3, r6, 0
- bl sub_812125C
- b _081213F8
- .align 2, 0
-_081213E4: .4byte gUnknown_845A20C
-_081213E8:
- ldr r1, _08121400 @ =gUnknown_845A242
- str r2, [sp]
- str r3, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r2, 0x12
- adds r3, r6, 0
- bl sub_812125C
-_081213F8:
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08121400: .4byte gUnknown_845A242
- thumb_func_end sub_81213A0
-
- thumb_func_start sub_8121404
-sub_8121404: @ 8121404
- push {lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08121428 @ =gUnknown_845A278
- movs r2, 0
- str r2, [sp]
- movs r2, 0x12
- str r2, [sp, 0x4]
- movs r2, 0x3
- str r2, [sp, 0x8]
- movs r2, 0x12
- movs r3, 0
- bl sub_812125C
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08121428: .4byte gUnknown_845A278
- thumb_func_end sub_8121404
-
- thumb_func_start sub_812142C
-sub_812142C: @ 812142C
- push {r4-r7,lr}
- lsls r1, 24
- lsrs r4, r1, 24
- adds r5, r4, 0
- ldrb r0, [r0, 0x8]
- movs r1, 0x5
- bl GetWindowAttribute
- lsls r0, 28
- lsrs r6, r0, 24
- adds r7, r6, 0
- movs r0, 0x20
- ands r0, r4
- cmp r0, 0
- beq _081214A0
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _0812145C
- ldr r5, _08121458 @ =gUnknown_845A2D4
- b _0812160A
- .align 2, 0
-_08121458: .4byte gUnknown_845A2D4
-_0812145C:
- ldr r5, _08121494 @ =gUnknown_845A2D4
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121498 @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _0812149C @ =gUnknown_845A2E3
- b _0812163E
- .align 2, 0
-_08121494: .4byte gUnknown_845A2D4
-_08121498: .4byte gUnknown_845A2B2
-_0812149C: .4byte gUnknown_845A2E3
-_081214A0:
- movs r0, 0x10
- ands r0, r4
- cmp r0, 0
- beq _081214EC
- ldr r5, _081214E0 @ =gUnknown_845A2D4
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _081214E4 @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _081214E8 @ =gUnknown_845A2E3
- b _0812163E
- .align 2, 0
-_081214E0: .4byte gUnknown_845A2D4
-_081214E4: .4byte gUnknown_845A2B2
-_081214E8: .4byte gUnknown_845A2E3
-_081214EC:
- movs r0, 0x4
- ands r0, r4
- cmp r0, 0
- beq _08121548
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _08121504
- ldr r5, _08121500 @ =gUnknown_845A2D4
- b _0812160A
- .align 2, 0
-_08121500: .4byte gUnknown_845A2D4
-_08121504:
- ldr r5, _0812153C @ =gUnknown_845A2D4
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121540 @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _08121544 @ =gUnknown_845A2E3
- b _0812163E
- .align 2, 0
-_0812153C: .4byte gUnknown_845A2D4
-_08121540: .4byte gUnknown_845A2B2
-_08121544: .4byte gUnknown_845A2E3
-_08121548:
- movs r0, 0x2
- ands r0, r4
- cmp r0, 0
- beq _081215A4
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _08121560
- ldr r5, _0812155C @ =gUnknown_845A2D1
- b _0812160A
- .align 2, 0
-_0812155C: .4byte gUnknown_845A2D1
-_08121560:
- ldr r5, _08121598 @ =gUnknown_845A2C8
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _0812159C @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _081215A0 @ =gUnknown_845A2DD
- b _0812163E
- .align 2, 0
-_08121598: .4byte gUnknown_845A2C8
-_0812159C: .4byte gUnknown_845A2B2
-_081215A0: .4byte gUnknown_845A2DD
-_081215A4:
- movs r0, 0x8
- ands r0, r4
- cmp r0, 0
- beq _08121600
- movs r0, 0x1
- ands r0, r4
- cmp r0, 0
- beq _081215BC
- ldr r5, _081215B8 @ =gUnknown_845A2CE
- b _0812160A
- .align 2, 0
-_081215B8: .4byte gUnknown_845A2CE
-_081215BC:
- ldr r5, _081215F4 @ =gUnknown_845A2C5
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _081215F8 @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _081215FC @ =gUnknown_845A2DA
- b _0812163E
- .align 2, 0
-_081215F4: .4byte gUnknown_845A2C5
-_081215F8: .4byte gUnknown_845A2B2
-_081215FC: .4byte gUnknown_845A2DA
-_08121600:
- movs r0, 0x1
- ands r5, r0
- cmp r5, 0
- beq _08121684
- ldr r5, _08121674 @ =gUnknown_845A2CB
-_0812160A:
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121678 @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _0812167C @ =gUnknown_845A2E0
-_0812163E:
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121680 @ =gUnknown_845A2B5
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- b _081216EC
- .align 2, 0
-_08121674: .4byte gUnknown_845A2CB
-_08121678: .4byte gUnknown_845A2B2
-_0812167C: .4byte gUnknown_845A2E0
-_08121680: .4byte gUnknown_845A2B5
-_08121684:
- ldr r5, _081216F4 @ =gUnknown_845A2C2
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _081216F8 @ =gUnknown_845A2B2
- ldrb r1, [r4]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldr r5, _081216FC @ =gUnknown_845A2D7
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121700 @ =gUnknown_845A2B5
- ldrb r1, [r4]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x2]
- bl sub_8121248
- ldrb r1, [r4, 0x2]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
-_081216EC:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081216F4: .4byte gUnknown_845A2C2
-_081216F8: .4byte gUnknown_845A2B2
-_081216FC: .4byte gUnknown_845A2D7
-_08121700: .4byte gUnknown_845A2B5
- thumb_func_end sub_812142C
-
- thumb_func_start sub_8121704
-sub_8121704: @ 8121704
- push {r4,r5,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- lsls r2, 24
- lsrs r2, 24
- ldrb r5, [r3]
- ldrb r3, [r3, 0x1]
- lsls r4, r2, 1
- adds r4, r2
- ldr r2, _08121734 @ =gUnknown_8459FFC
- adds r4, r2
- str r4, [sp]
- movs r2, 0
- str r2, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r1, 0
- adds r2, r5, 0
- bl AddTextPrinterParameterized3
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08121734: .4byte gUnknown_8459FFC
- thumb_func_end sub_8121704
-
- thumb_func_start sub_8121738
-sub_8121738: @ 8121738
- push {r4-r7,lr}
- sub sp, 0x14
- adds r7, r0, 0
- adds r6, r1, 0
- lsls r2, 24
- lsrs r4, r2, 24
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08121788
- cmp r4, 0x1
- bne _08121772
- ldr r5, [r6]
- ldrb r0, [r6, 0x8]
- ldrb r1, [r5, 0x4]
- lsrs r1, 3
- ldrb r2, [r5, 0x5]
- lsrs r2, 3
- ldrb r3, [r5, 0x6]
- lsrs r3, 3
- ldrb r4, [r5, 0x7]
- lsrs r4, 3
- str r4, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r4, [r5]
- bl _call_via_r4
-_08121772:
- adds r0, r7, 0
- add r1, sp, 0x8
- bl GetMonNickname
- ldrb r0, [r6, 0x8]
- ldr r3, [r6]
- adds r3, 0x4
- add r1, sp, 0x8
- movs r2, 0
- bl sub_8121704
-_08121788:
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8121738
-
- thumb_func_start sub_8121790
-sub_8121790: @ 8121790
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- adds r6, r0, 0
- adds r7, r1, 0
- lsls r2, 24
- lsrs r4, r2, 24
- mov r8, r4
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _081217FC
- adds r0, r6, 0
- bl sub_81208A4
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _081217BE
- cmp r0, 0x6
- bne _081217FC
-_081217BE:
- cmp r4, 0
- beq _081217E4
- ldr r5, [r7]
- ldrb r0, [r7, 0x8]
- ldrb r1, [r5, 0x8]
- lsrs r1, 3
- ldrb r2, [r5, 0x9]
- lsrs r2, 3
- adds r2, 0x1
- ldrb r3, [r5, 0xA]
- lsrs r3, 3
- ldrb r4, [r5, 0xB]
- lsrs r4, 3
- str r4, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r4, [r5]
- bl _call_via_r4
-_081217E4:
- mov r0, r8
- cmp r0, 0x2
- beq _081217FC
- adds r0, r6, 0
- movs r1, 0x38
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- adds r1, r7, 0
- bl sub_8121808
-_081217FC:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8121790
-
- thumb_func_start sub_8121808
-sub_8121808: @ 8121808
- push {r4-r6,lr}
- adds r2, r0, 0
- adds r6, r1, 0
- lsls r2, 24
- lsrs r2, 24
- ldr r5, _08121848 @ =gStringVar2
- adds r0, r5, 0
- adds r1, r2, 0
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, _0812184C @ =gStringVar1
- ldr r1, _08121850 @ =gText_Lv
- adds r0, r4, 0
- bl StringCopy
- adds r0, r4, 0
- adds r1, r5, 0
- bl StringAppend
- ldrb r0, [r6, 0x8]
- ldr r3, [r6]
- adds r3, 0x8
- adds r1, r4, 0
- movs r2, 0
- bl sub_8121704
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08121848: .4byte gStringVar2
-_0812184C: .4byte gStringVar1
-_08121850: .4byte gText_Lv
- thumb_func_end sub_8121808
-
- thumb_func_start sub_8121854
-sub_8121854: @ 8121854
- push {r4-r7,lr}
- sub sp, 0x14
- adds r6, r0, 0
- adds r7, r1, 0
- lsls r2, 24
- lsrs r2, 24
- cmp r2, 0x1
- bne _08121886
- ldr r5, [r7]
- ldrb r0, [r7, 0x8]
- ldrb r1, [r5, 0xC]
- lsrs r1, 3
- ldrb r2, [r5, 0xD]
- lsrs r2, 3
- adds r2, 0x1
- ldrb r3, [r5, 0xE]
- lsrs r3, 3
- ldrb r4, [r5, 0xF]
- lsrs r4, 3
- str r4, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r4, [r5]
- bl _call_via_r4
-_08121886:
- adds r0, r6, 0
- add r1, sp, 0x8
- bl GetMonNickname
- adds r0, r6, 0
- bl GetMonGender
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- movs r1, 0xB
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- add r2, sp, 0x8
- adds r3, r7, 0
- bl sub_81218BC
- add sp, 0x14
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8121854
-
- thumb_func_start sub_81218BC
-sub_81218BC: @ 81218BC
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- mov r9, r2
- adds r7, r3, 0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r1, 16
- lsrs r4, r1, 16
- adds r5, r4, 0
- ldrb r0, [r7, 0x8]
- movs r1, 0x5
- bl GetWindowAttribute
- lsls r0, 28
- lsrs r6, r0, 24
- cmp r4, 0
- beq _08121982
- cmp r4, 0x20
- beq _081218EC
- cmp r4, 0x1D
- bne _08121900
-_081218EC:
- movs r0, 0xB
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _0812190C @ =gSpeciesNames
- adds r1, r0
- mov r0, r9
- bl StringCompare
- cmp r0, 0
- beq _08121982
-_08121900:
- mov r0, r8
- cmp r0, 0
- beq _08121910
- cmp r0, 0xFE
- beq _08121950
- b _08121982
- .align 2, 0
-_0812190C: .4byte gSpeciesNames
-_08121910:
- ldr r5, _08121944 @ =gUnknown_845A2B8
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121948 @ =gUnknown_845A2AE
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r7, 0x8]
- ldr r1, _0812194C @ =gUnknown_841621F
- ldr r3, [r7]
- adds r3, 0xC
- movs r2, 0x2
- bl sub_8121704
- b _08121982
- .align 2, 0
-_08121944: .4byte gUnknown_845A2B8
-_08121948: .4byte gUnknown_845A2AE
-_0812194C: .4byte gUnknown_841621F
-_08121950:
- ldr r5, _08121990 @ =gUnknown_845A2BA
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121994 @ =gUnknown_845A2AE
- ldrb r1, [r4]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r6
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r7, 0x8]
- ldr r1, _08121998 @ =gUnknown_8416221
- ldr r3, [r7]
- adds r3, 0xC
- movs r2, 0x2
- bl sub_8121704
-_08121982:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08121990: .4byte gUnknown_845A2BA
-_08121994: .4byte gUnknown_845A2AE
-_08121998: .4byte gUnknown_8416221
- thumb_func_end sub_81218BC
-
- thumb_func_start sub_812199C
-sub_812199C: @ 812199C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- adds r7, r0, 0
- adds r6, r1, 0
- lsls r2, 24
- lsrs r4, r2, 24
- mov r8, r4
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _081219F6
- cmp r4, 0
- beq _081219DE
- ldr r5, [r6]
- ldrb r0, [r6, 0x8]
- ldrb r1, [r5, 0x10]
- lsrs r1, 3
- ldrb r2, [r5, 0x11]
- lsrs r2, 3
- adds r2, 0x1
- ldrb r3, [r5, 0x12]
- lsrs r3, 3
- ldrb r4, [r5, 0x13]
- lsrs r4, 3
- str r4, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r4, [r5]
- bl _call_via_r4
-_081219DE:
- mov r0, r8
- cmp r0, 0x2
- beq _081219F6
- adds r0, r7, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl sub_8121A04
-_081219F6:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_812199C
-
- thumb_func_start sub_8121A04
-sub_8121A04: @ 8121A04
- push {r4,r5,lr}
- adds r2, r0, 0
- adds r4, r1, 0
- lsls r2, 16
- lsrs r2, 16
- ldr r5, _08121A38 @ =gStringVar1
- adds r0, r5, 0
- adds r1, r2, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- movs r1, 0xBA
- strb r1, [r0]
- movs r1, 0xFF
- strb r1, [r0, 0x1]
- ldrb r0, [r4, 0x8]
- ldr r3, [r4]
- adds r3, 0x10
- adds r1, r5, 0
- movs r2, 0
- bl sub_8121704
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08121A38: .4byte gStringVar1
- thumb_func_end sub_8121A04
-
- thumb_func_start sub_8121A3C
-sub_8121A3C: @ 8121A3C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x8
- adds r7, r0, 0
- adds r6, r1, 0
- lsls r2, 24
- lsrs r4, r2, 24
- mov r8, r4
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08121A98
- cmp r4, 0
- beq _08121A80
- ldr r5, [r6]
- ldrb r0, [r6, 0x8]
- ldrb r1, [r5, 0x14]
- lsrs r1, 3
- adds r1, 0x1
- ldrb r2, [r5, 0x15]
- lsrs r2, 3
- adds r2, 0x1
- ldrb r3, [r5, 0x16]
- lsrs r3, 3
- ldrb r4, [r5, 0x17]
- lsrs r4, 3
- str r4, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- ldr r4, [r5]
- bl _call_via_r4
-_08121A80:
- mov r0, r8
- cmp r0, 0x2
- beq _08121A98
- adds r0, r7, 0
- movs r1, 0x3A
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- adds r1, r6, 0
- bl sub_8121AA4
-_08121A98:
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8121A3C
-
- thumb_func_start sub_8121AA4
-sub_8121AA4: @ 8121AA4
- push {r4-r6,lr}
- adds r2, r0, 0
- adds r6, r1, 0
- lsls r2, 16
- lsrs r2, 16
- ldr r5, _08121AE4 @ =gStringVar2
- adds r0, r5, 0
- adds r1, r2, 0
- movs r2, 0x1
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, _08121AE8 @ =gStringVar1
- ldr r1, _08121AEC @ =gUnknown_841620C
- adds r0, r4, 0
- bl StringCopy
- adds r0, r4, 0
- adds r1, r5, 0
- bl StringAppend
- ldrb r0, [r6, 0x8]
- ldr r3, [r6]
- adds r3, 0x14
- adds r1, r4, 0
- movs r2, 0
- bl sub_8121704
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08121AE4: .4byte gStringVar2
-_08121AE8: .4byte gStringVar1
-_08121AEC: .4byte gUnknown_841620C
- thumb_func_end sub_8121AA4
-
- thumb_func_start sub_8121AF0
-sub_8121AF0: @ 8121AF0
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08121B24
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x3A
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- adds r2, r6, 0
- bl sub_8121B2C
-_08121B24:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8121AF0
-
- thumb_func_start sub_8121B2C
-sub_8121B2C: @ 8121B2C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x8
- adds r6, r2, 0
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- ldrb r0, [r6, 0x8]
- movs r1, 0x5
- bl GetWindowAttribute
- lsls r0, 28
- lsrs r7, r0, 24
- mov r1, r8
- lsls r0, r1, 16
- asrs r0, 16
- mov r2, r9
- lsls r1, r2, 16
- asrs r1, 16
- bl GetHPBarLevel
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08121B78
- cmp r0, 0x2
- blt _08121BA8
- cmp r0, 0x4
- bgt _08121BA8
- ldr r5, _08121B74 @ =gUnknown_845A2BC
- b _08121B7A
- .align 2, 0
-_08121B74: .4byte gUnknown_845A2BC
-_08121B78:
- ldr r5, _08121BA0 @ =gUnknown_845A2BE
-_08121B7A:
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121BA4 @ =gUnknown_845A2B0
- ldrb r1, [r4]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- b _08121BCC
- .align 2, 0
-_08121BA0: .4byte gUnknown_845A2BE
-_08121BA4: .4byte gUnknown_845A2B0
-_08121BA8:
- ldr r5, _08121C68 @ =gUnknown_845A2C0
- ldrb r0, [r5]
- bl sub_8121248
- ldr r4, _08121C6C @ =gUnknown_845A2B0
- ldrb r1, [r4]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
- ldrb r0, [r5, 0x1]
- bl sub_8121248
- ldrb r1, [r4, 0x1]
- adds r1, r7
- movs r2, 0x2
- bl LoadPalette
-_08121BCC:
- mov r1, r8
- lsls r0, r1, 16
- asrs r0, 16
- mov r2, r9
- lsls r1, r2, 16
- asrs r1, 16
- ldr r2, [r6]
- ldrb r2, [r2, 0x1A]
- bl GetScaledHPFraction
- lsls r0, 24
- lsrs r5, r0, 24
- ldrb r0, [r6, 0x8]
- ldr r4, _08121C6C @ =gUnknown_845A2B0
- ldrb r1, [r4, 0x1]
- ldr r3, [r6]
- ldrb r2, [r3, 0x18]
- ldrb r3, [r3, 0x19]
- str r5, [sp]
- movs r7, 0x1
- str r7, [sp, 0x4]
- bl FillWindowPixelRect
- ldrb r0, [r6, 0x8]
- ldrb r1, [r4]
- ldr r3, [r6]
- ldrb r2, [r3, 0x18]
- ldrb r3, [r3, 0x19]
- adds r3, 0x1
- str r5, [sp]
- movs r4, 0x2
- str r4, [sp, 0x4]
- bl FillWindowPixelRect
- ldr r1, [r6]
- ldrb r0, [r1, 0x1A]
- cmp r5, r0
- beq _08121C50
- ldrb r0, [r6, 0x8]
- ldrb r2, [r1, 0x18]
- adds r2, r5
- ldrb r3, [r1, 0x19]
- ldrb r1, [r1, 0x1A]
- subs r1, r5
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp]
- str r7, [sp, 0x4]
- movs r1, 0xD
- bl FillWindowPixelRect
- ldrb r0, [r6, 0x8]
- ldr r1, [r6]
- ldrb r2, [r1, 0x18]
- adds r2, r5
- ldrb r3, [r1, 0x19]
- adds r3, 0x1
- ldrb r1, [r1, 0x1A]
- subs r1, r5
- lsls r1, 16
- lsrs r1, 16
- str r1, [sp]
- str r4, [sp, 0x4]
- movs r1, 0x2
- bl FillWindowPixelRect
-_08121C50:
- ldrb r0, [r6, 0x8]
- movs r1, 0x2
- bl CopyWindowToVram
- add sp, 0x8
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08121C68: .4byte gUnknown_845A2C0
-_08121C6C: .4byte gUnknown_845A2B0
- thumb_func_end sub_8121B2C
-
- thumb_func_start sub_8121C70
-sub_8121C70: @ 8121C70
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- adds r6, r1, 0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- lsls r2, 24
- lsrs r2, 24
- adds r7, r2, 0
- cmp r7, 0
- beq _08121CAA
- ldr r5, [r6]
- ldrb r0, [r6, 0x8]
- ldrb r1, [r5, 0x1C]
- lsrs r1, 3
- ldrb r2, [r5, 0x1D]
- lsrs r2, 3
- ldrb r3, [r5, 0x1E]
- lsrs r3, 3
- ldrb r4, [r5, 0x1F]
- lsrs r4, 3
- str r4, [sp]
- movs r4, 0x1
- str r4, [sp, 0x4]
- ldr r4, [r5]
- bl _call_via_r4
-_08121CAA:
- cmp r7, 0x2
- beq _08121CD0
- ldrb r0, [r6, 0x8]
- ldr r1, [r6]
- ldrb r2, [r1, 0x1C]
- ldrb r3, [r1, 0x1D]
- ldr r1, _08121CDC @ =gUnknown_8459FFC
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- ldr r4, _08121CE0 @ =gUnknown_845A354
- mov r5, r8
- lsls r1, r5, 2
- adds r1, r4
- ldr r1, [r1]
- str r1, [sp, 0x8]
- movs r1, 0x1
- bl AddTextPrinterParameterized3
-_08121CD0:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08121CDC: .4byte gUnknown_8459FFC
-_08121CE0: .4byte gUnknown_845A354
- thumb_func_end sub_8121C70
-
- thumb_func_start sub_8121CE4
-sub_8121CE4: @ 8121CE4
- push {r4,lr}
- adds r4, r0, 0
- ldrb r0, [r4]
- cmp r0, 0xFF
- beq _08121D04
- movs r1, 0
- bl ClearStdWindowAndFrameToTransparent
- ldrb r0, [r4]
- bl RemoveWindow
- movs r0, 0xFF
- strb r0, [r4]
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
-_08121D04:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8121CE4
-
- thumb_func_start sub_8121D0C
-sub_8121D0C: @ 8121D0C
- push {r4-r6,lr}
- sub sp, 0xC
- adds r6, r0, 0
- ldr r0, _08121D3C @ =gUnknown_203B09C
- ldr r4, [r0]
- adds r5, r4, 0
- adds r5, 0xD
- ldrb r0, [r4, 0xD]
- cmp r0, 0xFF
- beq _08121D26
- adds r0, r5, 0
- bl sub_8121CE4
-_08121D26:
- cmp r6, 0x7F
- beq _08121DE8
- adds r0, r6, 0
- subs r0, 0x16
- cmp r0, 0x4
- bhi _08121D80
- lsls r0, 2
- ldr r1, _08121D40 @ =_08121D44
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08121D3C: .4byte gUnknown_203B09C
-_08121D40: .4byte _08121D44
- .align 2, 0
-_08121D44:
- .4byte _08121D58
- .4byte _08121D70
- .4byte _08121D70
- .4byte _08121D60
- .4byte _08121D68
-_08121D58:
- ldr r0, _08121D5C @ =gUnknown_845A128
- b _08121D72
- .align 2, 0
-_08121D5C: .4byte gUnknown_845A128
-_08121D60:
- ldr r0, _08121D64 @ =gUnknown_845A130
- b _08121D72
- .align 2, 0
-_08121D64: .4byte gUnknown_845A130
-_08121D68:
- ldr r0, _08121D6C @ =gUnknown_845A138
- b _08121D72
- .align 2, 0
-_08121D6C: .4byte gUnknown_845A138
-_08121D70:
- ldr r0, _08121D7C @ =gUnknown_845A140
-_08121D72:
- bl AddWindow
- strb r0, [r5]
- b _08121D88
- .align 2, 0
-_08121D7C: .4byte gUnknown_845A140
-_08121D80:
- ldr r0, _08121D9C @ =gUnknown_845A120
- bl AddWindow
- strb r0, [r4, 0xD]
-_08121D88:
- cmp r6, 0
- bne _08121DB0
- ldr r0, _08121DA0 @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x8]
- lsls r0, 31
- cmp r0, 0
- beq _08121DA4
- movs r6, 0x2
- b _08121DB0
- .align 2, 0
-_08121D9C: .4byte gUnknown_845A120
-_08121DA0: .4byte gUnknown_203B09C
-_08121DA4:
- bl sub_8121DF8
- lsls r0, 24
- cmp r0, 0
- bne _08121DB0
- movs r6, 0x1
-_08121DB0:
- ldrb r0, [r5]
- movs r1, 0
- movs r2, 0x58
- movs r3, 0xF
- bl DrawStdFrameWithCustomTileAndPalette
- ldr r4, _08121DF0 @ =gStringVar4
- ldr r1, _08121DF4 @ =gUnknown_845A2E8
- lsls r0, r6, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r4, 0
- bl StringExpandPlaceholders
- ldrb r0, [r5]
- movs r1, 0x2
- str r1, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r1, 0x2
- adds r2, r4, 0
- movs r3, 0
- bl AddTextPrinterParameterized
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
-_08121DE8:
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08121DF0: .4byte gStringVar4
-_08121DF4: .4byte gUnknown_845A2E8
- thumb_func_end sub_8121D0C
-
- thumb_func_start sub_8121DF8
-sub_8121DF8: @ 8121DF8
- push {r4-r7,lr}
- ldr r7, _08121E0C @ =gPlayerParty
- movs r6, 0
- ldr r0, _08121E10 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x1
- bne _08121E14
-_08121E06:
- movs r0, 0x1
- b _08121E56
- .align 2, 0
-_08121E0C: .4byte gPlayerParty
-_08121E10: .4byte gUnknown_203B0A0
-_08121E14:
- movs r5, 0
-_08121E16:
- movs r0, 0x64
- muls r0, r5
- adds r4, r7, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08121E46
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _08121E40
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _08121E46
-_08121E40:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
-_08121E46:
- cmp r6, 0x1
- bhi _08121E06
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _08121E16
- movs r0, 0
-_08121E56:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8121DF8
-
- thumb_func_start sub_8121E5C
-sub_8121E5C: @ 8121E5C
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x24
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x1
- beq _08121EBC
- cmp r4, 0x1
- bgt _08121E78
- cmp r4, 0
- beq _08121E7E
- b _08121ECC
-_08121E78:
- cmp r4, 0x2
- beq _08121EC4
- b _08121ECC
-_08121E7E:
- ldr r0, _08121EB4 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldrb r0, [r1, 0x17]
- lsls r0, 1
- movs r3, 0x13
- subs r3, r0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0xA
- str r0, [sp]
- ldrb r0, [r1, 0x17]
- lsls r0, 25
- lsrs r0, 24
- str r0, [sp, 0x4]
- movs r0, 0xE
- str r0, [sp, 0x8]
- ldr r0, _08121EB8 @ =0x000002bf
- str r0, [sp, 0xC]
- add r0, sp, 0x14
- movs r1, 0x2
- movs r2, 0x13
- bl SetWindowTemplateFields
- ldr r0, [sp, 0x14]
- ldr r1, [sp, 0x18]
- b _08121ED2
- .align 2, 0
-_08121EB4: .4byte gUnknown_203B09C
-_08121EB8: .4byte 0x000002bf
-_08121EBC:
- ldr r0, _08121EC0 @ =gUnknown_845A148
- b _08121ECE
- .align 2, 0
-_08121EC0: .4byte gUnknown_845A148
-_08121EC4:
- ldr r0, _08121EC8 @ =gUnknown_845A150
- b _08121ECE
- .align 2, 0
-_08121EC8: .4byte gUnknown_845A150
-_08121ECC:
- ldr r0, _08121EF8 @ =gUnknown_845A158
-_08121ECE:
- ldr r1, [r0, 0x4]
- ldr r0, [r0]
-_08121ED2:
- str r0, [sp, 0x1C]
- str r1, [sp, 0x20]
- add r0, sp, 0x1C
- bl AddWindow
- ldr r6, _08121EFC @ =gUnknown_203B09C
- ldr r1, [r6]
- strb r0, [r1, 0xC]
- ldr r0, [r6]
- ldrb r0, [r0, 0xC]
- movs r1, 0
- movs r2, 0x4F
- movs r3, 0xD
- bl DrawStdFrameWithCustomTileAndPalette
- cmp r4, 0x3
- bne _08121F00
- ldr r0, [r6]
- b _08121FA2
- .align 2, 0
-_08121EF8: .4byte gUnknown_845A158
-_08121EFC: .4byte gUnknown_203B09C
-_08121F00:
- movs r0, 0x2
- movs r1, 0
- bl GetMenuCursorDimensionByFont
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r0, 0x2
- movs r1, 0x2
- bl GetFontAttribute
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- movs r5, 0
- ldr r0, [r6]
- ldrb r0, [r0, 0x17]
- cmp r5, r0
- bcs _08121F7A
- adds r7, r6, 0
- movs r6, 0
-_08121F2A:
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0xF
- adds r4, r0, r5
- ldrb r0, [r4]
- movs r2, 0x3
- cmp r0, 0x11
- bls _08121F3C
- movs r2, 0x4
-_08121F3C:
- ldrb r0, [r1, 0xC]
- lsls r3, r5, 4
- adds r3, 0x2
- lsls r3, 24
- lsrs r3, 24
- mov r1, r8
- str r1, [sp]
- str r6, [sp, 0x4]
- lsls r1, r2, 1
- adds r1, r2
- ldr r2, _08121FB4 @ =gUnknown_8459FFC
- adds r1, r2
- str r1, [sp, 0x8]
- str r6, [sp, 0xC]
- ldr r2, _08121FB8 @ =gUnknown_845A618
- ldrb r1, [r4]
- lsls r1, 3
- adds r1, r2
- ldr r1, [r1]
- str r1, [sp, 0x10]
- movs r1, 0x2
- mov r2, r9
- bl AddTextPrinterParameterized4
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, [r7]
- ldrb r0, [r0, 0x17]
- cmp r5, r0
- bcc _08121F2A
-_08121F7A:
- ldr r4, _08121FBC @ =gUnknown_203B09C
- ldr r2, [r4]
- ldrb r0, [r2, 0xC]
- movs r1, 0x10
- str r1, [sp]
- ldrb r1, [r2, 0x17]
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x1
- str r1, [sp, 0xC]
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl Menu_InitCursorInternal
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r0, [r4]
-_08121FA2:
- ldrb r0, [r0, 0xC]
- add sp, 0x24
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08121FB4: .4byte gUnknown_8459FFC
-_08121FB8: .4byte gUnknown_845A618
-_08121FBC: .4byte gUnknown_203B09C
- thumb_func_end sub_8121E5C
-
- thumb_func_start sub_8121FC0
-sub_8121FC0: @ 8121FC0
- push {r4,lr}
- sub sp, 0x10
- adds r4, r0, 0
- movs r0, 0x6
- movs r1, 0
- movs r2, 0x4F
- movs r3, 0xD
- bl DrawStdFrameWithCustomTileAndPalette
- ldr r2, _08122008 @ =gTextFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- bl GetTextSpeedSetting
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- movs r0, 0x6
- movs r1, 0x2
- adds r2, r4, 0
- bl AddTextPrinterParameterized2
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122008: .4byte gTextFlags
- thumb_func_end sub_8121FC0
-
- thumb_func_start sub_812200C
-sub_812200C: @ 812200C
- push {lr}
- sub sp, 0xC
- ldr r0, _08122030 @ =gUnknown_845A160
- movs r1, 0x4F
- str r1, [sp]
- movs r1, 0xD
- str r1, [sp, 0x4]
- movs r1, 0
- str r1, [sp, 0x8]
- movs r1, 0x2
- movs r2, 0
- movs r3, 0x2
- bl CreateYesNoMenu
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08122030: .4byte gUnknown_845A160
- thumb_func_end sub_812200C
-
- thumb_func_start sub_8122034
-sub_8122034: @ 8122034
- push {r4,lr}
- ldr r0, _0812205C @ =gUnknown_845A168
- bl AddWindow
- ldr r4, _08122060 @ =gUnknown_203B09C
- ldr r1, [r4]
- strb r0, [r1, 0xC]
- ldr r0, [r4]
- ldrb r0, [r0, 0xC]
- movs r1, 0
- movs r2, 0x4F
- movs r3, 0xD
- bl DrawStdFrameWithCustomTileAndPalette
- ldr r0, [r4]
- ldrb r0, [r0, 0xC]
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0812205C: .4byte gUnknown_845A168
-_08122060: .4byte gUnknown_203B09C
- thumb_func_end sub_8122034
-
- thumb_func_start sub_8122064
-sub_8122064: @ 8122064
- push {r4,lr}
- ldr r4, _08122080 @ =gUnknown_203B09C
- ldr r0, [r4]
- ldrb r0, [r0, 0xC]
- bl ClearWindowTilemap
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122080: .4byte gUnknown_203B09C
- thumb_func_end sub_8122064
-
- thumb_func_start sub_8122084
-sub_8122084: @ 8122084
- push {r4,r5,lr}
- sub sp, 0x10
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r5, _081220CC @ =gStringVar4
- adds r0, r5, 0
- bl StringExpandPlaceholders
- ldr r2, _081220D0 @ =gTextFlags
- ldrb r0, [r2]
- movs r1, 0x1
- orrs r0, r1
- strb r0, [r2]
- bl GetTextSpeedSetting
- adds r3, r0, 0
- lsls r3, 24
- lsrs r3, 24
- movs r0, 0
- str r0, [sp]
- movs r0, 0x2
- str r0, [sp, 0x4]
- movs r0, 0x1
- str r0, [sp, 0x8]
- movs r0, 0x3
- str r0, [sp, 0xC]
- adds r0, r4, 0
- movs r1, 0x4
- adds r2, r5, 0
- bl AddTextPrinterParameterized2
- add sp, 0x10
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081220CC: .4byte gStringVar4
-_081220D0: .4byte gTextFlags
- thumb_func_end sub_8122084
-
- thumb_func_start sub_81220D4
-sub_81220D4: @ 81220D4
- push {r4,lr}
- ldr r0, _08122108 @ =gUnknown_845A170
- bl AddWindow
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- movs r1, 0x4F
- movs r2, 0xE0
- bl TextWindow_LoadResourcesStdFrame0
- adds r0, r4, 0
- movs r1, 0x1
- movs r2, 0x4F
- movs r3, 0xE
- bl DrawDialogFrameWithCustomTileAndPalette
- ldr r1, _0812210C @ =gUnknown_8417457
- adds r0, r4, 0
- bl sub_8122084
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_08122108: .4byte gUnknown_845A170
-_0812210C: .4byte gUnknown_8417457
- thumb_func_end sub_81220D4
-
- thumb_func_start sub_8122110
-sub_8122110: @ 8122110
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- bl ClearWindowTilemap
- adds r0, r4, 0
- movs r1, 0
- bl ClearDialogWindowAndFrameToTransparent
- adds r0, r4, 0
- bl RemoveWindow
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8122110
-
- thumb_func_start sub_8122138
-sub_8122138: @ 8122138
- push {r4,r5,lr}
- sub sp, 0x14
- lsls r0, 24
- lsrs r0, 24
- adds r5, r0, 0
- ldr r0, _08122168 @ =gUnknown_203B09C
- ldr r4, [r0]
- cmp r5, 0x11
- bhi _0812216C
- ldrb r0, [r4, 0xE]
- cmp r0, 0xFF
- beq _081221C0
- bl ClearWindowTilemap
- ldrb r0, [r4, 0xE]
- bl RemoveWindow
- movs r0, 0xFF
- strb r0, [r4, 0xE]
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- b _081221C0
- .align 2, 0
-_08122168: .4byte gUnknown_203B09C
-_0812216C:
- ldrb r0, [r4, 0xE]
- cmp r0, 0xFF
- bne _0812217A
- ldr r0, _081221C8 @ =gUnknown_845A178
- bl AddWindow
- strb r0, [r4, 0xE]
-_0812217A:
- ldrb r0, [r4, 0xE]
- bl sub_8112F18
- movs r0, 0x2
- movs r1, 0x2
- bl GetFontAttribute
- lsls r0, 24
- lsrs r0, 24
- ldrb r2, [r4, 0xE]
- str r0, [sp]
- movs r1, 0
- str r1, [sp, 0x4]
- ldr r0, _081221CC @ =gUnknown_845A00B
- str r0, [sp, 0x8]
- str r1, [sp, 0xC]
- ldr r1, _081221D0 @ =gUnknown_845A37C
- adds r0, r5, 0
- subs r0, 0x12
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
- str r0, [sp, 0x10]
- adds r0, r2, 0
- movs r1, 0x2
- movs r2, 0x3
- movs r3, 0x6
- bl AddTextPrinterParameterized4
- ldrb r0, [r4, 0xE]
- bl PutWindowTilemap
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
-_081221C0:
- add sp, 0x14
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081221C8: .4byte gUnknown_845A178
-_081221CC: .4byte gUnknown_845A00B
-_081221D0: .4byte gUnknown_845A37C
- thumb_func_end sub_8122138
-
- thumb_func_start party_menu_icon_anim
-party_menu_icon_anim: @ 81221D4
- push {r4-r7,lr}
- sub sp, 0x4
- adds r5, r0, 0
- adds r7, r1, 0
- adds r4, r2, 0
- movs r6, 0x1
- bl IsMultiBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0812220A
- ldr r0, _08122240 @ =gMain
- ldr r1, _08122244 @ =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0812220A
- ldr r0, _08122248 @ =gUnknown_845A59C
- adds r0, r4, r0
- ldrb r1, [r0]
- eors r1, r6
- negs r0, r1
- orrs r0, r1
- lsrs r6, r0, 31
-_0812220A:
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0
- bl GetMonData
- adds r1, r0, 0
- str r6, [sp]
- adds r0, r4, 0
- adds r2, r7, 0
- movs r3, 0x1
- bl party_menu_link_mon_icon_anim
- ldrb r0, [r7, 0x9]
- adds r1, r5, 0
- bl sub_8122358
- add sp, 0x4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08122240: .4byte gMain
-_08122244: .4byte 0x00000439
-_08122248: .4byte gUnknown_845A59C
- thumb_func_end party_menu_icon_anim
-
- thumb_func_start party_menu_link_mon_icon_anim
-party_menu_link_mon_icon_anim: @ 812224C
- push {r4-r7,lr}
- sub sp, 0xC
- adds r6, r1, 0
- adds r4, r2, 0
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r3, 24
- lsrs r7, r3, 24
- cmp r5, 0
- beq _0812229A
- ldr r1, _081222A4 @ =SpriteCB_MonIcon
- ldr r0, [r4, 0x4]
- ldrb r2, [r0]
- ldrb r3, [r0, 0x1]
- movs r0, 0x4
- str r0, [sp]
- str r6, [sp, 0x4]
- ldr r0, [sp, 0x20]
- str r0, [sp, 0x8]
- adds r0, r5, 0
- bl CreateMonIcon
- strb r0, [r4, 0x9]
- ldr r2, _081222A8 @ =gSprites
- ldrb r0, [r4, 0x9]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- movs r0, 0x3
- adds r2, r7, 0
- ands r2, r0
- lsls r2, 2
- ldrb r3, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r3
- orrs r0, r2
- strb r0, [r1, 0x5]
-_0812229A:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081222A4: .4byte SpriteCB_MonIcon
-_081222A8: .4byte gSprites
- thumb_func_end party_menu_link_mon_icon_anim
-
- thumb_func_start sub_81222AC
-sub_81222AC: @ 81222AC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 16
- asrs r1, 16
- lsls r2, 16
- asrs r2, 16
- adds r0, r1, 0
- adds r1, r2, 0
- bl GetHPBarLevel
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _0812230C
- cmp r0, 0x2
- bgt _081222D4
- cmp r0, 0x1
- beq _08122324
- b _0812233C
-_081222D4:
- cmp r0, 0x3
- beq _081222F4
- cmp r0, 0x4
- bne _0812233C
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- ldr r1, _081222F0 @ =gSprites
- adds r0, r1
- movs r1, 0
- bl MonIcon_SetAnim
- b _0812234C
- .align 2, 0
-_081222F0: .4byte gSprites
-_081222F4:
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- ldr r1, _08122308 @ =gSprites
- adds r0, r1
- movs r1, 0x1
- bl MonIcon_SetAnim
- b _0812234C
- .align 2, 0
-_08122308: .4byte gSprites
-_0812230C:
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- ldr r1, _08122320 @ =gSprites
- adds r0, r1
- movs r1, 0x2
- bl MonIcon_SetAnim
- b _0812234C
- .align 2, 0
-_08122320: .4byte gSprites
-_08122324:
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- ldr r1, _08122338 @ =gSprites
- adds r0, r1
- movs r1, 0x3
- bl MonIcon_SetAnim
- b _0812234C
- .align 2, 0
-_08122338: .4byte gSprites
-_0812233C:
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- ldr r1, _08122354 @ =gSprites
- adds r0, r1
- movs r1, 0x4
- bl MonIcon_SetAnim
-_0812234C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122354: .4byte gSprites
- thumb_func_end sub_81222AC
-
- thumb_func_start sub_8122358
-sub_8122358: @ 8122358
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- lsls r5, 24
- lsrs r5, 24
- adds r0, r6, 0
- movs r1, 0x39
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r6, 0
- movs r1, 0x3A
- bl GetMonData
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_81222AC
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8122358
-
- thumb_func_start sub_812238C
-sub_812238C: @ 812238C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- ldr r5, _081223BC @ =gSprites
- lsls r0, r4, 4
- adds r0, r4
- lsls r6, r0, 2
- adds r2, r6, r5
- movs r7, 0
- movs r3, 0
- strh r3, [r2, 0x2E]
- mov r12, r5
- cmp r1, 0
- bne _081223E4
- movs r1, 0x20
- ldrsh r0, [r2, r1]
- cmp r0, 0x10
- bne _081223C4
- strh r3, [r2, 0x24]
- ldr r0, _081223C0 @ =0x0000fffc
- strh r0, [r2, 0x26]
- b _081223CA
- .align 2, 0
-_081223BC: .4byte gSprites
-_081223C0: .4byte 0x0000fffc
-_081223C4:
- ldr r0, _081223DC @ =0x0000fffc
- strh r0, [r2, 0x24]
- strh r3, [r2, 0x26]
-_081223CA:
- lsls r0, r4, 4
- adds r0, r4
- lsls r0, 2
- mov r1, r12
- adds r1, 0x1C
- adds r0, r1
- ldr r1, _081223E0 @ =sub_8122428
- b _081223F0
- .align 2, 0
-_081223DC: .4byte 0x0000fffc
-_081223E0: .4byte sub_8122428
-_081223E4:
- strh r3, [r2, 0x24]
- strh r3, [r2, 0x26]
- adds r0, r5, 0
- adds r0, 0x1C
- adds r0, r6, r0
- ldr r1, _081223F8 @ =sub_81223FC
-_081223F0:
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081223F8: .4byte sub_81223FC
- thumb_func_end sub_812238C
-
- thumb_func_start sub_81223FC
-sub_81223FC: @ 81223FC
- push {r4,lr}
- adds r4, r0, 0
- bl UpdateMonIconFrame
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08122422
- movs r1, 0x1
- ands r0, r1
- cmp r0, 0
- beq _08122420
- ldr r0, _0812241C @ =0x0000fffd
- strh r0, [r4, 0x26]
- b _08122422
- .align 2, 0
-_0812241C: .4byte 0x0000fffd
-_08122420:
- strh r1, [r4, 0x26]
-_08122422:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81223FC
-
- thumb_func_start sub_8122428
-sub_8122428: @ 8122428
- push {lr}
- bl UpdateMonIconFrame
- pop {r0}
- bx r0
- thumb_func_end sub_8122428
-
- thumb_func_start party_menu_held_item_object
-party_menu_held_item_object: @ 8122434
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0812245C
- ldr r0, _08122464 @ =gUnknown_845A43C
- ldr r2, [r4, 0x4]
- ldrb r1, [r2, 0x2]
- ldrb r2, [r2, 0x3]
- movs r3, 0
- bl CreateSprite
- strb r0, [r4, 0xA]
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_81224B4
-_0812245C:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08122464: .4byte gUnknown_845A43C
- thumb_func_end party_menu_held_item_object
-
- thumb_func_start party_menu_link_mon_held_item_object
-party_menu_link_mon_held_item_object: @ 8122468
- push {r4,r5,lr}
- adds r4, r2, 0
- lsls r0, 16
- lsls r1, 16
- lsrs r5, r1, 16
- cmp r0, 0
- beq _081224A4
- ldr r0, _081224AC @ =gUnknown_845A43C
- ldr r2, [r4, 0x4]
- ldrb r1, [r2, 0x2]
- ldrb r2, [r2, 0x3]
- movs r3, 0
- bl CreateSprite
- strb r0, [r4, 0xA]
- ldr r2, _081224B0 @ =gSprites
- ldrb r0, [r4, 0xA]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_81224D0
-_081224A4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081224AC: .4byte gUnknown_845A43C
-_081224B0: .4byte gSprites
- thumb_func_end party_menu_link_mon_held_item_object
-
- thumb_func_start sub_81224B4
-sub_81224B4: @ 81224B4
- push {r4,lr}
- adds r4, r1, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- adds r1, r4, 0
- bl sub_81224D0
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81224B4
-
- thumb_func_start sub_81224D0
-sub_81224D0: @ 81224D0
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0
- bne _081224F8
- ldr r2, _081224F4 @ =gSprites
- ldrb r1, [r4, 0xA]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _08122544
- .align 2, 0
-_081224F4: .4byte gSprites
-_081224F8:
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _0812251C
- ldrb r1, [r4, 0xA]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _08122518 @ =gSprites
- adds r0, r1
- movs r1, 0x1
- bl StartSpriteAnim
- b _0812252E
- .align 2, 0
-_08122518: .4byte gSprites
-_0812251C:
- ldrb r1, [r4, 0xA]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r1, _0812254C @ =gSprites
- adds r0, r1
- movs r1, 0
- bl StartSpriteAnim
-_0812252E:
- ldr r2, _0812254C @ =gSprites
- ldrb r1, [r4, 0xA]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_08122544:
- strb r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812254C: .4byte gSprites
- thumb_func_end sub_81224D0
-
- thumb_func_start LoadHeldItemIcons
-LoadHeldItemIcons: @ 8122550
- push {lr}
- ldr r0, _08122564 @ =gUnknown_845A42C
- bl LoadSpriteSheet
- ldr r0, _08122568 @ =gUnknown_845A434
- bl LoadSpritePalette
- pop {r0}
- bx r0
- .align 2, 0
-_08122564: .4byte gUnknown_845A42C
-_08122568: .4byte gUnknown_845A434
- thumb_func_end LoadHeldItemIcons
-
- thumb_func_start sub_812256C
-sub_812256C: @ 812256C
- push {r4-r7,lr}
- adds r6, r0, 0
- adds r7, r1, 0
- lsls r2, 24
- lsrs r2, 24
- cmp r2, 0
- beq _08122580
- cmp r2, 0x1
- beq _081225C8
- b _08122604
-_08122580:
- movs r5, 0
- ldrb r0, [r6]
- cmp r5, r0
- bcs _08122604
-_08122588:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _081225C4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _081225B4
- adds r0, r7, r5
- ldrb r4, [r0]
- adds r0, r1, 0
- bl ItemIsMail
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_8122610
-_081225B4:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- ldrb r0, [r6]
- cmp r5, r0
- bcc _08122588
- b _08122604
- .align 2, 0
-_081225C4: .4byte gPlayerParty
-_081225C8:
- movs r5, 0
- b _081225FE
-_081225CC:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _0812260C @ =gEnemyParty
- adds r0, r1
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r1, r0, 16
- cmp r1, 0
- beq _081225F8
- adds r0, r5, r7
- ldrb r4, [r0, 0x6]
- adds r0, r1, 0
- bl ItemIsMail
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_8122610
-_081225F8:
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
-_081225FE:
- ldrb r0, [r6, 0x1]
- cmp r5, r0
- bcc _081225CC
-_08122604:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812260C: .4byte gEnemyParty
- thumb_func_end sub_812256C
-
- thumb_func_start sub_8122610
-sub_8122610: @ 8122610
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- adds r6, r0, 0
- mov r9, r1
- lsls r6, 24
- lsrs r6, 24
- mov r0, r9
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- ldr r0, _08122688 @ =gSprites
- mov r8, r0
- lsls r0, r6, 4
- adds r0, r6
- lsls r0, 2
- add r0, r8
- adds r0, 0x43
- ldrb r3, [r0]
- ldr r0, _0812268C @ =gUnknown_845A43C
- subs r3, 0x1
- lsls r3, 24
- lsrs r3, 24
- movs r1, 0xFA
- movs r2, 0xAA
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- mov r0, r8
- adds r5, r4, r0
- movs r0, 0x4
- strh r0, [r5, 0x24]
- movs r0, 0xA
- strh r0, [r5, 0x26]
- movs r0, 0x1C
- add r8, r0
- add r4, r8
- ldr r0, _08122690 @ =sub_8122694
- str r0, [r4]
- strh r6, [r5, 0x3C]
- adds r0, r5, 0
- mov r1, r9
- bl StartSpriteAnim
- ldr r1, [r4]
- adds r0, r5, 0
- bl _call_via_r1
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08122688: .4byte gSprites
-_0812268C: .4byte gUnknown_845A43C
-_08122690: .4byte sub_8122694
- thumb_func_end sub_8122610
-
- thumb_func_start sub_8122694
-sub_8122694: @ 8122694
- push {r4,lr}
- adds r4, r0, 0
- ldrh r1, [r4, 0x3C]
- lsls r1, 24
- lsrs r1, 24
- ldr r2, _081226C4 @ =gSprites
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r2, r0, r2
- adds r0, r2, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _081226C8
- adds r0, r4, 0
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- strb r1, [r0]
- b _081226E6
- .align 2, 0
-_081226C4: .4byte gSprites
-_081226C8:
- adds r3, r4, 0
- adds r3, 0x3E
- ldrb r1, [r3]
- movs r0, 0x5
- negs r0, r0
- ands r0, r1
- strb r0, [r3]
- ldrh r0, [r2, 0x24]
- ldrh r1, [r2, 0x20]
- adds r0, r1
- strh r0, [r4, 0x20]
- ldrh r0, [r2, 0x26]
- ldrh r2, [r2, 0x22]
- adds r0, r2
- strh r0, [r4, 0x22]
-_081226E6:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8122694
-
- thumb_func_start party_menu_pokeball_object
-party_menu_pokeball_object: @ 81226EC
- push {r4,lr}
- adds r4, r1, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _0812270A
- ldr r0, _08122710 @ =gUnknown_845A484
- ldr r2, [r4, 0x4]
- ldrb r1, [r2, 0x6]
- ldrb r2, [r2, 0x7]
- movs r3, 0x8
- bl CreateSprite
- strb r0, [r4, 0xB]
-_0812270A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122710: .4byte gUnknown_845A484
- thumb_func_end party_menu_pokeball_object
-
- thumb_func_start party_menu_link_mon_pokeball_object
-party_menu_link_mon_pokeball_object: @ 8122714
- push {r4,lr}
- adds r4, r1, 0
- lsls r0, 16
- cmp r0, 0
- beq _08122744
- ldr r0, _0812274C @ =gUnknown_845A484
- ldr r2, [r4, 0x4]
- ldrb r1, [r2, 0x6]
- ldrb r2, [r2, 0x7]
- movs r3, 0x8
- bl CreateSprite
- strb r0, [r4, 0xB]
- ldr r2, _08122750 @ =gSprites
- ldrb r0, [r4, 0xB]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
-_08122744:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812274C: .4byte gUnknown_845A484
-_08122750: .4byte gSprites
- thumb_func_end party_menu_link_mon_pokeball_object
-
- thumb_func_start sub_8122754
-sub_8122754: @ 8122754
- push {lr}
- adds r3, r0, 0
- adds r2, r1, 0
- lsls r3, 24
- lsrs r3, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r0, _0812278C @ =gUnknown_845A484
- adds r1, r3, 0
- movs r3, 0x8
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08122790 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r3, [r1, 0x5]
- movs r2, 0xD
- negs r2, r2
- ands r2, r3
- movs r3, 0x8
- orrs r2, r3
- strb r2, [r1, 0x5]
- pop {r1}
- bx r1
- .align 2, 0
-_0812278C: .4byte gUnknown_845A484
-_08122790: .4byte gSprites
- thumb_func_end sub_8122754
-
- thumb_func_start sub_8122794
-sub_8122794: @ 8122794
- push {lr}
- adds r3, r0, 0
- adds r2, r1, 0
- lsls r3, 24
- lsrs r3, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r0, _081227B4 @ =gUnknown_845A4F4
- adds r1, r3, 0
- movs r3, 0x8
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_081227B4: .4byte gUnknown_845A4F4
- thumb_func_end sub_8122794
-
- thumb_func_start sub_81227B8
-sub_81227B8: @ 81227B8
- push {lr}
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- lsls r1, 24
- lsrs r1, 24
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- ldr r2, _081227D8 @ =gSprites
- adds r0, r2
- bl StartSpriteAnim
- pop {r0}
- bx r0
- .align 2, 0
-_081227D8: .4byte gSprites
- thumb_func_end sub_81227B8
-
- thumb_func_start sub_81227DC
-sub_81227DC: @ 81227DC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- cmp r6, 0
- bne _08122820
- lsls r4, r0, 4
- adds r4, r0
- lsls r4, 2
- ldr r0, _0812281C @ =gSprites
- mov r8, r0
- add r4, r8
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAnim
- lsls r5, r7, 4
- adds r5, r7
- lsls r5, 2
- add r5, r8
- adds r0, r5, 0
- movs r1, 0x4
- bl StartSpriteAnim
- strh r6, [r4, 0x26]
- strh r6, [r5, 0x26]
- b _0812284C
- .align 2, 0
-_0812281C: .4byte gSprites
-_08122820:
- lsls r5, r0, 4
- adds r5, r0
- lsls r5, 2
- ldr r0, _08122858 @ =gSprites
- mov r8, r0
- add r5, r8
- adds r0, r5, 0
- movs r1, 0x3
- bl StartSpriteAnim
- lsls r4, r7, 4
- adds r4, r7
- lsls r4, 2
- add r4, r8
- adds r0, r4, 0
- movs r1, 0x5
- bl StartSpriteAnim
- ldr r0, _0812285C @ =0x0000fffc
- strh r0, [r5, 0x26]
- movs r0, 0x4
- strh r0, [r4, 0x26]
-_0812284C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08122858: .4byte gSprites
-_0812285C: .4byte 0x0000fffc
- thumb_func_end sub_81227DC
-
- thumb_func_start sub_8122860
-sub_8122860: @ 8122860
- push {lr}
- ldr r0, _08122878 @ =gUnknown_845A474
- bl LoadCompressedSpriteSheet
- ldr r0, _0812287C @ =gUnknown_845A4EC
- bl LoadCompressedSpriteSheet
- ldr r0, _08122880 @ =gUnknown_845A47C
- bl LoadCompressedSpritePalette
- pop {r0}
- bx r0
- .align 2, 0
-_08122878: .4byte gUnknown_845A474
-_0812287C: .4byte gUnknown_845A4EC
-_08122880: .4byte gUnknown_845A47C
- thumb_func_end sub_8122860
-
- thumb_func_start party_menu_status_condition_object
-party_menu_status_condition_object: @ 8122884
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _081228AC
- ldr r0, _081228B4 @ =gUnknown_845A584
- ldr r2, [r4, 0x4]
- ldrb r1, [r2, 0x4]
- ldrb r2, [r2, 0x5]
- movs r3, 0
- bl CreateSprite
- strb r0, [r4, 0xC]
- adds r0, r5, 0
- adds r1, r4, 0
- bl party_menu_get_status_condition_and_update_object
-_081228AC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081228B4: .4byte gUnknown_845A584
- thumb_func_end party_menu_status_condition_object
-
- thumb_func_start party_menu_link_mon_status_condition_object
-party_menu_link_mon_status_condition_object: @ 81228B8
- push {r4,r5,lr}
- adds r4, r2, 0
- lsls r0, 16
- lsls r1, 24
- lsrs r5, r1, 24
- cmp r0, 0
- beq _081228F4
- ldr r0, _081228FC @ =gUnknown_845A584
- ldr r2, [r4, 0x4]
- ldrb r1, [r2, 0x4]
- ldrb r2, [r2, 0x5]
- movs r3, 0
- bl CreateSprite
- strb r0, [r4, 0xC]
- adds r0, r5, 0
- adds r1, r4, 0
- bl party_menu_update_status_condition_object
- ldr r2, _08122900 @ =gSprites
- ldrb r0, [r4, 0xC]
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r1, r2
- ldrb r2, [r1, 0x5]
- movs r0, 0xD
- negs r0, r0
- ands r0, r2
- strb r0, [r1, 0x5]
-_081228F4:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081228FC: .4byte gUnknown_845A584
-_08122900: .4byte gSprites
- thumb_func_end party_menu_link_mon_status_condition_object
-
- thumb_func_start party_menu_get_status_condition_and_update_object
-party_menu_get_status_condition_and_update_object: @ 8122904
- push {r4,lr}
- adds r4, r1, 0
- bl sub_81208A4
- lsls r0, 24
- lsrs r0, 24
- adds r1, r4, 0
- bl party_menu_update_status_condition_object
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end party_menu_get_status_condition_and_update_object
-
- thumb_func_start party_menu_update_status_condition_object
-party_menu_update_status_condition_object: @ 812291C
- push {r4,r5,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0
- beq _0812292C
- cmp r2, 0x6
- bne _08122948
-_0812292C:
- ldr r2, _08122944 @ =gSprites
- ldrb r1, [r5, 0xC]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r2, 0x4
- orrs r1, r2
- b _08122972
- .align 2, 0
-_08122944: .4byte gSprites
-_08122948:
- ldrb r1, [r5, 0xC]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0812297C @ =gSprites
- adds r0, r4
- subs r1, r2, 0x1
- lsls r1, 24
- lsrs r1, 24
- bl StartSpriteAnim
- ldrb r1, [r5, 0xC]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- adds r0, 0x3E
- ldrb r2, [r0]
- movs r1, 0x5
- negs r1, r1
- ands r1, r2
-_08122972:
- strb r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0812297C: .4byte gSprites
- thumb_func_end party_menu_update_status_condition_object
-
- thumb_func_start sub_8122980
-sub_8122980: @ 8122980
- push {lr}
- ldr r0, _08122994 @ =gUnknown_845A574
- bl LoadCompressedSpriteSheet
- ldr r0, _08122998 @ =gUnknown_845A57C
- bl LoadCompressedSpritePalette
- pop {r0}
- bx r0
- .align 2, 0
-_08122994: .4byte gUnknown_845A574
-_08122998: .4byte gUnknown_845A57C
- thumb_func_end sub_8122980
-
- thumb_func_start sub_812299C
-sub_812299C: @ 812299C
- push {r4,lr}
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- cmp r2, 0
- bne _081229B0
- bl sub_81229FC
- b _081229E8
-_081229B0:
- ldr r4, _081229F0 @ =gUnknown_203B09C
- ldr r1, [r4]
- ldr r0, _081229F4 @ =gUnknown_845A760
- adds r0, r2, r0
- ldrb r0, [r0]
- strb r0, [r1, 0x17]
- movs r3, 0
- ldr r0, [r4]
- ldrb r0, [r0, 0x17]
- cmp r3, r0
- bcs _081229E8
- ldr r1, _081229F8 @ =gUnknown_845A72C
- lsls r0, r2, 2
- adds r2, r0, r1
-_081229CC:
- ldr r1, [r4]
- adds r1, 0xF
- adds r1, r3
- ldr r0, [r2]
- adds r0, r3
- ldrb r0, [r0]
- strb r0, [r1]
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, [r4]
- ldrb r0, [r0, 0x17]
- cmp r3, r0
- bcc _081229CC
-_081229E8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081229F0: .4byte gUnknown_203B09C
-_081229F4: .4byte gUnknown_845A760
-_081229F8: .4byte gUnknown_845A72C
- thumb_func_end sub_812299C
-
- thumb_func_start sub_81229FC
-sub_81229FC: @ 81229FC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- mov r9, r0
- lsls r1, 24
- lsrs r1, 24
- mov r10, r1
- ldr r2, _08122A78 @ =gUnknown_203B09C
- ldr r1, [r2]
- movs r0, 0
- strb r0, [r1, 0x17]
- ldr r1, [r2]
- adds r0, r1, 0
- adds r0, 0xF
- adds r1, 0x17
- movs r2, 0
- bl AppendToList
- movs r7, 0
- ldr r0, _08122A7C @ =gUnknown_845A76E
- ldrh r0, [r0]
- str r0, [sp]
- mov r0, r9
- adds r0, 0x64
- str r0, [sp, 0x4]
-_08122A34:
- movs r4, 0
- adds r1, r7, 0x1
- mov r8, r1
- ldr r0, [sp]
- cmp r0, 0xC
- beq _08122A90
- movs r0, 0x64
- mov r6, r10
- muls r6, r0
- ldr r5, _08122A7C @ =gUnknown_845A76E
-_08122A48:
- mov r1, r9
- adds r0, r1, r6
- adds r1, r7, 0
- adds r1, 0xD
- bl GetMonData
- lsls r1, r4, 1
- adds r1, r5
- ldrh r1, [r1]
- cmp r0, r1
- bne _08122A80
- ldr r0, _08122A78 @ =gUnknown_203B09C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xF
- adds r1, 0x17
- adds r2, r4, 0
- adds r2, 0x12
- lsls r2, 24
- lsrs r2, 24
- bl AppendToList
- b _08122A90
- .align 2, 0
-_08122A78: .4byte gUnknown_203B09C
-_08122A7C: .4byte gUnknown_845A76E
-_08122A80:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r0, r4, 1
- adds r0, r5
- ldrh r0, [r0]
- cmp r0, 0xC
- bne _08122A48
-_08122A90:
- mov r1, r8
- lsls r0, r1, 24
- lsrs r7, r0, 24
- cmp r7, 0x3
- bls _08122A34
- ldr r0, [sp, 0x4]
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08122AB6
- ldr r0, _08122AE8 @ =gUnknown_203B09C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xF
- adds r1, 0x17
- movs r2, 0x1
- bl AppendToList
-_08122AB6:
- movs r0, 0x64
- mov r1, r10
- muls r1, r0
- adds r0, r1, 0
- add r0, r9
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _08122AEC
- ldr r0, _08122AE8 @ =gUnknown_203B09C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xF
- adds r1, 0x17
- movs r2, 0x6
- bl AppendToList
- b _08122AFC
- .align 2, 0
-_08122AE8: .4byte gUnknown_203B09C
-_08122AEC:
- ldr r0, _08122B1C @ =gUnknown_203B09C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xF
- adds r1, 0x17
- movs r2, 0x3
- bl AppendToList
-_08122AFC:
- ldr r0, _08122B1C @ =gUnknown_203B09C
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0xF
- adds r1, 0x17
- movs r2, 0x2
- bl AppendToList
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08122B1C: .4byte gUnknown_203B09C
- thumb_func_end sub_81229FC
-
- thumb_func_start sub_8122B20
-sub_8122B20: @ 8122B20
- push {lr}
- adds r2, r0, 0
- ldr r1, _08122B3C @ =gUnknown_203B0A0
- ldrb r0, [r1, 0x8]
- lsls r0, 28
- lsrs r0, 28
- adds r3, r1, 0
- cmp r0, 0xA
- bhi _08122BCA
- lsls r0, 2
- ldr r1, _08122B40 @ =_08122B44
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08122B3C: .4byte gUnknown_203B0A0
-_08122B40: .4byte _08122B44
- .align 2, 0
-_08122B44:
- .4byte _08122B70
- .4byte _08122B80
- .4byte _08122BCA
- .4byte _08122BCA
- .4byte _08122B8C
- .4byte _08122BCA
- .4byte _08122BAC
- .4byte _08122BCA
- .4byte _08122BBE
- .4byte _08122BC2
- .4byte _08122BC6
-_08122B70:
- adds r0, r2, 0
- movs r1, 0x2D
- bl GetMonData
- negs r1, r0
- orrs r1, r0
- lsrs r1, 31
- b _08122BCC
-_08122B80:
- adds r0, r2, 0
- bl sub_8127A84
- lsls r0, 24
- lsrs r1, r0, 24
- b _08122BCC
-_08122B8C:
- movs r0, 0x9
- ldrsb r0, [r3, r0]
- bl sub_8127510
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08122BA4
- cmp r0, 0x1
- beq _08122BA8
- movs r1, 0x7
- b _08122BCC
-_08122BA4:
- movs r1, 0x4
- b _08122BCC
-_08122BA8:
- movs r1, 0x5
- b _08122BCC
-_08122BAC:
- adds r0, r2, 0
- movs r1, 0x2D
- bl GetMonData
- movs r1, 0x6
- cmp r0, 0
- beq _08122BCC
- movs r1, 0x7
- b _08122BCC
-_08122BBE:
- movs r1, 0xA
- b _08122BCC
-_08122BC2:
- movs r1, 0xB
- b _08122BCC
-_08122BC6:
- movs r1, 0xC
- b _08122BCC
-_08122BCA:
- movs r1, 0
-_08122BCC:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8122B20
-
- thumb_func_start sub_8122BD4
-sub_8122BD4: @ 8122BD4
- push {r4-r6,lr}
- ldr r5, _08122C20 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r5, r1]
- movs r0, 0x64
- adds r4, r1, 0
- muls r4, r0
- ldr r6, _08122C24 @ =gPlayerParty
- adds r4, r6
- ldr r1, _08122C28 @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- ldr r0, _08122C2C @ =gUnknown_203B09C
- ldr r0, [r0]
- adds r0, 0xD
- bl sub_8121CE4
- ldrb r5, [r5, 0x9]
- adds r0, r4, 0
- bl sub_8122B20
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r6, 0
- adds r1, r5, 0
- bl sub_812299C
- movs r0, 0
- bl sub_8121E5C
- movs r0, 0x16
- bl sub_8121D0C
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08122C20: .4byte gUnknown_203B0A0
-_08122C24: .4byte gPlayerParty
-_08122C28: .4byte gStringVar1
-_08122C2C: .4byte gUnknown_203B09C
- thumb_func_end sub_8122BD4
-
- thumb_func_start sub_8122C30
-sub_8122C30: @ 8122C30
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8122BD4
- ldr r1, _08122C54 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0xFF
- strh r1, [r0, 0x8]
- ldr r1, _08122C58 @ =sub_8122C5C
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122C54: .4byte gTasks
-_08122C58: .4byte sub_8122C5C
- thumb_func_end sub_8122C30
-
- thumb_func_start sub_8122C5C
-sub_8122C5C: @ 8122C5C
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _08122C94 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08122D3E
- bl sub_80BF748
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08122D3E
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _08122C98 @ =gTasks+0x8
- adds r7, r0, r1
- ldr r0, _08122C9C @ =gUnknown_203B09C
- ldr r0, [r0]
- ldrb r0, [r0, 0x17]
- cmp r0, 0x3
- bhi _08122CA0
- bl Menu_ProcessInputNoWrapAround_other
- b _08122CA4
- .align 2, 0
-_08122C94: .4byte gPaletteFade
-_08122C98: .4byte gTasks+0x8
-_08122C9C: .4byte gUnknown_203B09C
-_08122CA0:
- bl Menu_ProcessInput_other
-_08122CA4:
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0
- ldrsh r4, [r7, r0]
- bl Menu_GetCursorPos
- lsls r0, 24
- lsrs r0, 24
- cmp r4, r0
- beq _08122CCE
- ldr r0, _08122D14 @ =gUnknown_203B09C
- ldr r4, [r0]
- bl Menu_GetCursorPos
- lsls r0, 24
- lsrs r0, 24
- adds r4, 0xF
- adds r4, r0
- ldrb r0, [r4]
- bl sub_8122138
-_08122CCE:
- bl Menu_GetCursorPos
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r7]
- lsls r0, r5, 24
- asrs r5, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r5, r0
- beq _08122D3E
- adds r0, 0x1
- cmp r5, r0
- bne _08122D1C
- movs r0, 0x5
- bl PlaySE
- ldr r4, _08122D14 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xE
- bl sub_8121CE4
- ldr r2, _08122D18 @ =gUnknown_845A618
- ldr r0, [r4]
- ldrb r1, [r0, 0x17]
- adds r0, r1
- ldrb r0, [r0, 0xE]
- lsls r0, 3
- adds r2, 0x4
- adds r0, r2
- ldr r1, [r0]
- adds r0, r6, 0
- bl _call_via_r1
- b _08122D3E
- .align 2, 0
-_08122D14: .4byte gUnknown_203B09C
-_08122D18: .4byte gUnknown_845A618
-_08122D1C:
- ldr r4, _08122D44 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xE
- bl sub_8121CE4
- ldr r1, _08122D48 @ =gUnknown_845A618
- ldr r0, [r4]
- adds r0, 0xF
- adds r0, r5
- ldrb r0, [r0]
- lsls r0, 3
- adds r1, 0x4
- adds r0, r1
- ldr r1, [r0]
- adds r0, r6, 0
- bl _call_via_r1
-_08122D3E:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08122D44: .4byte gUnknown_203B09C
-_08122D48: .4byte gUnknown_845A618
- thumb_func_end sub_8122C5C
-
- thumb_func_start sub_8122D4C
-sub_8122D4C: @ 8122D4C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08122D70 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _08122D74 @ =sub_8122D78
- str r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_811FA78
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122D70: .4byte gUnknown_203B09C
-_08122D74: .4byte sub_8122D78
- thumb_func_end sub_8122D4C
-
- thumb_func_start sub_8122D78
-sub_8122D78: @ 8122D78
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _08122DAC @ =gUnknown_203B0A0
- ldrb r1, [r4, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _08122D8C
- bl pokemon_change_order
-_08122D8C:
- ldr r0, _08122DB0 @ =gPlayerParty
- ldrb r1, [r4, 0x9]
- ldr r2, _08122DB4 @ =gPlayerPartyCount
- ldrb r2, [r2]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _08122DB8 @ =sub_8122DBC
- movs r4, 0
- str r4, [sp]
- bl ShowPokemonSummaryScreen
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08122DAC: .4byte gUnknown_203B0A0
-_08122DB0: .4byte gPlayerParty
-_08122DB4: .4byte gPlayerPartyCount
-_08122DB8: .4byte sub_8122DBC
- thumb_func_end sub_8122D78
-
- thumb_func_start sub_8122DBC
-sub_8122DBC: @ 8122DBC
- push {lr}
- sub sp, 0xC
- ldr r2, _08122DF4 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- bl sub_8138B20
- ldr r3, _08122DF8 @ =gUnknown_203B0A0
- strb r0, [r3, 0x9]
- ldrb r0, [r3, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r3, 0xB]
- movs r1, 0x16
- str r1, [sp]
- ldr r1, _08122DFC @ =sub_8122C30
- str r1, [sp, 0x4]
- ldr r1, [r3]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08122DF4: .4byte gPaletteFade
-_08122DF8: .4byte gUnknown_203B0A0
-_08122DFC: .4byte sub_8122C30
- thumb_func_end sub_8122DBC
-
- thumb_func_start brm_switch
-brm_switch: @ 8122E00
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- movs r0, 0x5
- bl PlaySE
- ldr r5, _08122E4C @ =gUnknown_203B0A0
- movs r0, 0x8
- strb r0, [r5, 0xB]
- ldr r4, _08122E50 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- movs r0, 0x3
- bl sub_8121D0C
- ldrb r0, [r5, 0x9]
- movs r1, 0x1
- bl sub_811F818
- ldrb r0, [r5, 0x9]
- strb r0, [r5, 0xA]
- ldr r1, _08122E54 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122E58 @ =sub_811FB28
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08122E4C: .4byte gUnknown_203B0A0
-_08122E50: .4byte gUnknown_203B09C
-_08122E54: .4byte gTasks
-_08122E58: .4byte sub_811FB28
- thumb_func_end brm_switch
-
- thumb_func_start sub_8122E5C
-sub_8122E5C: @ 8122E5C
- push {r4-r7,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r7, r0, 24
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- ldr r1, _08122E84 @ =gTasks+0x8
- adds r6, r0, r1
- ldr r4, _08122E88 @ =gUnknown_203B0A0
- movs r1, 0xA
- ldrsb r1, [r4, r1]
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- cmp r1, r0
- bne _08122E8C
- adds r0, r7, 0
- bl sub_81235E8
- b _08122FE2
- .align 2, 0
-_08122E84: .4byte gTasks+0x8
-_08122E88: .4byte gUnknown_203B0A0
-_08122E8C:
- bl sub_812358C
- add r2, sp, 0x8
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- ldr r1, _08122EE8 @ =gUnknown_203B0B4
- ldr r1, [r1]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- movs r4, 0
- strb r0, [r2]
- adds r0, r2, 0
- ldrb r0, [r0]
- movs r1, 0x1
- bl GetWindowAttribute
- strh r0, [r6]
- add r0, sp, 0x8
- ldrb r0, [r0]
- movs r1, 0x2
- bl GetWindowAttribute
- strh r0, [r6, 0x2]
- add r0, sp, 0x8
- ldrb r0, [r0]
- movs r1, 0x3
- bl GetWindowAttribute
- strh r0, [r6, 0x4]
- add r0, sp, 0x8
- ldrb r0, [r0]
- movs r1, 0x4
- bl GetWindowAttribute
- strh r0, [r6, 0x6]
- strh r4, [r6, 0x10]
- movs r1, 0x4
- ldrsh r0, [r6, r1]
- cmp r0, 0xA
- bne _08122EEC
- movs r2, 0x1
- negs r2, r2
- adds r0, r2, 0
- b _08122EEE
- .align 2, 0
-_08122EE8: .4byte gUnknown_203B0B4
-_08122EEC:
- movs r0, 0x1
-_08122EEE:
- strh r0, [r6, 0x14]
- add r2, sp, 0x8
- ldr r0, _08122F4C @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xA]
- lsls r0, 24
- asrs r0, 24
- ldr r1, _08122F50 @ =gUnknown_203B0B4
- ldr r1, [r1]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- movs r4, 0
- strb r0, [r2, 0x1]
- adds r0, r2, 0
- ldrb r0, [r0, 0x1]
- movs r1, 0x1
- bl GetWindowAttribute
- strh r0, [r6, 0x8]
- add r0, sp, 0x8
- ldrb r0, [r0, 0x1]
- movs r1, 0x2
- bl GetWindowAttribute
- strh r0, [r6, 0xA]
- add r0, sp, 0x8
- ldrb r0, [r0, 0x1]
- movs r1, 0x3
- bl GetWindowAttribute
- strh r0, [r6, 0xC]
- add r0, sp, 0x8
- ldrb r0, [r0, 0x1]
- movs r1, 0x4
- bl GetWindowAttribute
- strh r0, [r6, 0xE]
- strh r4, [r6, 0x12]
- movs r1, 0xC
- ldrsh r0, [r6, r1]
- cmp r0, 0xA
- bne _08122F54
- movs r2, 0x1
- negs r2, r2
- adds r0, r2, 0
- b _08122F56
- .align 2, 0
-_08122F4C: .4byte gUnknown_203B0A0
-_08122F50: .4byte gUnknown_203B0B4
-_08122F54:
- movs r0, 0x1
-_08122F56:
- strh r0, [r6, 0x16]
- ldr r4, _08122FEC @ =gUnknown_203B0C8
- movs r0, 0x4
- ldrsh r1, [r6, r0]
- movs r2, 0x6
- ldrsh r0, [r6, r2]
- lsls r0, 1
- muls r0, r1
- bl Alloc
- str r0, [r4]
- ldr r5, _08122FF0 @ =gUnknown_203B0CC
- movs r0, 0xC
- ldrsh r1, [r6, r0]
- movs r2, 0xE
- ldrsh r0, [r6, r2]
- lsls r0, 1
- muls r0, r1
- bl Alloc
- str r0, [r5]
- ldr r1, [r4]
- ldrb r2, [r6]
- ldrb r3, [r6, 0x2]
- ldrb r0, [r6, 0x4]
- str r0, [sp]
- ldrb r0, [r6, 0x6]
- str r0, [sp, 0x4]
- movs r0, 0
- bl CopyRectIntoAltRect
- ldr r1, [r5]
- ldrb r2, [r6, 0x8]
- ldrb r3, [r6, 0xA]
- ldrb r0, [r6, 0xC]
- str r0, [sp]
- ldrb r0, [r6, 0xE]
- str r0, [sp, 0x4]
- movs r0, 0
- bl CopyRectIntoAltRect
- add r0, sp, 0x8
- ldrb r0, [r0]
- bl ClearWindowTilemap
- add r0, sp, 0x8
- ldrb r0, [r0, 0x1]
- bl ClearWindowTilemap
- ldr r4, _08122FF4 @ =gUnknown_203B0A0
- movs r0, 0x9
- strb r0, [r4, 0xB]
- ldrb r0, [r4, 0x9]
- movs r1, 0x1
- bl sub_811F818
- ldrb r0, [r4, 0xA]
- movs r1, 0x1
- bl sub_811F818
- adds r0, r7, 0
- bl sub_81231E8
- ldr r1, _08122FF8 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _08122FFC @ =sub_8123270
- str r1, [r0]
-_08122FE2:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08122FEC: .4byte gUnknown_203B0C8
-_08122FF0: .4byte gUnknown_203B0CC
-_08122FF4: .4byte gUnknown_203B0A0
-_08122FF8: .4byte gTasks
-_08122FFC: .4byte sub_8123270
- thumb_func_end sub_8122E5C
-
- thumb_func_start sub_8123000
-sub_8123000: @ 8123000
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r2, 0
- mov r12, r3
- ldr r7, [sp, 0x18]
- lsls r0, 16
- lsrs r3, r0, 16
- adds r5, r3, 0
- lsls r1, 16
- lsrs r2, r1, 16
- mov r8, r2
- lsls r0, r3, 16
- asrs r1, r0, 16
- lsls r0, r2, 16
- asrs r0, 16
- adds r4, r1, r0
- cmp r4, 0
- blt _0812302A
- cmp r1, 0x1F
- ble _0812302E
-_0812302A:
- movs r0, 0
- b _0812305C
-_0812302E:
- cmp r1, 0
- bge _08123042
- negs r0, r1
- strb r0, [r6]
- movs r0, 0
- mov r1, r12
- strb r0, [r1]
- adds r0, r2, r3
- strb r0, [r7]
- b _0812305A
-_08123042:
- movs r0, 0
- strb r0, [r6]
- mov r0, r12
- strb r5, [r0]
- cmp r4, 0x1F
- ble _08123056
- movs r0, 0x20
- subs r0, r5
- strb r0, [r7]
- b _0812305A
-_08123056:
- mov r1, r8
- strb r1, [r7]
-_0812305A:
- movs r0, 0x1
-_0812305C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_8123000
-
- thumb_func_start sub_8123068
-sub_8123068: @ 8123068
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x34
- str r0, [sp, 0x28]
- ldr r0, [sp, 0x54]
- ldr r4, [sp, 0x58]
- lsls r2, 16
- lsrs r2, 16
- mov r9, r2
- lsls r3, 16
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- lsls r4, 16
- lsrs r4, 16
- str r4, [sp, 0x30]
- lsls r1, 16
- asrs r7, r1, 16
- lsrs r0, r3, 16
- str r0, [sp, 0x2C]
- asrs r3, 16
- mov r8, r3
- mov r5, sp
- adds r5, 0x25
- mov r6, sp
- adds r6, 0x26
- str r6, [sp]
- adds r0, r7, 0
- mov r1, r8
- add r2, sp, 0x24
- adds r3, r5, 0
- bl sub_8123000
- lsls r0, 24
- cmp r0, 0
- beq _08123122
- ldrb r2, [r5]
- mov r1, r9
- lsls r0, r1, 24
- lsrs r0, 24
- mov r9, r0
- ldrb r0, [r6]
- str r0, [sp]
- mov r1, r10
- lsls r0, r1, 24
- lsrs r4, r0, 24
- str r4, [sp, 0x4]
- movs r0, 0
- movs r1, 0
- mov r3, r9
- bl FillBgTilemapBufferRect_Palette0
- ldr r1, [sp, 0x30]
- lsls r0, r1, 16
- asrs r0, 16
- adds r0, r7, r0
- lsls r0, 16
- asrs r0, 16
- str r6, [sp]
- mov r1, r8
- add r2, sp, 0x24
- adds r3, r5, 0
- bl sub_8123000
- lsls r0, 24
- cmp r0, 0
- beq _08123122
- add r0, sp, 0x24
- ldrb r2, [r0]
- ldr r1, [sp, 0x2C]
- lsls r0, r1, 24
- lsrs r0, 24
- str r0, [sp]
- str r4, [sp, 0x4]
- ldrb r0, [r5]
- str r0, [sp, 0x8]
- mov r0, r9
- str r0, [sp, 0xC]
- ldrb r0, [r6]
- str r0, [sp, 0x10]
- str r4, [sp, 0x14]
- movs r0, 0x11
- str r0, [sp, 0x18]
- movs r0, 0
- str r0, [sp, 0x1C]
- str r0, [sp, 0x20]
- ldr r1, [sp, 0x28]
- movs r3, 0
- bl CopyRectToBgTilemapBufferRect
-_08123122:
- add sp, 0x34
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8123068
-
- thumb_func_start sub_8123134
-sub_8123134: @ 8123134
- push {r4,lr}
- ldr r4, _08123184 @ =gSprites
- ldrb r2, [r0, 0xB]
- lsls r3, r2, 4
- adds r3, r2
- lsls r3, 2
- adds r3, r4
- lsls r1, 16
- asrs r1, 13
- ldrh r2, [r3, 0x24]
- adds r2, r1
- strh r2, [r3, 0x24]
- ldrb r3, [r0, 0xA]
- lsls r2, r3, 4
- adds r2, r3
- lsls r2, 2
- adds r2, r4
- ldrh r3, [r2, 0x24]
- adds r3, r1
- strh r3, [r2, 0x24]
- ldrb r3, [r0, 0x9]
- lsls r2, r3, 4
- adds r2, r3
- lsls r2, 2
- adds r2, r4
- ldrh r3, [r2, 0x24]
- adds r3, r1
- strh r3, [r2, 0x24]
- ldrb r2, [r0, 0xC]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r4
- ldrh r2, [r0, 0x24]
- adds r2, r1
- strh r2, [r0, 0x24]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123184: .4byte gSprites
- thumb_func_end sub_8123134
-
- thumb_func_start sub_8123188
-sub_8123188: @ 8123188
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _081231DC @ =gTasks+0x8
- adds r4, r1, r0
- movs r1, 0x14
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081231B6
- ldr r2, _081231E0 @ =gUnknown_203B0B4
- ldr r0, _081231E4 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- lsls r1, 4
- ldr r0, [r2]
- adds r0, r1
- movs r2, 0x14
- ldrsh r1, [r4, r2]
- bl sub_8123134
-_081231B6:
- movs r1, 0x16
- ldrsh r0, [r4, r1]
- cmp r0, 0
- beq _081231D4
- ldr r2, _081231E0 @ =gUnknown_203B0B4
- ldr r0, _081231E4 @ =gUnknown_203B0A0
- movs r1, 0xA
- ldrsb r1, [r0, r1]
- lsls r1, 4
- ldr r0, [r2]
- adds r0, r1
- movs r2, 0x16
- ldrsh r1, [r4, r2]
- bl sub_8123134
-_081231D4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081231DC: .4byte gTasks+0x8
-_081231E0: .4byte gUnknown_203B0B4
-_081231E4: .4byte gUnknown_203B0A0
- thumb_func_end sub_8123188
-
- thumb_func_start sub_81231E8
-sub_81231E8: @ 81231E8
- push {r4-r6,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08123264 @ =gTasks+0x8
- adds r5, r1, r0
- movs r1, 0x14
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _08123228
- ldr r0, _08123268 @ =gUnknown_203B0C8
- ldr r0, [r0]
- ldrh r1, [r5, 0x10]
- ldrh r2, [r5]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- movs r3, 0x2
- ldrsh r2, [r5, r3]
- movs r4, 0x4
- ldrsh r3, [r5, r4]
- movs r6, 0x6
- ldrsh r4, [r5, r6]
- str r4, [sp]
- movs r6, 0x14
- ldrsh r4, [r5, r6]
- str r4, [sp, 0x4]
- bl sub_8123068
-_08123228:
- movs r1, 0x16
- ldrsh r0, [r5, r1]
- cmp r0, 0
- beq _08123256
- ldr r0, _0812326C @ =gUnknown_203B0CC
- ldr r0, [r0]
- ldrh r1, [r5, 0x12]
- ldrh r2, [r5, 0x8]
- adds r1, r2
- lsls r1, 16
- asrs r1, 16
- movs r3, 0xA
- ldrsh r2, [r5, r3]
- movs r4, 0xC
- ldrsh r3, [r5, r4]
- movs r6, 0xE
- ldrsh r4, [r5, r6]
- str r4, [sp]
- movs r6, 0x16
- ldrsh r4, [r5, r6]
- str r4, [sp, 0x4]
- bl sub_8123068
-_08123256:
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08123264: .4byte gTasks+0x8
-_08123268: .4byte gUnknown_203B0C8
-_0812326C: .4byte gUnknown_203B0CC
- thumb_func_end sub_81231E8
-
- thumb_func_start sub_8123270
-sub_8123270: @ 8123270
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r0, r4, 2
- adds r0, r4
- lsls r7, r0, 3
- ldr r0, _08123370 @ =gTasks+0x8
- mov r8, r0
- adds r6, r7, r0
- adds r0, r4, 0
- bl sub_81231E8
- adds r0, r4, 0
- bl sub_8123188
- ldrh r1, [r6, 0x14]
- ldrh r2, [r6, 0x10]
- adds r1, r2
- strh r1, [r6, 0x10]
- ldrh r0, [r6, 0x16]
- ldrh r3, [r6, 0x12]
- adds r0, r3
- strh r0, [r6, 0x12]
- add r2, sp, 0x8
- ldrh r0, [r6]
- adds r0, r1
- strh r0, [r2]
- adds r1, r2, 0
- ldrh r0, [r6, 0x12]
- ldrh r3, [r6, 0x8]
- adds r2, r0, r3
- strh r2, [r1, 0x2]
- adds r0, r1, 0
- ldrh r0, [r0]
- cmp r0, 0x21
- bls _08123362
- lsls r0, r2, 16
- lsrs r0, 16
- cmp r0, 0x21
- bls _08123362
- movs r1, 0x14
- ldrsh r0, [r6, r1]
- negs r0, r0
- strh r0, [r6, 0x14]
- movs r2, 0x16
- ldrsh r0, [r6, r2]
- negs r0, r0
- strh r0, [r6, 0x16]
- bl swap_pokemon_and_oams
- ldr r4, _08123374 @ =gUnknown_203B0A0
- ldrb r0, [r4, 0x9]
- bl sub_811F234
- ldrb r0, [r4, 0xA]
- bl sub_811F234
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- ldr r5, _08123378 @ =gUnknown_203B0B4
- ldr r1, [r5]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- bl PutWindowTilemap
- movs r0, 0xA
- ldrsb r0, [r4, r0]
- ldr r1, [r5]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- bl PutWindowTilemap
- ldr r0, _0812337C @ =gUnknown_203B0C8
- ldr r1, [r0]
- ldrb r2, [r6]
- ldrb r3, [r6, 0x2]
- ldrb r0, [r6, 0x4]
- str r0, [sp]
- ldrb r0, [r6, 0x6]
- str r0, [sp, 0x4]
- movs r0, 0
- bl CopyRectIntoAltRect
- ldr r0, _08123380 @ =gUnknown_203B0CC
- ldr r1, [r0]
- ldrb r2, [r6, 0x8]
- ldrb r3, [r6, 0xA]
- ldrb r0, [r6, 0xC]
- str r0, [sp]
- ldrb r0, [r6, 0xE]
- str r0, [sp, 0x4]
- movs r0, 0
- bl CopyRectIntoAltRect
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- ldr r1, [r5]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- bl ClearWindowTilemap
- movs r0, 0xA
- ldrsb r0, [r4, r0]
- ldr r1, [r5]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- bl ClearWindowTilemap
- mov r0, r8
- subs r0, 0x8
- adds r0, r7, r0
- ldr r1, _08123384 @ =sub_8123388
- str r1, [r0]
-_08123362:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08123370: .4byte gTasks+0x8
-_08123374: .4byte gUnknown_203B0A0
-_08123378: .4byte gUnknown_203B0B4
-_0812337C: .4byte gUnknown_203B0C8
-_08123380: .4byte gUnknown_203B0CC
-_08123384: .4byte sub_8123388
- thumb_func_end sub_8123270
-
- thumb_func_start sub_8123388
-sub_8123388: @ 8123388
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _081233E8 @ =gTasks+0x8
- adds r4, r0, r1
- adds r0, r6, 0
- bl sub_81231E8
- adds r0, r6, 0
- bl sub_8123188
- movs r1, 0x14
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _081233F4
- movs r2, 0x16
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _081233F4
- ldr r5, _081233EC @ =gUnknown_203B0A0
- movs r0, 0x9
- ldrsb r0, [r5, r0]
- ldr r4, _081233F0 @ =gUnknown_203B0B4
- ldr r1, [r4]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- bl PutWindowTilemap
- movs r0, 0xA
- ldrsb r0, [r5, r0]
- ldr r1, [r4]
- lsls r0, 4
- adds r0, r1
- ldrb r0, [r0, 0x8]
- bl PutWindowTilemap
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- adds r0, r6, 0
- bl sub_81235E8
- b _08123418
- .align 2, 0
-_081233E8: .4byte gTasks+0x8
-_081233EC: .4byte gUnknown_203B0A0
-_081233F0: .4byte gUnknown_203B0B4
-_081233F4:
- ldrh r1, [r4, 0x14]
- ldrh r0, [r4, 0x10]
- adds r1, r0
- strh r1, [r4, 0x10]
- ldrh r0, [r4, 0x16]
- ldrh r2, [r4, 0x12]
- adds r0, r2
- strh r0, [r4, 0x12]
- lsls r1, 16
- asrs r1, 16
- cmp r1, 0
- bne _0812340E
- strh r1, [r4, 0x14]
-_0812340E:
- movs r1, 0x12
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08123418
- strh r0, [r4, 0x16]
-_08123418:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8123388
-
- thumb_func_start oamt_swap_pos
-oamt_swap_pos: @ 8123420
- push {r4-r6,lr}
- mov r6, r10
- mov r5, r9
- mov r4, r8
- push {r4-r6}
- ldrb r3, [r0]
- ldrb r2, [r1]
- strb r2, [r0]
- strb r3, [r1]
- ldr r5, _081234E8 @ =gSprites
- ldrb r2, [r0]
- lsls r3, r2, 4
- adds r3, r2
- lsls r3, 2
- adds r3, r5
- ldrh r6, [r3, 0x20]
- ldrh r2, [r3, 0x22]
- mov r8, r2
- ldrh r2, [r3, 0x24]
- mov r9, r2
- ldrh r2, [r3, 0x26]
- mov r10, r2
- ldrb r4, [r1]
- lsls r2, r4, 4
- adds r2, r4
- lsls r2, 2
- adds r2, r5
- ldrh r2, [r2, 0x20]
- strh r2, [r3, 0x20]
- ldrb r2, [r0]
- lsls r3, r2, 4
- adds r3, r2
- lsls r3, 2
- adds r3, r5
- ldrb r4, [r1]
- lsls r2, r4, 4
- adds r2, r4
- lsls r2, 2
- adds r2, r5
- ldrh r2, [r2, 0x22]
- strh r2, [r3, 0x22]
- ldrb r2, [r0]
- lsls r3, r2, 4
- adds r3, r2
- lsls r3, 2
- adds r3, r5
- ldrb r4, [r1]
- lsls r2, r4, 4
- adds r2, r4
- lsls r2, 2
- adds r2, r5
- ldrh r2, [r2, 0x24]
- strh r2, [r3, 0x24]
- ldrb r0, [r0]
- lsls r2, r0, 4
- adds r2, r0
- lsls r2, 2
- adds r2, r5
- ldrb r3, [r1]
- lsls r0, r3, 4
- adds r0, r3
- lsls r0, 2
- adds r0, r5
- ldrh r0, [r0, 0x26]
- strh r0, [r2, 0x26]
- ldrb r2, [r1]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r5
- strh r6, [r0, 0x20]
- ldrb r2, [r1]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r5
- mov r2, r8
- strh r2, [r0, 0x22]
- ldrb r2, [r1]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r5
- mov r2, r9
- strh r2, [r0, 0x24]
- ldrb r1, [r1]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r5
- mov r1, r10
- strh r1, [r0, 0x26]
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081234E8: .4byte gSprites
- thumb_func_end oamt_swap_pos
-
- thumb_func_start swap_pokemon_and_oams
-swap_pokemon_and_oams: @ 81234EC
- push {r4-r6,lr}
- sub sp, 0x8
- ldr r1, _08123580 @ =gUnknown_203B0B4
- ldr r2, _08123584 @ =gUnknown_203B0A0
- movs r3, 0x9
- ldrsb r3, [r2, r3]
- lsls r0, r3, 4
- ldr r1, [r1]
- adds r0, r1, r0
- str r0, [sp]
- ldrb r2, [r2, 0xA]
- lsls r2, 24
- asrs r2, 24
- lsls r0, r2, 4
- adds r0, r1, r0
- str r0, [sp, 0x4]
- movs r1, 0x64
- adds r4, r3, 0
- muls r4, r1
- ldr r0, _08123588 @ =gPlayerParty
- adds r4, r0
- adds r5, r2, 0
- muls r5, r1
- adds r5, r0
- movs r0, 0x64
- bl Alloc
- adds r6, r0, 0
- adds r1, r4, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r5, 0
- adds r1, r6, 0
- movs r2, 0x64
- bl memcpy
- adds r0, r6, 0
- bl Free
- ldr r0, [sp]
- adds r0, 0xB
- ldr r1, [sp, 0x4]
- adds r1, 0xB
- bl oamt_swap_pos
- ldr r0, [sp]
- adds r0, 0xA
- ldr r1, [sp, 0x4]
- adds r1, 0xA
- bl oamt_swap_pos
- ldr r0, [sp]
- adds r0, 0x9
- ldr r1, [sp, 0x4]
- adds r1, 0x9
- bl oamt_swap_pos
- ldr r0, [sp]
- adds r0, 0xC
- ldr r1, [sp, 0x4]
- adds r1, 0xC
- bl oamt_swap_pos
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08123580: .4byte gUnknown_203B0B4
-_08123584: .4byte gUnknown_203B0A0
-_08123588: .4byte gPlayerParty
- thumb_func_end swap_pokemon_and_oams
-
- thumb_func_start sub_812358C
-sub_812358C: @ 812358C
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- movs r0, 0x4
- bl Alloc
- adds r4, r0, 0
- ldr r0, _081235E0 @ =gUnknown_203B0A0
- mov r8, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r6, 0x64
- muls r0, r6
- ldr r5, _081235E4 @ =gPlayerParty
- adds r0, r5
- movs r1, 0x41
- bl GetMonData
- strh r0, [r4]
- mov r1, r8
- movs r0, 0xA
- ldrsb r0, [r1, r0]
- muls r0, r6
- adds r0, r5
- movs r1, 0x41
- bl GetMonData
- strh r0, [r4, 0x2]
- movs r0, 0x3
- adds r1, r4, 0
- bl sub_8113550
- adds r0, r4, 0
- bl Free
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081235E0: .4byte gUnknown_203B0A0
-_081235E4: .4byte gPlayerParty
- thumb_func_end sub_812358C
-
- thumb_func_start sub_81235E8
-sub_81235E8: @ 81235E8
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _08123630 @ =gUnknown_203B09C
- ldr r0, [r0]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r4, _08123634 @ =gUnknown_203B0A0
- movs r0, 0
- strb r0, [r4, 0xB]
- ldrb r0, [r4, 0x9]
- movs r1, 0
- bl sub_811F818
- ldrb r0, [r4, 0xA]
- strb r0, [r4, 0x9]
- ldrb r0, [r4, 0xA]
- movs r1, 0x1
- bl sub_811F818
- movs r0, 0
- bl sub_8121D0C
- ldr r1, _08123638 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _0812363C @ =sub_811FB28
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08123630: .4byte gUnknown_203B09C
-_08123634: .4byte gUnknown_203B0A0
-_08123638: .4byte gTasks
-_0812363C: .4byte sub_811FB28
- thumb_func_end sub_81235E8
-
- thumb_func_start brm_cancel_1
-brm_cancel_1: @ 8123640
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r4, _08123674 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r0, _08123678 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x6
- bne _0812367C
- movs r0, 0xF
- bl sub_8121D0C
- b _08123682
- .align 2, 0
-_08123674: .4byte gUnknown_203B09C
-_08123678: .4byte gUnknown_203B0A0
-_0812367C:
- movs r0, 0
- bl sub_8121D0C
-_08123682:
- ldr r0, _08123698 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812369C @ =sub_811FB28
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08123698: .4byte gTasks
-_0812369C: .4byte sub_811FB28
- thumb_func_end brm_cancel_1
-
- thumb_func_start sub_81236A0
-sub_81236A0: @ 81236A0
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0x5
- bl PlaySE
- ldr r4, _081236F0 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r0, _081236F4 @ =gPlayerParty
- ldr r1, _081236F8 @ =gUnknown_203B0A0
- ldrb r1, [r1, 0x9]
- movs r2, 0x8
- bl sub_812299C
- movs r0, 0x1
- bl sub_8121E5C
- movs r0, 0x19
- bl sub_8121D0C
- ldr r1, _081236FC @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0xFF
- strh r1, [r0, 0x8]
- ldr r1, _08123700 @ =sub_8122C5C
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081236F0: .4byte gUnknown_203B09C
-_081236F4: .4byte gPlayerParty
-_081236F8: .4byte gUnknown_203B0A0
-_081236FC: .4byte gTasks
-_08123700: .4byte sub_8122C5C
- thumb_func_end sub_81236A0
-
- thumb_func_start sub_8123704
-sub_8123704: @ 8123704
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08123728 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _0812372C @ =sub_8123730
- str r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_811FA78
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123728: .4byte gUnknown_203B09C
-_0812372C: .4byte sub_8123730
- thumb_func_end sub_8123704
-
- thumb_func_start sub_8123730
-sub_8123730: @ 8123730
- push {lr}
- ldr r2, _08123740 @ =c2_8123744
- movs r0, 0x1
- movs r1, 0x3
- bl sub_8107DB4
- pop {r0}
- bx r0
- .align 2, 0
-_08123740: .4byte c2_8123744
- thumb_func_end sub_8123730
-
- thumb_func_start c2_8123744
-c2_8123744: @ 8123744
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- ldr r6, _0812376C @ =gSpecialVar_ItemId
- ldrh r0, [r6]
- cmp r0, 0
- bne _08123778
- ldr r3, _08123770 @ =gUnknown_203B0A0
- ldrb r0, [r3, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r3, 0xB]
- movs r1, 0x7F
- str r1, [sp]
- ldr r1, _08123774 @ =sub_8122C30
- str r1, [sp, 0x4]
- ldr r1, [r3]
- b _081237AE
- .align 2, 0
-_0812376C: .4byte gSpecialVar_ItemId
-_08123770: .4byte gUnknown_203B0A0
-_08123774: .4byte sub_8122C30
-_08123778:
- ldr r4, _081237BC @ =gUnknown_203B0D8
- ldr r5, _081237C0 @ =gUnknown_203B0A0
- movs r0, 0x9
- ldrsb r0, [r5, r0]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r7, _081237C4 @ =gPlayerParty
- adds r0, r7
- movs r1, 0xC
- bl GetMonData
- strh r0, [r4]
- lsls r0, 16
- cmp r0, 0
- beq _081237CC
- ldrb r0, [r5, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r5, 0xB]
- movs r1, 0x7F
- str r1, [sp]
- ldr r1, _081237C8 @ =sub_81238A4
- str r1, [sp, 0x4]
- ldr r1, [r5]
-_081237AE:
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
- b _08123814
- .align 2, 0
-_081237BC: .4byte gUnknown_203B0D8
-_081237C0: .4byte gUnknown_203B0A0
-_081237C4: .4byte gPlayerParty
-_081237C8: .4byte sub_81238A4
-_081237CC:
- ldrh r0, [r6]
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _081237F8
- ldrh r0, [r6]
- movs r1, 0x1
- bl RemoveBagItem
- movs r0, 0x9
- ldrsb r0, [r5, r0]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- ldrh r1, [r6]
- bl sub_81205C8
- bl sub_8123A80
- b _08123814
-_081237F8:
- ldrb r0, [r5, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r5, 0xB]
- movs r1, 0x7F
- str r1, [sp]
- ldr r1, _08123820 @ =sub_8123824
- str r1, [sp, 0x4]
- ldr r1, [r5]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
-_08123814:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08123820: .4byte sub_8123824
- thumb_func_end c2_8123744
-
- thumb_func_start sub_8123824
-sub_8123824: @ 8123824
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0812388C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08123880
- ldr r0, _08123890 @ =gSpecialVar_ItemId
- ldrh r4, [r0]
- ldr r0, _08123894 @ =gUnknown_203B0A0
- mov r8, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r6, 0x64
- muls r0, r6
- ldr r5, _08123898 @ =gPlayerParty
- adds r0, r5
- adds r1, r4, 0
- movs r2, 0
- movs r3, 0
- bl sub_8120420
- mov r1, r8
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- muls r0, r6
- adds r0, r5
- adds r1, r4, 0
- bl sub_81205C8
- adds r0, r4, 0
- movs r1, 0x1
- bl RemoveBagItem
- ldr r1, _0812389C @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _081238A0 @ =sub_8123BF0
- str r1, [r0]
-_08123880:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812388C: .4byte gPaletteFade
-_08123890: .4byte gSpecialVar_ItemId
-_08123894: .4byte gUnknown_203B0A0
-_08123898: .4byte gPlayerParty
-_0812389C: .4byte gTasks
-_081238A0: .4byte sub_8123BF0
- thumb_func_end sub_8123824
-
- thumb_func_start sub_81238A4
-sub_81238A4: @ 81238A4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081238E4 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _081238DC
- ldr r0, _081238E8 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _081238EC @ =gPlayerParty
- adds r0, r1
- ldr r1, _081238F0 @ =gUnknown_203B0D8
- ldrh r1, [r1]
- movs r2, 0x1
- bl sub_812050C
- ldr r1, _081238F4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _081238F8 @ =sub_81238FC
- str r1, [r0]
-_081238DC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081238E4: .4byte gPaletteFade
-_081238E8: .4byte gUnknown_203B0A0
-_081238EC: .4byte gPlayerParty
-_081238F0: .4byte gUnknown_203B0D8
-_081238F4: .4byte gTasks
-_081238F8: .4byte sub_81238FC
- thumb_func_end sub_81238A4
-
- thumb_func_start sub_81238FC
-sub_81238FC: @ 81238FC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08123920
- bl sub_812200C
- ldr r0, _08123928 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812392C @ =sub_8123930
- str r0, [r1]
-_08123920:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123928: .4byte gTasks
-_0812392C: .4byte sub_8123930
- thumb_func_end sub_81238FC
-
- thumb_func_start sub_8123930
-sub_8123930: @ 8123930
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _08123956
- cmp r1, 0
- bgt _08123950
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08123A2C
- b _08123A40
-_08123950:
- cmp r1, 0x1
- beq _08123A32
- b _08123A40
-_08123956:
- ldr r5, _08123998 @ =gSpecialVar_ItemId
- ldrh r0, [r5]
- movs r1, 0x1
- bl RemoveBagItem
- ldr r6, _0812399C @ =gUnknown_203B0D8
- ldrh r0, [r6]
- movs r1, 0x1
- bl AddBagItem
- lsls r0, 24
- cmp r0, 0
- bne _081239AC
- ldrh r0, [r5]
- movs r1, 0x1
- bl AddBagItem
- ldrh r0, [r6]
- bl sub_8120658
- ldr r0, _081239A0 @ =gStringVar4
- movs r1, 0
- bl sub_81202F8
- ldr r1, _081239A4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _081239A8 @ =sub_81203B8
- str r1, [r0]
- b _08123A40
- .align 2, 0
-_08123998: .4byte gSpecialVar_ItemId
-_0812399C: .4byte gUnknown_203B0D8
-_081239A0: .4byte gStringVar4
-_081239A4: .4byte gTasks
-_081239A8: .4byte sub_81203B8
-_081239AC:
- ldrh r0, [r5]
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _081239EC
- ldr r0, _081239DC @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _081239E0 @ =gPlayerParty
- adds r0, r1
- ldrh r1, [r5]
- bl sub_81205C8
- ldr r1, _081239E4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _081239E8 @ =sub_8123A50
- str r1, [r0]
- b _08123A40
- .align 2, 0
-_081239DC: .4byte gUnknown_203B0A0
-_081239E0: .4byte gPlayerParty
-_081239E4: .4byte gTasks
-_081239E8: .4byte sub_8123A50
-_081239EC:
- ldr r0, _08123A1C @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08123A20 @ =gPlayerParty
- adds r0, r1
- ldrh r1, [r5]
- bl sub_81205C8
- ldrh r0, [r5]
- ldrh r1, [r6]
- movs r2, 0x1
- bl sub_8120558
- ldr r1, _08123A24 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08123A28 @ =sub_8123BF0
- str r1, [r0]
- b _08123A40
- .align 2, 0
-_08123A1C: .4byte gUnknown_203B0A0
-_08123A20: .4byte gPlayerParty
-_08123A24: .4byte gTasks
-_08123A28: .4byte sub_8123BF0
-_08123A2C:
- movs r0, 0x5
- bl PlaySE
-_08123A32:
- ldr r0, _08123A48 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08123A4C @ =sub_81203B8
- str r0, [r1]
-_08123A40:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08123A48: .4byte gTasks
-_08123A4C: .4byte sub_81203B8
- thumb_func_end sub_8123930
-
- thumb_func_start sub_8123A50
-sub_8123A50: @ 8123A50
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08123A70
- ldr r0, _08123A78 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _08123A7C @ =sub_8123A80
- str r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_811FA78
-_08123A70:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123A78: .4byte gUnknown_203B09C
-_08123A7C: .4byte sub_8123A80
- thumb_func_end sub_8123A50
-
- thumb_func_start sub_8123A80
-sub_8123A80: @ 8123A80
- push {lr}
- ldr r0, _08123AB8 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08123ABC @ =gPlayerParty
- adds r0, r1
- movs r1, 0x40
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08123AC0 @ =gSaveBlock1Ptr
- lsls r2, r0, 3
- adds r2, r0
- lsls r2, 2
- ldr r0, _08123AC4 @ =0x00002cd0
- adds r2, r0
- ldr r1, [r1]
- adds r1, r2
- ldr r2, _08123AC8 @ =sub_8123ACC
- movs r0, 0x4
- bl sub_80FEBAC
- pop {r0}
- bx r0
- .align 2, 0
-_08123AB8: .4byte gUnknown_203B0A0
-_08123ABC: .4byte gPlayerParty
-_08123AC0: .4byte gSaveBlock1Ptr
-_08123AC4: .4byte 0x00002cd0
-_08123AC8: .4byte sub_8123ACC
- thumb_func_end sub_8123A80
-
- thumb_func_start sub_8123ACC
-sub_8123ACC: @ 8123ACC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- ldr r6, _08123B38 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r6, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08123B3C @ =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldr r0, _08123B40 @ =gSpecialVar_Result
- ldrh r7, [r0]
- cmp r7, 0
- bne _08123B4C
- adds r0, r5, 0
- bl TakeMailFromMon
- ldr r4, _08123B44 @ =gUnknown_203B0D8
- adds r0, r5, 0
- movs r1, 0xC
- adds r2, r4, 0
- bl SetMonData
- ldrh r0, [r4]
- movs r1, 0x1
- bl RemoveBagItem
- mov r0, r8
- movs r1, 0x1
- bl AddBagItem
- ldrb r0, [r6, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r6, 0xB]
- str r7, [sp]
- ldr r1, _08123B48 @ =sub_8122C30
- str r1, [sp, 0x4]
- ldr r1, [r6]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
- b _08123B68
- .align 2, 0
-_08123B38: .4byte gUnknown_203B0A0
-_08123B3C: .4byte gPlayerParty
-_08123B40: .4byte gSpecialVar_Result
-_08123B44: .4byte gUnknown_203B0D8
-_08123B48: .4byte sub_8122C30
-_08123B4C:
- ldrb r0, [r6, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r6, 0xB]
- movs r1, 0
- str r1, [sp]
- ldr r1, _08123B74 @ =sub_8123B78
- str r1, [sp, 0x4]
- ldr r1, [r6]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
-_08123B68:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08123B74: .4byte sub_8123B78
- thumb_func_end sub_8123ACC
-
- thumb_func_start sub_8123B78
-sub_8123B78: @ 8123B78
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08123BB0 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08123BDE
- ldr r1, _08123BB4 @ =gUnknown_203B0D8
- ldrh r0, [r1]
- cmp r0, 0
- bne _08123BC4
- ldr r0, _08123BB8 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08123BBC @ =gPlayerParty
- adds r0, r1
- ldr r1, _08123BC0 @ =gSpecialVar_ItemId
- ldrh r1, [r1]
- movs r2, 0
- movs r3, 0
- bl sub_8120420
- b _08123BD0
- .align 2, 0
-_08123BB0: .4byte gPaletteFade
-_08123BB4: .4byte gUnknown_203B0D8
-_08123BB8: .4byte gUnknown_203B0A0
-_08123BBC: .4byte gPlayerParty
-_08123BC0: .4byte gSpecialVar_ItemId
-_08123BC4:
- ldr r0, _08123BE4 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- ldrh r1, [r1]
- movs r2, 0
- bl sub_8120558
-_08123BD0:
- ldr r0, _08123BE8 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08123BEC @ =sub_8123BF0
- str r0, [r1]
-_08123BDE:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123BE4: .4byte gSpecialVar_ItemId
-_08123BE8: .4byte gTasks
-_08123BEC: .4byte sub_8123BF0
- thumb_func_end sub_8123B78
-
- thumb_func_start sub_8123BF0
-sub_8123BF0: @ 8123BF0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _08123C2C @ =gUnknown_203B0A0
- ldrb r4, [r0, 0x9]
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08123C24
- lsls r2, r4, 24
- asrs r2, 24
- movs r0, 0x64
- muls r0, r2
- ldr r1, _08123C30 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08123C34 @ =gUnknown_203B0B4
- lsls r2, 4
- ldr r1, [r1]
- adds r1, r2
- bl sub_81224B4
- adds r0, r5, 0
- bl sub_81203B8
-_08123C24:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08123C2C: .4byte gUnknown_203B0A0
-_08123C30: .4byte gPlayerParty
-_08123C34: .4byte gUnknown_203B0B4
- thumb_func_end sub_8123BF0
-
- thumb_func_start sub_8123C38
-sub_8123C38: @ 8123C38
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _08123C90 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08123C94 @ =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- movs r0, 0x5
- bl PlaySE
- ldr r4, _08123C98 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- adds r0, r5, 0
- bl sub_8120610
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- beq _08123C9C
- cmp r0, 0x1
- beq _08123CC0
- adds r0, r5, 0
- adds r1, r6, 0
- movs r2, 0x1
- bl sub_81204AC
- b _08123CCE
- .align 2, 0
-_08123C90: .4byte gUnknown_203B0A0
-_08123C94: .4byte gPlayerParty
-_08123C98: .4byte gUnknown_203B09C
-_08123C9C:
- ldr r1, _08123CB4 @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- ldr r4, _08123CB8 @ =gStringVar4
- ldr r1, _08123CBC @ =gUnknown_8416C8F
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- b _08123CC8
- .align 2, 0
-_08123CB4: .4byte gStringVar1
-_08123CB8: .4byte gStringVar4
-_08123CBC: .4byte gUnknown_8416C8F
-_08123CC0:
- adds r0, r6, 0
- bl sub_8120658
- ldr r0, _08123CE8 @ =gStringVar4
-_08123CC8:
- movs r1, 0x1
- bl sub_81202F8
-_08123CCE:
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r0, _08123CEC @ =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r1, r0
- ldr r0, _08123CF0 @ =sub_8123BF0
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08123CE8: .4byte gStringVar4
-_08123CEC: .4byte gTasks
-_08123CF0: .4byte sub_8123BF0
- thumb_func_end sub_8123C38
-
- thumb_func_start sub_8123CF4
-sub_8123CF4: @ 8123CF4
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- movs r0, 0x5
- bl PlaySE
- ldr r4, _08123D44 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r0, _08123D48 @ =gPlayerParty
- ldr r1, _08123D4C @ =gUnknown_203B0A0
- ldrb r1, [r1, 0x9]
- movs r2, 0x9
- bl sub_812299C
- movs r0, 0x2
- bl sub_8121E5C
- movs r0, 0x1A
- bl sub_8121D0C
- ldr r1, _08123D50 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- movs r1, 0xFF
- strh r1, [r0, 0x8]
- ldr r1, _08123D54 @ =sub_8122C5C
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08123D44: .4byte gUnknown_203B09C
-_08123D48: .4byte gPlayerParty
-_08123D4C: .4byte gUnknown_203B0A0
-_08123D50: .4byte gTasks
-_08123D54: .4byte sub_8122C5C
- thumb_func_end sub_8123CF4
-
- thumb_func_start sub_8123D58
-sub_8123D58: @ 8123D58
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08123D7C @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _08123D80 @ =sub_8123D84
- str r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_811FA78
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123D7C: .4byte gUnknown_203B09C
-_08123D80: .4byte sub_8123D84
- thumb_func_end sub_8123D58
-
- thumb_func_start sub_8123D84
-sub_8123D84: @ 8123D84
- push {lr}
- ldr r0, _08123DB8 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08123DBC @ =gPlayerParty
- adds r0, r1
- movs r1, 0x40
- bl GetMonData
- ldr r2, _08123DC0 @ =gSaveBlock1Ptr
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r0, _08123DC4 @ =0x00002cd0
- adds r1, r0
- ldr r0, [r2]
- adds r0, r1
- ldr r1, _08123DC8 @ =sub_8123DCC
- movs r2, 0x1
- bl ReadMail
- pop {r0}
- bx r0
- .align 2, 0
-_08123DB8: .4byte gUnknown_203B0A0
-_08123DBC: .4byte gPlayerParty
-_08123DC0: .4byte gSaveBlock1Ptr
-_08123DC4: .4byte 0x00002cd0
-_08123DC8: .4byte sub_8123DCC
- thumb_func_end sub_8123D84
-
- thumb_func_start sub_8123DCC
-sub_8123DCC: @ 8123DCC
- push {lr}
- sub sp, 0xC
- ldr r2, _08123E00 @ =gPaletteFade
- ldrb r0, [r2, 0x8]
- movs r1, 0x80
- orrs r0, r1
- strb r0, [r2, 0x8]
- ldr r3, _08123E04 @ =gUnknown_203B0A0
- ldrb r0, [r3, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r3, 0xB]
- movs r1, 0x16
- str r1, [sp]
- ldr r1, _08123E08 @ =sub_8122C30
- str r1, [sp, 0x4]
- ldr r1, [r3]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08123E00: .4byte gPaletteFade
-_08123E04: .4byte gUnknown_203B0A0
-_08123E08: .4byte sub_8122C30
- thumb_func_end sub_8123DCC
-
- thumb_func_start brm_take_2
-brm_take_2: @ 8123E0C
- push {r4,r5,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- ldr r5, _08123E48 @ =gUnknown_203B09C
- ldr r0, [r5]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r0, [r5]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, _08123E4C @ =gUnknown_8416B64
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _08123E50 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08123E54 @ =sub_8123E58
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08123E48: .4byte gUnknown_203B09C
-_08123E4C: .4byte gUnknown_8416B64
-_08123E50: .4byte gTasks
-_08123E54: .4byte sub_8123E58
- thumb_func_end brm_take_2
-
- thumb_func_start sub_8123E58
-sub_8123E58: @ 8123E58
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08123E7C
- bl sub_812200C
- ldr r0, _08123E84 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08123E88 @ =sub_8123E8C
- str r0, [r1]
-_08123E7C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123E84: .4byte gTasks
-_08123E88: .4byte sub_8123E8C
- thumb_func_end sub_8123E58
-
- thumb_func_start sub_8123E8C
-sub_8123E8C: @ 8123E8C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _08123EB2
- cmp r1, 0
- bgt _08123EAC
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08123F1C
- b _08123F38
-_08123EAC:
- cmp r1, 0x1
- beq _08123F22
- b _08123F38
-_08123EB2:
- ldr r0, _08123EE4 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08123EE8 @ =gPlayerParty
- adds r0, r1
- bl TakeMailFromMon2
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- beq _08123EF8
- ldr r0, _08123EEC @ =gUnknown_8416B86
- movs r1, 0
- bl sub_81202F8
- ldr r1, _08123EF0 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08123EF4 @ =sub_8123BF0
- b _08123F36
- .align 2, 0
-_08123EE4: .4byte gUnknown_203B0A0
-_08123EE8: .4byte gPlayerParty
-_08123EEC: .4byte gUnknown_8416B86
-_08123EF0: .4byte gTasks
-_08123EF4: .4byte sub_8123BF0
-_08123EF8:
- ldr r0, _08123F10 @ =gUnknown_8416BA6
- movs r1, 0
- bl sub_81202F8
- ldr r1, _08123F14 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08123F18 @ =sub_81203B8
- b _08123F36
- .align 2, 0
-_08123F10: .4byte gUnknown_8416BA6
-_08123F14: .4byte gTasks
-_08123F18: .4byte sub_81203B8
-_08123F1C:
- movs r0, 0x5
- bl PlaySE
-_08123F22:
- ldr r0, _08123F40 @ =gUnknown_8416BC3
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _08123F44 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08123F48 @ =sub_8123F4C
-_08123F36:
- str r1, [r0]
-_08123F38:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123F40: .4byte gUnknown_8416BC3
-_08123F44: .4byte gTasks
-_08123F48: .4byte sub_8123F4C
- thumb_func_end sub_8123E8C
-
- thumb_func_start sub_8123F4C
-sub_8123F4C: @ 8123F4C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08123F70
- bl sub_812200C
- ldr r0, _08123F78 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08123F7C @ =sub_8123F80
- str r0, [r1]
-_08123F70:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08123F78: .4byte gTasks
-_08123F7C: .4byte sub_8123F80
- thumb_func_end sub_8123F4C
-
- thumb_func_start sub_8123F80
-sub_8123F80: @ 8123F80
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r5, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _08123FAA
- cmp r1, 0
- bgt _08123FA4
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0812403C
- b _08124050
-_08123FA4:
- cmp r1, 0x1
- beq _08124042
- b _08124050
-_08123FAA:
- ldr r0, _08123FFC @ =gUnknown_203B0A0
- mov r8, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r7, 0x64
- muls r0, r7
- ldr r6, _08124000 @ =gPlayerParty
- adds r0, r6
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- adds r0, r4, 0
- movs r1, 0x1
- bl AddBagItem
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124010
- mov r1, r8
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- muls r0, r7
- adds r0, r6
- bl TakeMailFromMon
- ldr r0, _08124004 @ =gUnknown_8416CC7
- movs r1, 0
- bl sub_81202F8
- ldr r1, _08124008 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _0812400C @ =sub_8123BF0
- str r1, [r0]
- b _08124050
- .align 2, 0
-_08123FFC: .4byte gUnknown_203B0A0
-_08124000: .4byte gPlayerParty
-_08124004: .4byte gUnknown_8416CC7
-_08124008: .4byte gTasks
-_0812400C: .4byte sub_8123BF0
-_08124010:
- adds r0, r4, 0
- bl sub_8120658
- ldr r0, _08124030 @ =gStringVar4
- movs r1, 0
- bl sub_81202F8
- ldr r1, _08124034 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08124038 @ =sub_81203B8
- str r1, [r0]
- b _08124050
- .align 2, 0
-_08124030: .4byte gStringVar4
-_08124034: .4byte gTasks
-_08124038: .4byte sub_81203B8
-_0812403C:
- movs r0, 0x5
- bl PlaySE
-_08124042:
- ldr r0, _0812405C @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _08124060 @ =sub_81203B8
- str r0, [r1]
-_08124050:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0812405C: .4byte gTasks
-_08124060: .4byte sub_81203B8
- thumb_func_end sub_8123F80
-
- thumb_func_start sub_8124064
-sub_8124064: @ 8124064
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- ldr r0, _081240E0 @ =gUnknown_203B0A0
- mov r8, r0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- adds r5, r1, 0
- muls r5, r0
- ldr r0, _081240E4 @ =gPlayerParty
- mov r9, r0
- add r5, r9
- movs r0, 0x5
- bl PlaySE
- ldr r4, _081240E8 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- mov r0, r8
- ldrb r4, [r0, 0x9]
- adds r0, r5, 0
- bl sub_8122B20
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- mov r0, r9
- adds r1, r4, 0
- bl sub_812299C
- movs r0, 0
- bl sub_8121E5C
- movs r0, 0x16
- bl sub_8121D0C
- ldr r1, _081240EC @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- movs r1, 0xFF
- strh r1, [r0, 0x8]
- ldr r1, _081240F0 @ =sub_8122C5C
- str r1, [r0]
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081240E0: .4byte gUnknown_203B0A0
-_081240E4: .4byte gPlayerParty
-_081240E8: .4byte gUnknown_203B09C
-_081240EC: .4byte gTasks
-_081240F0: .4byte sub_8122C5C
- thumb_func_end sub_8124064
-
- thumb_func_start sub_81240F4
-sub_81240F4: @ 81240F4
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r5, _08124120 @ =gUnknown_203B09C
- ldr r0, [r5]
- adds r0, 0xC
- bl sub_8121CE4
- bl sub_8127AC0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124124
- adds r0, r4, 0
- bl sub_811FA78
- b _08124142
- .align 2, 0
-_08124120: .4byte gUnknown_203B09C
-_08124124:
- ldr r0, [r5]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r0, _08124148 @ =gStringVar4
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _0812414C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08124150 @ =sub_81203B8
- str r1, [r0]
-_08124142:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08124148: .4byte gStringVar4
-_0812414C: .4byte gTasks
-_08124150: .4byte sub_81203B8
- thumb_func_end sub_81240F4
-
- thumb_func_start sub_8124154
-sub_8124154: @ 8124154
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _0812417C @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xC0
- ands r0, r1
- cmp r0, 0x80
- bne _08124184
- movs r0, 0x2
- mov r8, r0
- ldr r1, _08124180 @ =gUnknown_8416B3E
- str r1, [sp]
- b _0812418C
- .align 2, 0
-_0812417C: .4byte gUnknown_203B0A0
-_08124180: .4byte gUnknown_8416B3E
-_08124184:
- movs r2, 0x3
- mov r8, r2
- ldr r0, _081241FC @ =gUnknown_8416B16
- str r0, [sp]
-_0812418C:
- ldr r4, _08124200 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- movs r5, 0
- lsls r1, r7, 2
- mov r9, r1
- cmp r5, r8
- bcs _08124222
- ldr r6, _08124204 @ =gUnknown_203B0A0
- ldr r1, _08124208 @ =gTasks
- mov r2, r9
- adds r0, r2, r7
- lsls r0, 3
- adds r0, r1
- mov r10, r0
-_081241B6:
- ldr r0, _0812420C @ =gSelectedOrderFromParty
- adds r4, r5, r0
- ldrb r0, [r4]
- cmp r0, 0
- bne _08124218
- movs r0, 0x5
- bl PlaySE
- ldrb r0, [r6, 0x9]
- adds r0, 0x1
- strb r0, [r4]
- adds r0, r5, 0x2
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08124210 @ =gUnknown_203B0B4
- movs r2, 0x9
- ldrsb r2, [r6, r2]
- lsls r2, 4
- ldr r1, [r1]
- adds r1, r2
- movs r2, 0x1
- bl sub_8121C70
- mov r0, r8
- subs r0, 0x1
- cmp r5, r0
- bne _081241F0
- bl sub_8124258
-_081241F0:
- movs r0, 0
- bl sub_8121D0C
- ldr r0, _08124214 @ =sub_811FB28
- mov r1, r10
- b _0812423C
- .align 2, 0
-_081241FC: .4byte gUnknown_8416B16
-_08124200: .4byte gUnknown_203B09C
-_08124204: .4byte gUnknown_203B0A0
-_08124208: .4byte gTasks
-_0812420C: .4byte gSelectedOrderFromParty
-_08124210: .4byte gUnknown_203B0B4
-_08124214: .4byte sub_811FB28
-_08124218:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, r8
- bcc _081241B6
-_08124222:
- movs r0, 0x1A
- bl PlaySE
- ldr r0, [sp]
- movs r1, 0x1
- bl sub_81202F8
- ldr r0, _08124250 @ =gTasks
- mov r2, r9
- adds r1, r2, r7
- lsls r1, 3
- adds r1, r0
- ldr r0, _08124254 @ =sub_81203B8
-_0812423C:
- str r0, [r1]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08124250: .4byte gTasks
-_08124254: .4byte sub_81203B8
- thumb_func_end sub_8124154
-
- thumb_func_start sub_8124258
-sub_8124258: @ 8124258
- push {r4,lr}
- ldr r4, _08124274 @ =gUnknown_203B0A0
- ldrb r0, [r4, 0x9]
- movs r1, 0
- bl sub_811F818
- movs r0, 0x6
- strb r0, [r4, 0x9]
- movs r1, 0x1
- bl sub_811F818
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08124274: .4byte gUnknown_203B0A0
- thumb_func_end sub_8124258
-
- thumb_func_start sub_8124278
-sub_8124278: @ 8124278
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r4, _081242BC @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- movs r4, 0
- ldr r3, _081242C0 @ =gSelectedOrderFromParty
- ldr r6, _081242C4 @ =gUnknown_203B0A0
- adds r5, r6, 0
-_0812429E:
- adds r2, r4, r3
- ldrb r1, [r2]
- movs r0, 0x9
- ldrsb r0, [r5, r0]
- adds r0, 0x1
- cmp r1, r0
- bne _081242DC
- movs r1, 0
- strb r1, [r2]
- cmp r4, 0
- beq _081242C8
- cmp r4, 0x1
- beq _081242D4
- b _081242E6
- .align 2, 0
-_081242BC: .4byte gUnknown_203B09C
-_081242C0: .4byte gSelectedOrderFromParty
-_081242C4: .4byte gUnknown_203B0A0
-_081242C8:
- ldrb r0, [r3, 0x1]
- strb r0, [r3]
- ldrb r0, [r3, 0x2]
- strb r0, [r3, 0x1]
- strb r4, [r3, 0x2]
- b _081242E6
-_081242D4:
- ldrb r0, [r3, 0x2]
- strb r0, [r3, 0x1]
- strb r1, [r3, 0x2]
- b _081242E6
-_081242DC:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x2
- bls _0812429E
-_081242E6:
- ldr r5, _08124344 @ =gUnknown_203B0B4
- movs r0, 0x9
- ldrsb r0, [r6, r0]
- lsls r0, 4
- ldr r1, [r5]
- adds r1, r0
- movs r0, 0x1
- movs r2, 0x1
- bl sub_8121C70
- ldr r4, _08124348 @ =gSelectedOrderFromParty
- ldrb r0, [r4]
- cmp r0, 0
- beq _08124312
- lsls r0, 4
- subs r0, 0x10
- ldr r1, [r5]
- adds r1, r0
- movs r0, 0x2
- movs r2, 0x1
- bl sub_8121C70
-_08124312:
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- beq _08124328
- lsls r0, 4
- subs r0, 0x10
- ldr r1, [r5]
- adds r1, r0
- movs r0, 0x3
- movs r2, 0x1
- bl sub_8121C70
-_08124328:
- movs r0, 0
- bl sub_8121D0C
- ldr r0, _0812434C @ =gTasks
- lsls r1, r7, 2
- adds r1, r7
- lsls r1, 3
- adds r1, r0
- ldr r0, _08124350 @ =sub_811FB28
- str r0, [r1]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08124344: .4byte gUnknown_203B0B4
-_08124348: .4byte gSelectedOrderFromParty
-_0812434C: .4byte gTasks
-_08124350: .4byte sub_811FB28
- thumb_func_end sub_8124278
-
- thumb_func_start sub_8124354
-sub_8124354: @ 8124354
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- ldr r1, _0812437C @ =gSpecialVar_0x8004
- ldr r0, _08124380 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- strh r0, [r1]
- adds r0, r4, 0
- bl sub_811FA78
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812437C: .4byte gSpecialVar_0x8004
-_08124380: .4byte gUnknown_203B0A0
- thumb_func_end sub_8124354
-
- thumb_func_start sub_8124384
-sub_8124384: @ 8124384
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _08124410 @ =gUnknown_203B0A0
- mov r9, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r4, _08124414 @ =gPlayerParty
- adds r0, r4
- movs r1, 0x41
- bl GetMonData
- adds r6, r0, 0
- lsls r6, 16
- lsrs r6, 16
- mov r1, r9
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r4
- movs r1, 0xB
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- mov r1, r9
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r4
- movs r1, 0x50
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80F9800
- ldr r0, [r0]
- adds r1, r6, 0
- adds r2, r5, 0
- adds r3, r4, 0
- bl Trade_CanTradeSelectedMon
- cmp r0, 0x1
- beq _08124418
- cmp r0, 0x2
- beq _0812442C
- movs r0, 0x5
- bl PlaySE
- adds r0, r7, 0
- bl sub_811FA78
- b _0812446C
- .align 2, 0
-_08124410: .4byte gUnknown_203B0A0
-_08124414: .4byte gPlayerParty
-_08124418:
- ldr r0, _08124424 @ =gStringVar4
- ldr r1, _08124428 @ =gUnknown_84170BC
- bl StringExpandPlaceholders
- b _08124434
- .align 2, 0
-_08124424: .4byte gStringVar4
-_08124428: .4byte gUnknown_84170BC
-_0812442C:
- ldr r0, _08124478 @ =gStringVar4
- ldr r1, _0812447C @ =gUnknown_84170E0
- bl StringExpandPlaceholders
-_08124434:
- movs r0, 0x1A
- bl PlaySE
- ldr r4, _08124480 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r4, _08124478 @ =gStringVar4
- ldr r1, _08124484 @ =gUnknown_84169D9
- adds r0, r4, 0
- bl StringAppend
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _08124488 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _0812448C @ =sub_81203B8
- str r1, [r0]
-_0812446C:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08124478: .4byte gStringVar4
-_0812447C: .4byte gUnknown_84170E0
-_08124480: .4byte gUnknown_203B09C
-_08124484: .4byte gUnknown_84169D9
-_08124488: .4byte gTasks
-_0812448C: .4byte sub_81203B8
- thumb_func_end sub_8124384
-
- thumb_func_start brm_trade_1
-brm_trade_1: @ 8124490
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0xC
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _08124558 @ =gUnknown_203B0A0
- mov r8, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r6, 0x64
- muls r0, r6
- ldr r4, _0812455C @ =gPlayerParty
- adds r0, r4
- movs r1, 0x41
- bl GetMonData
- mov r9, r0
- mov r1, r9
- lsls r1, 16
- lsrs r1, 16
- mov r9, r1
- mov r1, r8
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- muls r0, r6
- adds r0, r4
- movs r1, 0xB
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- mov r1, r8
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- muls r0, r6
- adds r0, r4
- movs r1, 0x50
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_80F9800
- ldr r0, [r0]
- ldr r1, _08124560 @ =gUnknown_203B064
- ldr r1, [r1]
- ldr r2, _08124564 @ =gUnknown_203B068
- ldrh r3, [r2]
- ldr r2, _08124568 @ =gUnknown_203B06A
- ldrb r2, [r2]
- str r2, [sp]
- str r5, [sp, 0x4]
- str r4, [sp, 0x8]
- mov r2, r9
- bl sub_804FBEC
- cmp r0, 0
- beq _08124584
- ldr r5, _0812456C @ =gStringVar4
- ldr r1, _08124570 @ =gUnknown_845A7E8
- subs r0, 0x1
- lsls r0, 2
- adds r0, r1
- ldr r1, [r0]
- adds r0, r5, 0
- bl StringExpandPlaceholders
- movs r0, 0x1A
- bl PlaySE
- ldr r4, _08124574 @ =gUnknown_203B09C
- ldr r0, [r4]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r4]
- adds r0, 0xD
- bl sub_8121CE4
- ldr r1, _08124578 @ =gUnknown_84169D9
- adds r0, r5, 0
- bl StringAppend
- adds r0, r5, 0
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _0812457C @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _08124580 @ =sub_81203B8
- str r1, [r0]
- b _08124590
- .align 2, 0
-_08124558: .4byte gUnknown_203B0A0
-_0812455C: .4byte gPlayerParty
-_08124560: .4byte gUnknown_203B064
-_08124564: .4byte gUnknown_203B068
-_08124568: .4byte gUnknown_203B06A
-_0812456C: .4byte gStringVar4
-_08124570: .4byte gUnknown_845A7E8
-_08124574: .4byte gUnknown_203B09C
-_08124578: .4byte gUnknown_84169D9
-_0812457C: .4byte gTasks
-_08124580: .4byte sub_81203B8
-_08124584:
- movs r0, 0x5
- bl PlaySE
- adds r0, r7, 0
- bl sub_811FA78
-_08124590:
- add sp, 0xC
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end brm_trade_1
-
- thumb_func_start nullsub_93
-nullsub_93: @ 81245A0
- bx lr
- thumb_func_end nullsub_93
-
- thumb_func_start sub_81245A4
-sub_81245A4: @ 81245A4
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- bl Menu_GetCursorPos
- ldr r5, _08124610 @ =gUnknown_203B09C
- ldr r1, [r5]
- lsls r0, 24
- lsrs r0, 24
- adds r1, 0xF
- adds r1, r0
- ldrb r0, [r1]
- subs r0, 0x12
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r1, _08124614 @ =gUnknown_845A788
- lsls r0, r4, 3
- adds r7, r0, r1
- ldr r0, [r7]
- cmp r0, 0
- bne _081245D6
- b _081247B4
-_081245D6:
- ldr r0, [r5]
- adds r0, 0xC
- bl sub_8121CE4
- ldr r0, [r5]
- adds r0, 0xD
- bl sub_8121CE4
- bl MenuHelpers_LinkSomething
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081245FA
- bl InUnionRoom
- cmp r0, 0x1
- bne _0812461C
-_081245FA:
- adds r0, r4, 0
- subs r0, 0x9
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08124618
- movs r0, 0xD
- bl sub_8121D0C
- b _081247A6
- .align 2, 0
-_08124610: .4byte gUnknown_203B09C
-_08124614: .4byte gUnknown_845A788
-_08124618:
- ldrb r0, [r7, 0x4]
- b _081247A2
-_0812461C:
- cmp r4, 0x6
- bhi _08124658
- movs r1, 0x82
- lsls r1, 4
- adds r0, r4, r1
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08124658
- ldr r0, _0812464C @ =gUnknown_8416AE2
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _08124650 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08124654 @ =sub_81203B8
- str r1, [r0]
- b _081247B4
- .align 2, 0
-_0812464C: .4byte gUnknown_8416AE2
-_08124650: .4byte gTasks
-_08124654: .4byte sub_81203B8
-_08124658:
- ldr r1, _08124680 @ =gUnknown_845A788
- lsls r0, r4, 3
- adds r5, r0, r1
- ldr r0, [r5]
- bl _call_via_r0
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0812466E
- b _0812478C
-_0812466E:
- subs r0, r4, 0x2
- cmp r0, 0x8
- bhi _0812475C
- lsls r0, 2
- ldr r1, _08124684 @ =_08124688
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08124680: .4byte gUnknown_845A788
-_08124684: .4byte _08124688
- .align 2, 0
-_08124688:
- .4byte _0812474C
- .4byte _0812475C
- .4byte _0812475C
- .4byte _0812475C
- .4byte _0812475C
- .4byte _081246B4
- .4byte _081246F0
- .4byte _081246AC
- .4byte _081246AC
-_081246AC:
- adds r0, r6, 0
- bl sub_80E56DC
- b _081247B4
-_081246B4:
- ldr r0, _081246E0 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x1C
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x1D]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r1, r0, 0
- ldr r0, _081246E4 @ =gStringVar1
- ldrb r1, [r1, 0x14]
- bl sub_80C4DF8
- ldr r0, _081246E8 @ =gStringVar4
- ldr r1, _081246EC @ =gUnknown_8417640
- b _08124720
- .align 2, 0
-_081246E0: .4byte gSaveBlock1Ptr
-_081246E4: .4byte gStringVar1
-_081246E8: .4byte gStringVar4
-_081246EC: .4byte gUnknown_8417640
-_081246F0:
- ldr r0, _08124738 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- adds r0, r1, 0
- adds r0, 0x24
- ldrb r0, [r0]
- lsls r0, 24
- asrs r0, 24
- lsls r0, 16
- lsrs r0, 16
- adds r1, 0x25
- ldrb r1, [r1]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r1, r0, 0
- ldr r0, _0812473C @ =gStringVar1
- ldrb r1, [r1, 0x14]
- bl sub_80C4DF8
- ldr r0, _08124740 @ =gStringVar4
- ldr r1, _08124744 @ =gUnknown_8417615
-_08124720:
- bl StringExpandPlaceholders
- adds r0, r6, 0
- bl sub_81247C4
- ldr r0, _08124748 @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0x86
- lsls r1, 2
- adds r0, r1
- strh r4, [r0]
- b _081247B4
- .align 2, 0
-_08124738: .4byte gSaveBlock1Ptr
-_0812473C: .4byte gStringVar1
-_08124740: .4byte gStringVar4
-_08124744: .4byte gUnknown_8417615
-_08124748: .4byte gUnknown_203B09C
-_0812474C:
- ldr r1, _08124754 @ =gUnknown_203B0A0
- ldr r0, _08124758 @ =sub_80C4EF8
- str r0, [r1]
- b _08124778
- .align 2, 0
-_08124754: .4byte gUnknown_203B0A0
-_08124758: .4byte sub_80C4EF8
-_0812475C:
- ldr r1, _08124780 @ =gUnknown_203B0A0
- ldr r0, _08124784 @ =CB2_ReturnToField
- str r0, [r1]
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _08124788 @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- bl sub_8124BB0
-_08124778:
- adds r0, r6, 0
- bl sub_811FA78
- b _081247B4
- .align 2, 0
-_08124780: .4byte gUnknown_203B0A0
-_08124784: .4byte CB2_ReturnToField
-_08124788: .4byte gPlayerParty
-_0812478C:
- cmp r4, 0
- beq _0812479A
- cmp r4, 0x4
- bne _081247A0
- bl sub_8124A0C
- b _081247A6
-_0812479A:
- bl sub_8124954
- b _081247A6
-_081247A0:
- ldrb r0, [r5, 0x4]
-_081247A2:
- bl sub_8121D0C
-_081247A6:
- ldr r0, _081247BC @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _081247C0 @ =task_brm_cancel_1_on_keypad_a_or_b
- str r0, [r1]
-_081247B4:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081247BC: .4byte gTasks
-_081247C0: .4byte task_brm_cancel_1_on_keypad_a_or_b
- thumb_func_end sub_81245A4
-
- thumb_func_start sub_81247C4
-sub_81247C4: @ 81247C4
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _081247E8 @ =gStringVar4
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _081247EC @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _081247F0 @ =sub_81247F4
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081247E8: .4byte gStringVar4
-_081247EC: .4byte gTasks
-_081247F0: .4byte sub_81247F4
- thumb_func_end sub_81247C4
-
- thumb_func_start sub_81247F4
-sub_81247F4: @ 81247F4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08124818
- bl sub_812200C
- ldr r0, _08124820 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08124824 @ =sub_8124828
- str r0, [r1]
-_08124818:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08124820: .4byte gTasks
-_08124824: .4byte sub_8124828
- thumb_func_end sub_81247F4
-
- thumb_func_start sub_8124828
-sub_8124828: @ 8124828
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0812484E
- cmp r1, 0
- bgt _08124848
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0812488C
- b _081248A2
-_08124848:
- cmp r1, 0x1
- beq _08124892
- b _081248A2
-_0812484E:
- ldr r1, _0812487C @ =gUnknown_203B0A0
- ldr r0, _08124880 @ =CB2_ReturnToField
- str r0, [r1]
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _08124884 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08124888 @ =gUnknown_203B09C
- ldr r1, [r1]
- movs r2, 0x86
- lsls r2, 2
- adds r1, r2
- ldrb r1, [r1]
- bl sub_8124BB0
- adds r0, r4, 0
- bl sub_811FA78
- b _081248A2
- .align 2, 0
-_0812487C: .4byte gUnknown_203B0A0
-_08124880: .4byte CB2_ReturnToField
-_08124884: .4byte gPlayerParty
-_08124888: .4byte gUnknown_203B09C
-_0812488C:
- movs r0, 0x5
- bl PlaySE
-_08124892:
- ldr r0, _081248A8 @ =gFieldCallback2
- movs r1, 0
- str r1, [r0]
- ldr r0, _081248AC @ =gPostMenuFieldCallback
- str r1, [r0]
- adds r0, r4, 0
- bl sub_81203B8
-_081248A2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081248A8: .4byte gFieldCallback2
-_081248AC: .4byte gPostMenuFieldCallback
- thumb_func_end sub_8124828
-
- thumb_func_start FieldCallback_PrepareFadeInFromMenu
-FieldCallback_PrepareFadeInFromMenu: @ 81248B0
- push {lr}
- bl sub_807DC00
- ldr r0, _081248C4 @ =task_launch_hm_phase_2
- movs r1, 0x8
- bl CreateTask
- movs r0, 0x1
- pop {r1}
- bx r1
- .align 2, 0
-_081248C4: .4byte task_launch_hm_phase_2
- thumb_func_end FieldCallback_PrepareFadeInFromMenu
-
- thumb_func_start task_launch_hm_phase_2
-task_launch_hm_phase_2: @ 81248C8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl field_weather_is_fade_finished
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _081248F4
- bl brm_get_selected_species
- ldr r1, _081248FC @ =gFieldEffectArguments
- lsls r0, 16
- lsrs r0, 16
- str r0, [r1]
- ldr r0, _08124900 @ =gPostMenuFieldCallback
- ldr r0, [r0]
- bl _call_via_r0
- adds r0, r4, 0
- bl DestroyTask
-_081248F4:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081248FC: .4byte gFieldEffectArguments
-_08124900: .4byte gPostMenuFieldCallback
- thumb_func_end task_launch_hm_phase_2
-
- thumb_func_start brm_get_selected_species
-brm_get_selected_species: @ 8124904
- push {lr}
- ldr r0, _08124924 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08124928 @ =gPlayerParty
- adds r0, r1
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- pop {r1}
- bx r1
- .align 2, 0
-_08124924: .4byte gUnknown_203B0A0
-_08124928: .4byte gPlayerParty
- thumb_func_end brm_get_selected_species
-
- thumb_func_start task_brm_cancel_1_on_keypad_a_or_b
-task_brm_cancel_1_on_keypad_a_or_b: @ 812492C
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r0, _08124950 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08124946
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0812494C
-_08124946:
- adds r0, r2, 0
- bl brm_cancel_1
-_0812494C:
- pop {r0}
- bx r0
- .align 2, 0
-_08124950: .4byte gMain
- thumb_func_end task_brm_cancel_1_on_keypad_a_or_b
-
- thumb_func_start sub_8124954
-sub_8124954: @ 8124954
- push {lr}
- ldr r0, _0812496C @ =0x00000806
- bl FlagGet
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124970
- movs r0, 0xC
- bl sub_8121D0C
- b _08124976
- .align 2, 0
-_0812496C: .4byte 0x00000806
-_08124970:
- movs r0, 0xD
- bl sub_8121D0C
-_08124976:
- pop {r0}
- bx r0
- thumb_func_end sub_8124954
-
- thumb_func_start hm_surf_run_dp02scr
-hm_surf_run_dp02scr: @ 812497C
- push {lr}
- bl GetCursorSelectionMonId
- ldr r1, _08124994 @ =gFieldEffectArguments
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1]
- movs r0, 0x9
- bl FieldEffectStart
- pop {r0}
- bx r0
- .align 2, 0
-_08124994: .4byte gFieldEffectArguments
- thumb_func_end hm_surf_run_dp02scr
-
- thumb_func_start sub_8124998
-sub_8124998: @ 8124998
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsSemiDeepWater
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08124A00
- bl PartyHasMonWithSurf
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124A00
- bl IsPlayerFacingSurfableFishableWater
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124A00
- ldr r1, _081249F0 @ =gFieldCallback2
- ldr r0, _081249F4 @ =FieldCallback_PrepareFadeInFromMenu
- str r0, [r1]
- ldr r1, _081249F8 @ =gPostMenuFieldCallback
- ldr r0, _081249FC @ =hm_surf_run_dp02scr
- str r0, [r1]
- movs r0, 0x1
- b _08124A02
- .align 2, 0
-_081249F0: .4byte gFieldCallback2
-_081249F4: .4byte FieldCallback_PrepareFadeInFromMenu
-_081249F8: .4byte gPostMenuFieldCallback
-_081249FC: .4byte hm_surf_run_dp02scr
-_08124A00:
- movs r0, 0
-_08124A02:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8124998
-
- thumb_func_start sub_8124A0C
-sub_8124A0C: @ 8124A0C
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0x8
- bl TestPlayerAvatarFlags
- lsls r0, 24
- cmp r0, 0
- beq _08124A24
- movs r0, 0x9
- bl sub_8121D0C
- b _08124A82
-_08124A24:
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsSemiDeepWater
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124A56
- movs r0, 0xA
- bl sub_8121D0C
- b _08124A82
-_08124A56:
- ldr r0, _08124A78 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x4
- ldrsb r0, [r1, r0]
- cmp r0, 0x3
- bne _08124A7C
- ldrb r0, [r1, 0x5]
- subs r0, 0x23
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bhi _08124A7C
- movs r0, 0xB
- bl sub_8121D0C
- b _08124A82
- .align 2, 0
-_08124A78: .4byte gSaveBlock1Ptr
-_08124A7C:
- movs r0, 0x8
- bl sub_8121D0C
-_08124A82:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8124A0C
-
- thumb_func_start sub_8124A8C
-sub_8124A8C: @ 8124A8C
- push {lr}
- ldr r0, _08124AA4 @ =gMapHeader
- ldrb r0, [r0, 0x17]
- bl Overworld_MapTypeAllowsTeleportAndFly
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08124AA8
- movs r0, 0
- b _08124AAA
- .align 2, 0
-_08124AA4: .4byte gMapHeader
-_08124AA8:
- movs r0, 0x1
-_08124AAA:
- pop {r1}
- bx r1
- thumb_func_end sub_8124A8C
-
- thumb_func_start sub_8124AB0
-sub_8124AB0: @ 8124AB0
- push {lr}
- sub sp, 0xC
- movs r0, 0
- str r0, [sp]
- ldr r0, _08124AD4 @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _08124AD8 @ =CB2_ReturnToStartMenu
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0x1
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08124AD4: .4byte sub_811FB28
-_08124AD8: .4byte CB2_ReturnToStartMenu
- thumb_func_end sub_8124AB0
-
- thumb_func_start hm2_waterfall
-hm2_waterfall: @ 8124ADC
- push {lr}
- bl GetCursorSelectionMonId
- ldr r1, _08124AF4 @ =gFieldEffectArguments
- lsls r0, 24
- lsrs r0, 24
- str r0, [r1]
- movs r0, 0x2B
- bl FieldEffectStart
- pop {r0}
- bx r0
- .align 2, 0
-_08124AF4: .4byte gFieldEffectArguments
- thumb_func_end hm2_waterfall
-
- thumb_func_start hm_prepare_waterfall
-hm_prepare_waterfall: @ 8124AF8
- push {r4,lr}
- sub sp, 0x4
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl GetXYCoordsOneStepInFrontOfPlayer
- mov r0, sp
- movs r1, 0
- ldrsh r0, [r0, r1]
- movs r2, 0
- ldrsh r1, [r4, r2]
- bl MapGridGetMetatileBehaviorAt
- lsls r0, 24
- lsrs r0, 24
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124B54
- bl IsPlayerSurfingNorth
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124B54
- ldr r1, _08124B44 @ =gFieldCallback2
- ldr r0, _08124B48 @ =FieldCallback_PrepareFadeInFromMenu
- str r0, [r1]
- ldr r1, _08124B4C @ =gPostMenuFieldCallback
- ldr r0, _08124B50 @ =hm2_waterfall
- str r0, [r1]
- movs r0, 0x1
- b _08124B56
- .align 2, 0
-_08124B44: .4byte gFieldCallback2
-_08124B48: .4byte FieldCallback_PrepareFadeInFromMenu
-_08124B4C: .4byte gPostMenuFieldCallback
-_08124B50: .4byte hm2_waterfall
-_08124B54:
- movs r0, 0
-_08124B56:
- add sp, 0x4
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end hm_prepare_waterfall
-
- thumb_func_start sub_8124B60
-sub_8124B60: @ 8124B60
- push {r4-r7,lr}
- adds r6, r0, 0
- adds r4, r1, 0
- adds r5, r2, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- movs r0, 0x8
- bl Alloc
- adds r7, r0, 0
- adds r0, r6, 0
- movs r1, 0x41
- bl GetMonData
- strh r0, [r7, 0x4]
- strh r4, [r7]
- strh r5, [r7, 0x2]
- ldr r0, _08124B98 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x6
- bne _08124B9C
- movs r0, 0xA
- adds r1, r7, 0
- bl sub_8113550
- b _08124BA4
- .align 2, 0
-_08124B98: .4byte gUnknown_203B0A0
-_08124B9C:
- movs r0, 0x9
- adds r1, r7, 0
- bl sub_8113550
-_08124BA4:
- adds r0, r7, 0
- bl Free
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8124B60
-
- thumb_func_start sub_8124BB0
-sub_8124BB0: @ 8124BB0
- push {r4-r6,lr}
- adds r5, r0, 0
- lsls r4, r1, 24
- lsrs r4, 24
- movs r0, 0x4
- bl Alloc
- adds r6, r0, 0
- adds r0, r5, 0
- movs r1, 0x41
- bl GetMonData
- strh r0, [r6]
- strb r4, [r6, 0x2]
- ldrb r0, [r6, 0x2]
- cmp r0, 0x7
- beq _08124BDA
- cmp r0, 0x8
- beq _08124BFC
- movs r0, 0xFF
- b _08124C00
-_08124BDA:
- ldr r0, _08124BF8 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- movs r0, 0x1C
- ldrsb r0, [r1, r0]
- lsls r0, 16
- lsrs r0, 16
- ldrb r1, [r1, 0x1D]
- lsls r1, 24
- asrs r1, 24
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- b _08124BFE
- .align 2, 0
-_08124BF8: .4byte gSaveBlock1Ptr
-_08124BFC:
- ldr r0, _08124C18 @ =gMapHeader
-_08124BFE:
- ldrb r0, [r0, 0x14]
-_08124C00:
- strb r0, [r6, 0x3]
- movs r0, 0x24
- adds r1, r6, 0
- bl sub_8113550
- adds r0, r6, 0
- bl Free
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08124C18: .4byte gMapHeader
- thumb_func_end sub_8124BB0
-
- thumb_func_start sub_8124C1C
-sub_8124C1C: @ 8124C1C
- push {r4,r5,lr}
- adds r5, r0, 0
- movs r0, 0x8
- bl Alloc
- adds r4, r0, 0
- ldrb r0, [r5]
- strb r0, [r4]
- ldrb r0, [r5, 0x1]
- strb r0, [r4, 0x1]
- movs r0, 0
- ldrsb r0, [r4, r0]
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x1
- ldrsb r1, [r4, r1]
- lsls r1, 16
- lsrs r1, 16
- bl get_mapheader_by_bank_and_number
- adds r5, r0, 0
- adds r0, r4, 0
- bl Free
- movs r0, 0x4
- bl Alloc
- adds r4, r0, 0
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0x64
- muls r0, r1
- ldr r1, _08124C88 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x41
- bl GetMonData
- strh r0, [r4]
- movs r0, 0x2
- strb r0, [r4, 0x2]
- ldrb r0, [r5, 0x14]
- strb r0, [r4, 0x3]
- movs r0, 0x24
- adds r1, r4, 0
- bl sub_8113550
- adds r0, r4, 0
- bl Free
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08124C88: .4byte gPlayerParty
- thumb_func_end sub_8124C1C
-
- thumb_func_start sub_8124C8C
-sub_8124C8C: @ 8124C8C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- ldr r6, _08124CB4 @ =sub_8124D90
- ldr r0, _08124CB8 @ =gMain
- ldr r1, _08124CBC @ =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08124CCC
- movs r0, 0x1
- mov r8, r0
- bl sub_81278B4
- lsls r0, 24
- lsrs r7, r0, 24
- b _08124CD2
- .align 2, 0
-_08124CB4: .4byte sub_8124D90
-_08124CB8: .4byte gMain
-_08124CBC: .4byte 0x00000439
-_08124CC0:
- ldr r0, _08124CC8 @ =gUnknown_203B0A0
- strb r5, [r0, 0x9]
- b _08124D16
- .align 2, 0
-_08124CC8: .4byte gUnknown_203B0A0
-_08124CCC:
- movs r1, 0
- mov r8, r1
- movs r7, 0
-_08124CD2:
- ldr r4, _08124D30 @ =gSpecialVar_ItemId
- ldrh r0, [r4]
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA
- bne _08124D44
- ldr r1, _08124D34 @ =gUnknown_203B0A0
- movs r0, 0
- strb r0, [r1, 0x9]
- movs r5, 0
-_08124CEA:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _08124D38 @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08124D0C
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08124CC0
-_08124D0C:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x5
- bls _08124CEA
-_08124D16:
- ldr r0, _08124D30 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl GetPocketByItemId
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x5
- bne _08124D28
- ldr r6, _08124D3C @ =sub_8124DB0
-_08124D28:
- ldr r1, _08124D40 @ =sub_8124FC8
- movs r0, 0x7F
- b _08124D6A
- .align 2, 0
-_08124D30: .4byte gSpecialVar_ItemId
-_08124D34: .4byte gUnknown_203B0A0
-_08124D38: .4byte gPlayerParty
-_08124D3C: .4byte sub_8124DB0
-_08124D40: .4byte sub_8124FC8
-_08124D44:
- ldrh r0, [r4]
- bl GetPocketByItemId
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- beq _08124D5A
- cmp r0, 0x5
- beq _08124D64
- movs r0, 0x5
- b _08124D68
-_08124D5A:
- movs r0, 0x4
- ldr r6, _08124D60 @ =sub_8124DA0
- b _08124D68
- .align 2, 0
-_08124D60: .4byte sub_8124DA0
-_08124D64:
- movs r0, 0x5
- ldr r6, _08124D88 @ =sub_8124DB0
-_08124D68:
- ldr r1, _08124D8C @ =sub_811FB28
-_08124D6A:
- str r0, [sp]
- str r1, [sp, 0x4]
- str r6, [sp, 0x8]
- mov r0, r8
- adds r1, r7, 0
- movs r2, 0x3
- movs r3, 0x1
- bl PartyMenuInit
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08124D88: .4byte sub_8124DB0
-_08124D8C: .4byte sub_811FB28
- thumb_func_end sub_8124C8C
-
- thumb_func_start sub_8124D90
-sub_8124D90: @ 8124D90
- push {lr}
- movs r0, 0xB
- movs r1, 0x3
- movs r2, 0
- bl sub_8107DB4
- pop {r0}
- bx r0
- thumb_func_end sub_8124D90
-
- thumb_func_start sub_8124DA0
-sub_8124DA0: @ 8124DA0
- push {lr}
- movs r0, 0x5
- movs r1, 0
- movs r2, 0xFF
- bl InitTMCase
- pop {r0}
- bx r0
- thumb_func_end sub_8124DA0
-
- thumb_func_start sub_8124DB0
-sub_8124DB0: @ 8124DB0
- push {lr}
- movs r0, 0x6
- movs r1, 0
- movs r2, 0xFF
- bl InitBerryPouch
- pop {r0}
- bx r0
- thumb_func_end sub_8124DB0
-
- thumb_func_start sub_8124DC0
-sub_8124DC0: @ 8124DC0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08124DD8 @ =gUnknown_203B09C
- ldr r2, [r1]
- ldr r1, _08124DDC @ =sub_8124DE0
- str r1, [r2, 0x4]
- bl sub_811FA78
- pop {r0}
- bx r0
- .align 2, 0
-_08124DD8: .4byte gUnknown_203B09C
-_08124DDC: .4byte sub_8124DE0
- thumb_func_end sub_8124DC0
-
- thumb_func_start sub_8124DE0
-sub_8124DE0: @ 8124DE0
- push {r4,lr}
- ldr r4, _08124E0C @ =gSpecialVar_ItemId
- ldrh r0, [r4]
- bl GetItemCompatibilityRule
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _08124E2C
- bl sub_8126C24
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08124E18
- ldr r0, _08124E10 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- ldrh r1, [r4]
- ldr r2, _08124E14 @ =sub_8126BD4
- bl sub_811C540
- b _08124E38
- .align 2, 0
-_08124E0C: .4byte gSpecialVar_ItemId
-_08124E10: .4byte gUnknown_203B0A0
-_08124E14: .4byte sub_8126BD4
-_08124E18:
- ldr r2, _08124E28 @ =gUnknown_203B0A0
- ldrb r0, [r2, 0x9]
- ldrh r1, [r4]
- ldr r2, [r2]
- bl sub_811C5AC
- b _08124E38
- .align 2, 0
-_08124E28: .4byte gUnknown_203B0A0
-_08124E2C:
- ldr r0, _08124E40 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- ldrh r1, [r4]
- ldr r2, _08124E44 @ =sub_8124E48
- bl sub_811C540
-_08124E38:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08124E40: .4byte gUnknown_203B0A0
-_08124E44: .4byte sub_8124E48
- thumb_func_end sub_8124DE0
-
- thumb_func_start sub_8124E48
-sub_8124E48: @ 8124E48
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- ldr r7, _08124EBC @ =gSpecialVar_ItemId
- ldrh r0, [r7]
- bl ItemId_GetPocket
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- bne _08124EC8
- bl sub_811D178
- cmp r0, 0x1
- bne _08124EC8
- ldr r0, _08124EC0 @ =gUnknown_203B0A0
- mov r8, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r6, 0x64
- adds r4, r0, 0
- muls r4, r6
- ldr r5, _08124EC4 @ =gPlayerParty
- adds r4, r5
- ldrh r0, [r7]
- bl ItemIdToBattleMoveId
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r4, 0
- bl GiveMoveToMon
- mov r1, r8
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- muls r0, r6
- adds r0, r5
- movs r1, 0x4
- bl AdjustFriendship
- ldrh r1, [r7]
- movs r0, 0xA9
- lsls r0, 1
- cmp r1, r0
- bhi _08124EB0
- adds r0, r1, 0
- movs r1, 0x1
- bl RemoveBagItem
-_08124EB0:
- mov r1, r8
- ldr r0, [r1]
- bl SetMainCallback2
- b _08124EE6
- .align 2, 0
-_08124EBC: .4byte gSpecialVar_ItemId
-_08124EC0: .4byte gUnknown_203B0A0
-_08124EC4: .4byte gPlayerParty
-_08124EC8:
- ldr r2, _08124EF4 @ =gUnknown_203B0A0
- ldrb r0, [r2, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r3, [r2, 0x9]
- movs r1, 0x7F
- str r1, [sp]
- ldr r1, _08124EF8 @ =sub_8124FC8
- str r1, [sp, 0x4]
- ldr r1, [r2]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r2, 0
- bl PartyMenuInit
-_08124EE6:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08124EF4: .4byte gUnknown_203B0A0
-_08124EF8: .4byte sub_8124FC8
- thumb_func_end sub_8124E48
-
- thumb_func_start sub_8124EFC
-sub_8124EFC: @ 8124EFC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0xC
- bl sub_811D178
- cmp r0, 0x1
- bne _08124F94
- ldr r0, _08124F88 @ =gUnknown_203B0A0
- mov r8, r0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- adds r5, r1, 0
- muls r5, r0
- ldr r0, _08124F8C @ =gPlayerParty
- adds r5, r0
- bl GetMoveSlotToReplace
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r1, r4, 0
- adds r1, 0xD
- adds r0, r5, 0
- bl GetMonData
- adds r6, r0, 0
- lsls r6, 16
- lsrs r6, 16
- adds r0, r5, 0
- adds r1, r4, 0
- bl RemoveMonPPBonus
- ldr r7, _08124F90 @ =gSpecialVar_ItemId
- ldrh r0, [r7]
- bl ItemIdToBattleMoveId
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- adds r0, r5, 0
- adds r2, r4, 0
- bl SetMonMoveSlot
- adds r0, r5, 0
- movs r1, 0x4
- bl AdjustFriendship
- ldrh r2, [r7]
- movs r0, 0x4
- adds r1, r5, 0
- adds r3, r6, 0
- bl ItemUse_SetQuestLogEvent
- ldrh r1, [r7]
- movs r0, 0xA9
- lsls r0, 1
- cmp r1, r0
- bhi _08124F7C
- adds r0, r1, 0
- movs r1, 0x1
- bl RemoveBagItem
-_08124F7C:
- mov r1, r8
- ldr r0, [r1]
- bl SetMainCallback2
- b _08124FB2
- .align 2, 0
-_08124F88: .4byte gUnknown_203B0A0
-_08124F8C: .4byte gPlayerParty
-_08124F90: .4byte gSpecialVar_ItemId
-_08124F94:
- ldr r4, _08124FC0 @ =gUnknown_203B0A0
- ldrb r0, [r4, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r4, 0xB]
- ldrb r3, [r4, 0x9]
- movs r1, 0x7F
- str r1, [sp]
- ldr r1, _08124FC4 @ =sub_8124FC8
- str r1, [sp, 0x4]
- ldr r1, [r4]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- bl PartyMenuInit
-_08124FB2:
- add sp, 0xC
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08124FC0: .4byte gUnknown_203B0A0
-_08124FC4: .4byte sub_8124FC8
- thumb_func_end sub_8124EFC
-
- thumb_func_start sub_8124FC8
-sub_8124FC8: @ 8124FC8
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- ldr r0, _08125000 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08124FFA
- ldr r0, _08125004 @ =gUnknown_203B0A0
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _08124FEE
- ldr r0, _08125008 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _0812500C @ =sub_8128184
- str r0, [r1, 0x4]
-_08124FEE:
- ldr r0, _08125010 @ =gUnknown_3005E98
- ldr r1, _08125014 @ =sub_81255BC
- ldr r2, [r0]
- adds r0, r3, 0
- bl _call_via_r2
-_08124FFA:
- pop {r0}
- bx r0
- .align 2, 0
-_08125000: .4byte gPaletteFade
-_08125004: .4byte gUnknown_203B0A0
-_08125008: .4byte gUnknown_203B09C
-_0812500C: .4byte sub_8128184
-_08125010: .4byte gUnknown_3005E98
-_08125014: .4byte sub_81255BC
- thumb_func_end sub_8124FC8
-
- thumb_func_start IsHPRecoveryItem
-IsHPRecoveryItem: @ 8125018
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0xAF
- bne _08125034
- ldr r0, _0812502C @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _08125030 @ =0x00003108
- adds r0, r1
- b _0812503E
- .align 2, 0
-_0812502C: .4byte gSaveBlock1Ptr
-_08125030: .4byte 0x00003108
-_08125034:
- ldr r1, _0812504C @ =gItemEffectTable
- subs r0, 0xD
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
-_0812503E:
- ldrb r1, [r0, 0x4]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- bne _08125050
- movs r0, 0
- b _08125052
- .align 2, 0
-_0812504C: .4byte gItemEffectTable
-_08125050:
- movs r0, 0x1
-_08125052:
- pop {r1}
- bx r1
- thumb_func_end IsHPRecoveryItem
-
- thumb_func_start GetMedicineItemEffectMessage
-GetMedicineItemEffectMessage: @ 8125058
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x3
- cmp r0, 0x12
- bls _0812506E
- b _08125204
-_0812506E:
- lsls r0, 2
- ldr r1, _08125078 @ =_0812507C
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08125078: .4byte _0812507C
- .align 2, 0
-_0812507C:
- .4byte _081250C8
- .4byte _081250DC
- .4byte _081250F0
- .4byte _08125104
- .4byte _08125118
- .4byte _0812512C
- .4byte _08125140
- .4byte _08125204
- .4byte _08125154
- .4byte _08125178
- .4byte _08125168
- .4byte _081251A8
- .4byte _081251B8
- .4byte _08125198
- .4byte _08125188
- .4byte _08125204
- .4byte _081251DC
- .4byte _081251DC
- .4byte _081251F0
-_081250C8:
- ldr r0, _081250D4 @ =gStringVar4
- ldr r1, _081250D8 @ =gUnknown_8416F4E
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_081250D4: .4byte gStringVar4
-_081250D8: .4byte gUnknown_8416F4E
-_081250DC:
- ldr r0, _081250E8 @ =gStringVar4
- ldr r1, _081250EC @ =gUnknown_8416F8C
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_081250E8: .4byte gStringVar4
-_081250EC: .4byte gUnknown_8416F8C
-_081250F0:
- ldr r0, _081250FC @ =gStringVar4
- ldr r1, _08125100 @ =gUnknown_8416F9A
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_081250FC: .4byte gStringVar4
-_08125100: .4byte gUnknown_8416F9A
-_08125104:
- ldr r0, _08125110 @ =gStringVar4
- ldr r1, _08125114 @ =gUnknown_8416FB2
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_08125110: .4byte gStringVar4
-_08125114: .4byte gUnknown_8416FB2
-_08125118:
- ldr r0, _08125124 @ =gStringVar4
- ldr r1, _08125128 @ =gUnknown_8416F6F
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_08125124: .4byte gStringVar4
-_08125128: .4byte gUnknown_8416F6F
-_0812512C:
- ldr r0, _08125138 @ =gStringVar4
- ldr r1, _0812513C @ =gUnknown_8417052
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_08125138: .4byte gStringVar4
-_0812513C: .4byte gUnknown_8417052
-_08125140:
- ldr r0, _0812514C @ =gStringVar4
- ldr r1, _08125150 @ =gUnknown_8417075
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_0812514C: .4byte gStringVar4
-_08125150: .4byte gUnknown_8417075
-_08125154:
- ldr r0, _08125160 @ =gStringVar4
- ldr r1, _08125164 @ =gUnknown_8416FED
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_08125160: .4byte gStringVar4
-_08125164: .4byte gUnknown_8416FED
-_08125168:
- ldr r0, _08125170 @ =gStringVar2
- ldr r1, _08125174 @ =gUnknown_84169C2
- b _081251BC
- .align 2, 0
-_08125170: .4byte gStringVar2
-_08125174: .4byte gUnknown_84169C2
-_08125178:
- ldr r0, _08125180 @ =gStringVar2
- ldr r1, _08125184 @ =gUnknown_8417674
- b _081251BC
- .align 2, 0
-_08125180: .4byte gStringVar2
-_08125184: .4byte gUnknown_8417674
-_08125188:
- ldr r0, _08125190 @ =gStringVar2
- ldr r1, _08125194 @ =gUnknown_841767B
- b _081251BC
- .align 2, 0
-_08125190: .4byte gStringVar2
-_08125194: .4byte gUnknown_841767B
-_08125198:
- ldr r0, _081251A0 @ =gStringVar2
- ldr r1, _081251A4 @ =gUnknown_841768D
- b _081251BC
- .align 2, 0
-_081251A0: .4byte gStringVar2
-_081251A4: .4byte gUnknown_841768D
-_081251A8:
- ldr r0, _081251B0 @ =gStringVar2
- ldr r1, _081251B4 @ =gUnknown_84169C5
- b _081251BC
- .align 2, 0
-_081251B0: .4byte gStringVar2
-_081251B4: .4byte gUnknown_84169C5
-_081251B8:
- ldr r0, _081251CC @ =gStringVar2
- ldr r1, _081251D0 @ =gUnknown_84169CD
-_081251BC:
- bl StringCopy
- ldr r0, _081251D4 @ =gStringVar4
- ldr r1, _081251D8 @ =gUnknown_8417032
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_081251CC: .4byte gStringVar2
-_081251D0: .4byte gUnknown_84169CD
-_081251D4: .4byte gStringVar4
-_081251D8: .4byte gUnknown_8417032
-_081251DC:
- ldr r0, _081251E8 @ =gStringVar4
- ldr r1, _081251EC @ =gUnknown_8417002
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_081251E8: .4byte gStringVar4
-_081251EC: .4byte gUnknown_8417002
-_081251F0:
- ldr r0, _081251FC @ =gStringVar4
- ldr r1, _08125200 @ =gUnknown_8416FC7
- bl StringExpandPlaceholders
- b _0812520C
- .align 2, 0
-_081251FC: .4byte gStringVar4
-_08125200: .4byte gUnknown_8416FC7
-_08125204:
- ldr r0, _08125210 @ =gStringVar4
- ldr r1, _08125214 @ =gUnknown_84169DC
- bl StringExpandPlaceholders
-_0812520C:
- pop {r0}
- bx r0
- .align 2, 0
-_08125210: .4byte gStringVar4
-_08125214: .4byte gUnknown_84169DC
- thumb_func_end GetMedicineItemEffectMessage
-
- thumb_func_start UsingHPEVItemOnShedinja
-UsingHPEVItemOnShedinja: @ 8125218
- push {r4,lr}
- adds r4, r0, 0
- lsls r0, r1, 16
- lsrs r0, 16
- bl GetItemEffectType
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD
- bne _08125244
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- ldr r1, _08125240 @ =0x0000012f
- cmp r0, r1
- bne _08125244
- movs r0, 0
- b _08125246
- .align 2, 0
-_08125240: .4byte 0x0000012f
-_08125244:
- movs r0, 0x1
-_08125246:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end UsingHPEVItemOnShedinja
-
- thumb_func_start IsBlueYellowRedFlute
-IsBlueYellowRedFlute: @ 812524C
- push {lr}
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x27
- beq _0812525E
- cmp r0, 0x29
- beq _0812525E
- cmp r0, 0x28
- bne _08125262
-_0812525E:
- movs r0, 0x1
- b _08125264
-_08125262:
- movs r0, 0
-_08125264:
- pop {r1}
- bx r1
- thumb_func_end IsBlueYellowRedFlute
-
- thumb_func_start ExecuteTableBasedItemEffect__
-ExecuteTableBasedItemEffect__: @ 8125268
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r1, 16
- lsrs r5, r1, 16
- lsls r2, 24
- lsrs r6, r2, 24
- ldr r0, _08125294 @ =gMain
- ldr r1, _08125298 @ =0x00000439
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- bne _081252A0
- movs r0, 0x64
- muls r0, r3
- ldr r1, _0812529C @ =gPlayerParty
- adds r0, r1
- adds r1, r5, 0
- adds r2, r3, 0
- b _081252BA
- .align 2, 0
-_08125294: .4byte gMain
-_08125298: .4byte 0x00000439
-_0812529C: .4byte gPlayerParty
-_081252A0:
- movs r0, 0x64
- adds r4, r3, 0
- muls r4, r0
- ldr r0, _081252CC @ =gPlayerParty
- adds r4, r0
- adds r0, r3, 0
- bl sub_8127F7C
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r5, 0
-_081252BA:
- adds r3, r6, 0
- bl ExecuteTableBasedItemEffect
- lsls r0, 24
- lsrs r0, 24
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_081252CC: .4byte gPlayerParty
- thumb_func_end ExecuteTableBasedItemEffect__
-
- thumb_func_start sub_81252D0
-sub_81252D0: @ 81252D0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r1
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _08125300 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08125304 @ =gPlayerParty
- adds r5, r1, r0
- ldr r0, _08125308 @ =gSpecialVar_ItemId
- ldrh r6, [r0]
- adds r0, r5, 0
- adds r1, r6, 0
- bl UsingHPEVItemOnShedinja
- lsls r0, 24
- cmp r0, 0
- bne _0812530C
- movs r4, 0x1
- b _08125342
- .align 2, 0
-_08125300: .4byte gUnknown_203B0A0
-_08125304: .4byte gPlayerParty
-_08125308: .4byte gSpecialVar_ItemId
-_0812530C:
- adds r0, r6, 0
- bl IsHPRecoveryItem
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08125330
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- adds r0, r5, 0
- movs r1, 0x3A
- bl GetMonData
-_08125330:
- ldr r0, _08125370 @ =gUnknown_203B0A0
- ldrb r2, [r0, 0x9]
- adds r0, r5, 0
- adds r1, r6, 0
- movs r3, 0
- bl PokemonUseItemEffects2
- lsls r0, 24
- lsrs r4, r0, 24
-_08125342:
- movs r0, 0x5
- bl PlaySE
- cmp r4, 0
- beq _08125380
- ldr r1, _08125374 @ =gUnknown_203B0C0
- movs r0, 0
- strb r0, [r1]
- ldr r0, _08125378 @ =gUnknown_84169DC
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _0812537C @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- mov r1, r8
- str r1, [r0]
- b _08125398
- .align 2, 0
-_08125370: .4byte gUnknown_203B0A0
-_08125374: .4byte gUnknown_203B0C0
-_08125378: .4byte gUnknown_84169DC
-_0812537C: .4byte gTasks
-_08125380:
- ldr r3, _081253A4 @ =0x0000ffff
- movs r0, 0x4
- adds r1, r5, 0
- adds r2, r6, 0
- bl ItemUse_SetQuestLogEvent
- adds r0, r7, 0
- bl sub_8124DC0
- ldr r1, _081253A8 @ =gUnknown_3005E98
- ldr r0, _081253AC @ =ItemUseCB_Medicine
- str r0, [r1]
-_08125398:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081253A4: .4byte 0x0000ffff
-_081253A8: .4byte gUnknown_3005E98
-_081253AC: .4byte ItemUseCB_Medicine
- thumb_func_end sub_81252D0
-
- thumb_func_start ItemUseCB_Medicine
-ItemUseCB_Medicine: @ 81253B0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- str r1, [sp, 0x4]
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r0, 0
- mov r10, r0
- ldr r0, _08125438 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _0812543C @ =gPlayerParty
- adds r5, r1, r0
- ldr r0, _08125440 @ =gSpecialVar_ItemId
- ldrh r6, [r0]
- adds r0, r5, 0
- adds r1, r6, 0
- bl UsingHPEVItemOnShedinja
- lsls r0, 24
- cmp r0, 0
- beq _08125428
- adds r0, r6, 0
- bl IsHPRecoveryItem
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- cmp r0, 0x1
- bne _08125416
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r10, r0
- adds r0, r5, 0
- movs r1, 0x3A
- bl GetMonData
- cmp r10, r0
- bne _08125416
- movs r1, 0
- mov r8, r1
-_08125416:
- ldr r4, _08125438 @ =gUnknown_203B0A0
- ldrb r0, [r4, 0x9]
- adds r1, r6, 0
- movs r2, 0
- bl ExecuteTableBasedItemEffect__
- lsls r0, 24
- cmp r0, 0
- beq _0812544C
-_08125428:
- ldr r1, _08125444 @ =gUnknown_203B0C0
- movs r0, 0
- strb r0, [r1]
- movs r0, 0x5
- bl PlaySE
- ldr r0, _08125448 @ =gUnknown_84169DC
- b _0812551C
- .align 2, 0
-_08125438: .4byte gUnknown_203B0A0
-_0812543C: .4byte gPlayerParty
-_08125440: .4byte gSpecialVar_ItemId
-_08125444: .4byte gUnknown_203B0C0
-_08125448: .4byte gUnknown_84169DC
-_0812544C:
- ldr r1, _08125474 @ =gUnknown_203B0C0
- movs r0, 0x1
- strb r0, [r1]
- adds r0, r6, 0
- bl IsBlueYellowRedFlute
- lsls r0, 24
- cmp r0, 0
- bne _08125478
- movs r0, 0x1
- bl PlaySE
- ldrb r0, [r4, 0xB]
- cmp r0, 0xE
- beq _0812547E
- adds r0, r6, 0
- movs r1, 0x1
- bl RemoveBagItem
- b _0812547E
- .align 2, 0
-_08125474: .4byte gUnknown_203B0C0
-_08125478:
- movs r0, 0x6E
- bl PlaySE
-_0812547E:
- ldr r4, _081254FC @ =gUnknown_203B0B4
- ldr r7, _08125500 @ =gUnknown_203B0A0
- movs r0, 0x9
- ldrsb r0, [r7, r0]
- lsls r0, 4
- ldr r1, [r4]
- adds r1, r0
- adds r0, r5, 0
- bl party_menu_get_status_condition_and_update_object
- ldr r2, _08125504 @ =gSprites
- movs r0, 0x9
- ldrsb r0, [r7, r0]
- ldr r1, [r4]
- lsls r0, 4
- adds r3, r0, r1
- ldrb r1, [r3, 0xC]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _081254BC
- adds r0, r5, 0
- adds r1, r3, 0
- movs r2, 0x1
- bl sub_8121790
-_081254BC:
- mov r2, r8
- cmp r2, 0x1
- bne _0812550C
- mov r0, r10
- cmp r0, 0
- bne _081254D0
- ldrb r0, [r7, 0x9]
- movs r1, 0x1
- bl sub_811F818
-_081254D0:
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- adds r3, r0, 0
- mov r1, r10
- subs r3, r1
- lsls r3, 16
- asrs r3, 16
- ldrb r1, [r7, 0x9]
- ldr r0, _08125508 @ =sub_8125554
- str r0, [sp]
- mov r0, r9
- movs r2, 0x1
- bl sub_8120760
- mov r0, r9
- movs r1, 0
- mov r2, r10
- bl sub_81207F0
- b _08125538
- .align 2, 0
-_081254FC: .4byte gUnknown_203B0B4
-_08125500: .4byte gUnknown_203B0A0
-_08125504: .4byte gSprites
-_08125508: .4byte sub_8125554
-_0812550C:
- ldr r1, _08125548 @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- adds r0, r6, 0
- bl GetMedicineItemEffectMessage
- ldr r0, _0812554C @ =gStringVar4
-_0812551C:
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08125550 @ =gTasks
- mov r2, r9
- lsls r0, r2, 2
- add r0, r9
- lsls r0, 3
- adds r0, r1
- ldr r1, [sp, 0x4]
- str r1, [r0]
-_08125538:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08125548: .4byte gStringVar1
-_0812554C: .4byte gStringVar4
-_08125550: .4byte gTasks
- thumb_func_end ItemUseCB_Medicine
-
- thumb_func_start sub_8125554
-sub_8125554: @ 8125554
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _081255A0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _081255A4 @ =gPlayerParty
- adds r0, r1
- ldr r1, _081255A8 @ =gStringVar1
- bl GetMonNickname
- ldr r4, _081255AC @ =gStringVar4
- ldr r1, _081255B0 @ =gUnknown_8416F27
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- bl HandleBattleLowHpMusicChange
- ldr r1, _081255B4 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _081255B8 @ =sub_81255BC
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081255A0: .4byte gUnknown_203B0A0
-_081255A4: .4byte gPlayerParty
-_081255A8: .4byte gStringVar1
-_081255AC: .4byte gStringVar4
-_081255B0: .4byte gUnknown_8416F27
-_081255B4: .4byte gTasks
-_081255B8: .4byte sub_81255BC
- thumb_func_end sub_8125554
-
- thumb_func_start sub_81255BC
-sub_81255BC: @ 81255BC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081255E2
- ldr r0, _081255E8 @ =gUnknown_203B0C0
- ldrb r1, [r0]
- cmp r1, 0
- bne _081255DC
- ldr r0, _081255EC @ =gUnknown_203B09C
- ldr r0, [r0]
- str r1, [r0, 0x4]
-_081255DC:
- adds r0, r4, 0
- bl sub_811FA78
-_081255E2:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081255E8: .4byte gUnknown_203B0C0
-_081255EC: .4byte gUnknown_203B09C
- thumb_func_end sub_81255BC
-
- thumb_func_start sub_81255F0
-sub_81255F0: @ 81255F0
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x10
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- mov r10, r0
- movs r1, 0x2
- mov r8, r1
- movs r0, 0x3
- bl sub_8121E5C
- lsls r0, 24
- lsrs r0, 24
- mov r9, r0
- movs r6, 0
- movs r0, 0x64
- adds r2, r4, 0
- muls r2, r0
- str r2, [sp, 0xC]
-_08125620:
- ldr r0, _081256B8 @ =gPlayerParty
- adds r1, r6, 0
- adds r1, 0xD
- ldr r2, [sp, 0xC]
- adds r0, r2, r0
- bl GetMonData
- adds r5, r0, 0
- lsls r5, 16
- lsrs r5, 16
- mov r0, r8
- movs r1, 0
- bl GetFontAttribute
- adds r4, r0, 0
- mov r0, r8
- movs r1, 0x2
- bl GetFontAttribute
- adds r4, r0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0xD
- adds r2, r5, 0
- muls r2, r0
- ldr r0, _081256BC @ =gMoveNames
- adds r2, r0
- lsls r0, r6, 4
- adds r0, 0x2
- lsls r0, 24
- lsrs r0, 24
- str r0, [sp]
- movs r0, 0xFF
- str r0, [sp, 0x4]
- movs r7, 0
- str r7, [sp, 0x8]
- mov r0, r9
- mov r1, r8
- adds r3, r4, 0
- bl AddTextPrinterParameterized
- cmp r5, 0
- beq _08125680
- mov r0, r10
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r10, r0
-_08125680:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x3
- bls _08125620
- movs r0, 0x10
- str r0, [sp]
- mov r0, r10
- str r0, [sp, 0x4]
- str r7, [sp, 0x8]
- mov r0, r9
- mov r1, r8
- movs r2, 0
- movs r3, 0x2
- bl Menu_InitCursor
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x10
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081256B8: .4byte gPlayerParty
-_081256BC: .4byte gMoveNames
- thumb_func_end sub_81255F0
-
- thumb_func_start sub_81256C0
-sub_81256C0: @ 81256C0
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl Menu_ProcessInput
- lsls r0, 24
- asrs r1, r0, 24
- movs r0, 0x2
- negs r0, r0
- cmp r1, r0
- beq _081256F2
- adds r0, 0x1
- cmp r1, r0
- bne _081256EC
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81257D4
- b _081256F2
-_081256EC:
- adds r0, r5, 0
- bl sub_8125790
-_081256F2:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_81256C0
-
- thumb_func_start ItemUseCB_PpRestore
-ItemUseCB_PpRestore: @ 81256F8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08125710 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- cmp r0, 0xAF
- bne _0812571C
- ldr r0, _08125714 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _08125718 @ =0x00003108
- adds r0, r1
- b _08125726
- .align 2, 0
-_08125710: .4byte gSpecialVar_ItemId
-_08125714: .4byte gSaveBlock1Ptr
-_08125718: .4byte 0x00003108
-_0812571C:
- ldr r1, _0812574C @ =gItemEffectTable
- subs r0, 0xD
- lsls r0, 2
- adds r0, r1
- ldr r0, [r0]
-_08125726:
- ldrb r1, [r0, 0x4]
- movs r0, 0x10
- ands r0, r1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _0812575C
- ldr r0, _08125750 @ =gUnknown_203B0A0
- strh r1, [r0, 0xE]
- ldrb r1, [r0, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _08125754
- adds r0, r4, 0
- bl sub_8125958
- b _0812577E
- .align 2, 0
-_0812574C: .4byte gItemEffectTable
-_08125750: .4byte gUnknown_203B0A0
-_08125754:
- adds r0, r4, 0
- bl sub_812580C
- b _0812577E
-_0812575C:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x17
- bl sub_8121D0C
- ldr r0, _08125784 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- bl sub_81255F0
- ldr r1, _08125788 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0812578C @ =sub_81256C0
- str r1, [r0]
-_0812577E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125784: .4byte gUnknown_203B0A0
-_08125788: .4byte gTasks
-_0812578C: .4byte sub_81256C0
- thumb_func_end ItemUseCB_PpRestore
-
- thumb_func_start sub_8125790
-sub_8125790: @ 8125790
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081257C0 @ =gUnknown_203B09C
- ldr r0, [r0]
- adds r0, 0xC
- bl sub_8121CE4
- bl Menu_GetCursorPos
- ldr r1, _081257C4 @ =gUnknown_203B0A0
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r1, 0xE]
- ldrb r1, [r1, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- bne _081257C8
- adds r0, r4, 0
- bl sub_8125958
- b _081257CE
- .align 2, 0
-_081257C0: .4byte gUnknown_203B09C
-_081257C4: .4byte gUnknown_203B0A0
-_081257C8:
- adds r0, r4, 0
- bl sub_812580C
-_081257CE:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8125790
-
- thumb_func_start sub_81257D4
-sub_81257D4: @ 81257D4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _08125800 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldr r0, _08125804 @ =sub_811FB28
- str r0, [r1]
- ldr r0, _08125808 @ =gUnknown_203B09C
- ldr r0, [r0]
- movs r1, 0
- str r1, [r0, 0x4]
- adds r0, 0xC
- bl sub_8121CE4
- movs r0, 0x5
- bl sub_8121D0C
- pop {r0}
- bx r0
- .align 2, 0
-_08125800: .4byte gTasks
-_08125804: .4byte sub_811FB28
-_08125808: .4byte gUnknown_203B09C
- thumb_func_end sub_81257D4
-
- thumb_func_start sub_812580C
-sub_812580C: @ 812580C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r3, _08125860 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r3, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08125864 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08125868 @ =gSpecialVar_ItemId
- ldrh r1, [r1]
- ldrb r2, [r3, 0x9]
- ldrb r3, [r3, 0xE]
- bl PokemonUseItemEffects2
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- cmp r4, 0
- beq _0812587C
- ldr r1, _0812586C @ =gUnknown_203B0C0
- movs r0, 0
- strb r0, [r1]
- ldr r0, _08125870 @ =gUnknown_84169DC
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08125874 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125878 @ =sub_81255BC
- str r1, [r0]
- b _08125888
- .align 2, 0
-_08125860: .4byte gUnknown_203B0A0
-_08125864: .4byte gPlayerParty
-_08125868: .4byte gSpecialVar_ItemId
-_0812586C: .4byte gUnknown_203B0C0
-_08125870: .4byte gUnknown_84169DC
-_08125874: .4byte gTasks
-_08125878: .4byte sub_81255BC
-_0812587C:
- adds r0, r5, 0
- bl sub_8124DC0
- ldr r1, _08125890 @ =gUnknown_3005E98
- ldr r0, _08125894 @ =sub_8125898
- str r0, [r1]
-_08125888:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08125890: .4byte gUnknown_3005E98
-_08125894: .4byte sub_8125898
- thumb_func_end sub_812580C
-
- thumb_func_start sub_8125898
-sub_8125898: @ 8125898
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- mov r8, r0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r5, _08125930 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r5, r1]
- movs r0, 0x64
- adds r4, r1, 0
- muls r4, r0
- ldr r0, _08125934 @ =gPlayerParty
- adds r4, r0
- ldrb r0, [r5, 0x9]
- ldr r6, _08125938 @ =gSpecialVar_ItemId
- ldrh r1, [r6]
- ldrb r2, [r5, 0xE]
- bl ExecuteTableBasedItemEffect__
- ldr r1, _0812593C @ =gUnknown_203B0C0
- movs r0, 0x1
- strb r0, [r1]
- ldrh r2, [r6]
- ldr r3, _08125940 @ =0x0000ffff
- movs r0, 0x4
- adds r1, r4, 0
- bl ItemUse_SetQuestLogEvent
- movs r0, 0x1
- bl PlaySE
- ldrh r0, [r6]
- movs r1, 0x1
- bl RemoveBagItem
- movs r2, 0xE
- ldrsh r1, [r5, r2]
- adds r1, 0xD
- adds r0, r4, 0
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- ldr r2, _08125944 @ =gStringVar1
- movs r1, 0xD
- muls r1, r0
- ldr r0, _08125948 @ =gMoveNames
- adds r1, r0
- adds r0, r2, 0
- bl StringCopy
- ldrh r0, [r6]
- bl GetMedicineItemEffectMessage
- ldr r0, _0812594C @ =gStringVar4
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08125950 @ =gTasks
- mov r2, r8
- lsls r0, r2, 2
- add r0, r8
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125954 @ =sub_81255BC
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08125930: .4byte gUnknown_203B0A0
-_08125934: .4byte gPlayerParty
-_08125938: .4byte gSpecialVar_ItemId
-_0812593C: .4byte gUnknown_203B0C0
-_08125940: .4byte 0x0000ffff
-_08125944: .4byte gStringVar1
-_08125948: .4byte gMoveNames
-_0812594C: .4byte gStringVar4
-_08125950: .4byte gTasks
-_08125954: .4byte sub_81255BC
- thumb_func_end sub_8125898
-
- thumb_func_start sub_8125958
-sub_8125958: @ 8125958
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r4, 0
- ldr r7, _08125990 @ =gUnknown_203B0AE
- ldr r0, _08125994 @ =gSpecialVar_ItemId
- ldrh r5, [r0]
- movs r0, 0xE
- negs r0, r0
- adds r0, r7
- mov r8, r0
- ldrb r0, [r0, 0x9]
- ldrb r2, [r7]
- adds r1, r5, 0
- bl ExecuteTableBasedItemEffect__
- lsls r0, 24
- cmp r0, 0
- beq _081259A0
- ldr r0, _08125998 @ =gUnknown_203B0C0
- strb r4, [r0]
- movs r0, 0x5
- bl PlaySE
- ldr r0, _0812599C @ =gUnknown_84169DC
- b _081259F6
- .align 2, 0
-_08125990: .4byte gUnknown_203B0AE
-_08125994: .4byte gSpecialVar_ItemId
-_08125998: .4byte gUnknown_203B0C0
-_0812599C: .4byte gUnknown_84169DC
-_081259A0:
- ldr r1, _08125A1C @ =gUnknown_203B0C0
- movs r0, 0x1
- strb r0, [r1]
- mov r0, r8
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- adds r4, r1, 0
- muls r4, r0
- ldr r0, _08125A20 @ =gPlayerParty
- adds r4, r0
- ldr r3, _08125A24 @ =0x0000ffff
- movs r0, 0x4
- adds r1, r4, 0
- adds r2, r5, 0
- bl ItemUse_SetQuestLogEvent
- movs r0, 0x1
- bl PlaySE
- adds r0, r5, 0
- movs r1, 0x1
- bl RemoveBagItem
- movs r0, 0
- ldrsh r1, [r7, r0]
- adds r1, 0xD
- adds r0, r4, 0
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r0, _08125A28 @ =gStringVar1
- movs r1, 0xD
- muls r1, r4
- ldr r2, _08125A2C @ =gMoveNames
- adds r1, r2
- bl StringCopy
- adds r0, r5, 0
- bl GetMedicineItemEffectMessage
- ldr r0, _08125A30 @ =gStringVar4
-_081259F6:
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08125A34 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125A38 @ =sub_81255BC
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08125A1C: .4byte gUnknown_203B0C0
-_08125A20: .4byte gPlayerParty
-_08125A24: .4byte 0x0000ffff
-_08125A28: .4byte gStringVar1
-_08125A2C: .4byte gMoveNames
-_08125A30: .4byte gStringVar4
-_08125A34: .4byte gTasks
-_08125A38: .4byte sub_81255BC
- thumb_func_end sub_8125958
-
- thumb_func_start dp05_pp_up
-dp05_pp_up: @ 8125A3C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0x5
- bl PlaySE
- movs r0, 0x18
- bl sub_8121D0C
- ldr r0, _08125A6C @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x9]
- bl sub_81255F0
- ldr r1, _08125A70 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125A74 @ =sub_81256C0
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125A6C: .4byte gUnknown_203B0A0
-_08125A70: .4byte gTasks
-_08125A74: .4byte sub_81256C0
- thumb_func_end dp05_pp_up
-
- thumb_func_start ItemIdToBattleMoveId
-ItemIdToBattleMoveId: @ 8125A78
- lsls r0, 16
- ldr r1, _08125A88 @ =0xfedf0000
- adds r0, r1
- ldr r1, _08125A8C @ =gUnknown_845A80C
- lsrs r0, 15
- adds r0, r1
- ldrh r0, [r0]
- bx lr
- .align 2, 0
-_08125A88: .4byte 0xfedf0000
-_08125A8C: .4byte gUnknown_845A80C
- thumb_func_end ItemIdToBattleMoveId
-
- thumb_func_start sub_8125A90
-sub_8125A90: @ 8125A90
- push {lr}
- lsls r0, 16
- lsrs r2, r0, 16
- movs r1, 0
- ldr r3, _08125AAC @ =gUnknown_845A80C
-_08125A9A:
- adds r0, r1, 0
- adds r0, 0x32
- lsls r0, 1
- adds r0, r3
- ldrh r0, [r0]
- cmp r0, r2
- bne _08125AB0
- movs r0, 0x1
- b _08125ABC
- .align 2, 0
-_08125AAC: .4byte gUnknown_845A80C
-_08125AB0:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x6
- bls _08125A9A
- movs r0, 0
-_08125ABC:
- pop {r1}
- bx r1
- thumb_func_end sub_8125A90
-
- thumb_func_start MonKnowsMove
-MonKnowsMove: @ 8125AC0
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r5, r1, 16
- movs r4, 0
-_08125ACA:
- adds r1, r4, 0
- adds r1, 0xD
- adds r0, r6, 0
- bl GetMonData
- cmp r0, r5
- bne _08125ADC
- movs r0, 0x1
- b _08125AE8
-_08125ADC:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x3
- bls _08125ACA
- movs r0, 0
-_08125AE8:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end MonKnowsMove
-
- thumb_func_start sub_8125AF0
-sub_8125AF0: @ 8125AF0
- push {r4,lr}
- adds r1, r0, 0
- ldr r4, _08125B10 @ =gStringVar4
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125B10: .4byte gStringVar4
- thumb_func_end sub_8125AF0
-
- thumb_func_start sub_8125B14
-sub_8125B14: @ 8125B14
- push {r4,lr}
- adds r4, r0, 0
- adds r0, r1, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_8125AF0
- ldr r1, _08125B38 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125B3C @ =sub_81255BC
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125B38: .4byte gTasks
-_08125B3C: .4byte sub_81255BC
- thumb_func_end sub_8125B14
-
- thumb_func_start sub_8125B40
-sub_8125B40: @ 8125B40
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r7, _08125BD0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r7, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08125BD4 @ =gPlayerParty
- adds r4, r1, r0
- movs r0, 0xE
- adds r0, r7
- mov r8, r0
- ldr r0, _08125BD8 @ =gSpecialVar_ItemId
- ldrh r5, [r0]
- ldr r1, _08125BDC @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- adds r0, r5, 0
- bl ItemIdToBattleMoveId
- strh r0, [r7, 0xE]
- ldr r0, _08125BE0 @ =gStringVar2
- movs r1, 0xE
- ldrsh r2, [r7, r1]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _08125BE4 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- movs r0, 0
- mov r1, r8
- strh r0, [r1, 0x2]
- adds r0, r4, 0
- adds r1, r5, 0
- movs r2, 0
- bl sub_8120B20
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08125BF4
- cmp r0, 0x2
- beq _08125BFC
- ldrh r1, [r7, 0xE]
- adds r0, r4, 0
- bl GiveMoveToMon
- lsls r0, 16
- lsrs r0, 16
- ldr r3, _08125BE8 @ =0x0000ffff
- cmp r0, r3
- beq _08125C0C
- movs r0, 0x4
- adds r1, r4, 0
- adds r2, r5, 0
- bl ItemUse_SetQuestLogEvent
- adds r0, r6, 0
- bl sub_8124DC0
- ldr r1, _08125BEC @ =gUnknown_3005E98
- ldr r0, _08125BF0 @ =sub_8125C38
- str r0, [r1]
- b _08125C20
- .align 2, 0
-_08125BD0: .4byte gUnknown_203B0A0
-_08125BD4: .4byte gPlayerParty
-_08125BD8: .4byte gSpecialVar_ItemId
-_08125BDC: .4byte gStringVar1
-_08125BE0: .4byte gStringVar2
-_08125BE4: .4byte gMoveNames
-_08125BE8: .4byte 0x0000ffff
-_08125BEC: .4byte gUnknown_3005E98
-_08125BF0: .4byte sub_8125C38
-_08125BF4:
- ldr r1, _08125BF8 @ =gUnknown_8416DC2
- b _08125BFE
- .align 2, 0
-_08125BF8: .4byte gUnknown_8416DC2
-_08125BFC:
- ldr r1, _08125C08 @ =gUnknown_8416F10
-_08125BFE:
- adds r0, r6, 0
- bl sub_8125B14
- b _08125C20
- .align 2, 0
-_08125C08: .4byte gUnknown_8416F10
-_08125C0C:
- ldr r0, _08125C2C @ =gUnknown_8416DF7
- bl sub_8125AF0
- ldr r1, _08125C30 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125C34 @ =sub_8125D88
- str r1, [r0]
-_08125C20:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08125C2C: .4byte gUnknown_8416DF7
-_08125C30: .4byte gTasks
-_08125C34: .4byte sub_8125D88
- thumb_func_end sub_8125B40
-
- thumb_func_start sub_8125C38
-sub_8125C38: @ 8125C38
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl sub_8125C48
- pop {r0}
- bx r0
- thumb_func_end sub_8125C38
-
- thumb_func_start sub_8125C48
-sub_8125C48: @ 8125C48
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r2, _08125CCC @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r2, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08125CD0 @ =gPlayerParty
- adds r5, r1, r0
- adds r6, r2, 0
- adds r6, 0xE
- ldr r0, _08125CD4 @ =gSpecialVar_ItemId
- ldrh r4, [r0]
- movs r1, 0x2
- ldrsh r0, [r6, r1]
- cmp r0, 0
- bne _08125C84
- adds r0, r5, 0
- movs r1, 0x4
- bl AdjustFriendship
- movs r0, 0xA9
- lsls r0, 1
- cmp r4, r0
- bhi _08125C84
- adds r0, r4, 0
- movs r1, 0x1
- bl RemoveBagItem
-_08125C84:
- ldr r1, _08125CD8 @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- ldr r0, _08125CDC @ =gStringVar2
- movs r1, 0
- ldrsh r2, [r6, r1]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _08125CE0 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r4, _08125CE4 @ =gStringVar4
- ldr r1, _08125CE8 @ =gUnknown_8416DB3
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08125CEC @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125CF0 @ =sub_8125CF4
- str r1, [r0]
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08125CCC: .4byte gUnknown_203B0A0
-_08125CD0: .4byte gPlayerParty
-_08125CD4: .4byte gSpecialVar_ItemId
-_08125CD8: .4byte gStringVar1
-_08125CDC: .4byte gStringVar2
-_08125CE0: .4byte gMoveNames
-_08125CE4: .4byte gStringVar4
-_08125CE8: .4byte gUnknown_8416DB3
-_08125CEC: .4byte gTasks
-_08125CF0: .4byte sub_8125CF4
- thumb_func_end sub_8125C48
-
- thumb_func_start sub_8125CF4
-sub_8125CF4: @ 8125CF4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08125D1A
- ldr r0, _08125D20 @ =0x00000101
- bl PlayFanfare
- ldr r1, _08125D24 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125D28 @ =sub_8125D2C
- str r1, [r0]
-_08125D1A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125D20: .4byte 0x00000101
-_08125D24: .4byte gTasks
-_08125D28: .4byte sub_8125D2C
- thumb_func_end sub_8125CF4
-
- thumb_func_start sub_8125D2C
-sub_8125D2C: @ 8125D2C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- bl IsFanfareTaskInactive
- lsls r0, 24
- cmp r0, 0
- beq _08125D7E
- ldr r0, _08125D68 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r2, 0x1
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- bne _08125D54
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08125D7E
-_08125D54:
- ldr r0, _08125D6C @ =gUnknown_203B0A0
- movs r1, 0x10
- ldrsh r0, [r0, r1]
- cmp r0, 0x1
- bne _08125D70
- adds r0, r4, 0
- bl sub_81266A0
- b _08125D7E
- .align 2, 0
-_08125D68: .4byte gMain
-_08125D6C: .4byte gUnknown_203B0A0
-_08125D70:
- cmp r0, 0x2
- bne _08125D78
- ldr r0, _08125D84 @ =gSpecialVar_Result
- strh r2, [r0]
-_08125D78:
- adds r0, r5, 0
- bl sub_811FA78
-_08125D7E:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08125D84: .4byte gSpecialVar_Result
- thumb_func_end sub_8125D2C
-
- thumb_func_start sub_8125D88
-sub_8125D88: @ 8125D88
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08125DAC
- bl sub_812200C
- ldr r0, _08125DB4 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08125DB8 @ =sub_8125DBC
- str r0, [r1]
-_08125DAC:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125DB4: .4byte gTasks
-_08125DB8: .4byte sub_8125DBC
- thumb_func_end sub_8125D88
-
- thumb_func_start sub_8125DBC
-sub_8125DBC: @ 8125DBC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _08125DE2
- cmp r1, 0
- bgt _08125DDC
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08125E08
- b _08125E14
-_08125DDC:
- cmp r1, 0x1
- beq _08125E0E
- b _08125E14
-_08125DE2:
- ldr r0, _08125DFC @ =gUnknown_8416EA4
- movs r1, 0x1
- bl sub_81202F8
- ldr r1, _08125E00 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08125E04 @ =sub_8125E1C
- str r1, [r0]
- b _08125E14
- .align 2, 0
-_08125DFC: .4byte gUnknown_8416EA4
-_08125E00: .4byte gTasks
-_08125E04: .4byte sub_8125E1C
-_08125E08:
- movs r0, 0x5
- bl PlaySE
-_08125E0E:
- adds r0, r4, 0
- bl sub_81260D8
-_08125E14:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_8125DBC
-
- thumb_func_start sub_8125E1C
-sub_8125E1C: @ 8125E1C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08125E3C
- ldr r0, _08125E44 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _08125E48 @ =sub_8125E4C
- str r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_811FA78
-_08125E3C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125E44: .4byte gUnknown_203B09C
-_08125E48: .4byte sub_8125E4C
- thumb_func_end sub_8125E1C
-
- thumb_func_start sub_8125E4C
-sub_8125E4C: @ 8125E4C
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _08125E74 @ =gPlayerParty
- ldr r4, _08125E78 @ =gUnknown_203B0A0
- ldrb r1, [r4, 0x9]
- ldr r2, _08125E7C @ =gPlayerPartyCount
- ldrb r2, [r2]
- subs r2, 0x1
- lsls r2, 24
- lsrs r2, 24
- ldr r3, _08125E80 @ =sub_8125E84
- ldrh r4, [r4, 0xE]
- str r4, [sp]
- bl ShowSelectMovePokemonSummaryScreen
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08125E74: .4byte gPlayerParty
-_08125E78: .4byte gUnknown_203B0A0
-_08125E7C: .4byte gPlayerPartyCount
-_08125E80: .4byte sub_8125E84
- thumb_func_end sub_8125E4C
-
- thumb_func_start sub_8125E84
-sub_8125E84: @ 8125E84
- push {r4,r5,lr}
- sub sp, 0xC
- bl GetMoveSlotToReplace
- lsls r0, 24
- lsrs r2, r0, 24
- ldr r4, _08125ED0 @ =gUnknown_203B0A0
- movs r0, 0x10
- ldrsh r5, [r4, r0]
- cmp r5, 0
- bne _08125EE8
- cmp r2, 0x4
- beq _08125EE8
- movs r1, 0x9
- ldrsb r1, [r4, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08125ED4 @ =gPlayerParty
- adds r0, r1
- adds r1, r2, 0
- adds r1, 0xD
- bl GetMonData
- adds r2, r0, 0
- lsls r2, 16
- lsrs r2, 16
- ldrb r0, [r4, 0x9]
- ldr r1, _08125ED8 @ =gSpecialVar_ItemId
- ldrh r1, [r1]
- ldr r3, _08125EDC @ =sub_8124EFC
- bl sub_811C568
- ldr r1, _08125EE0 @ =gUnknown_3005E98
- ldr r0, _08125EE4 @ =sub_8125F4C
- str r0, [r1]
- strb r5, [r4, 0xB]
- b _08125F02
- .align 2, 0
-_08125ED0: .4byte gUnknown_203B0A0
-_08125ED4: .4byte gPlayerParty
-_08125ED8: .4byte gSpecialVar_ItemId
-_08125EDC: .4byte sub_8124EFC
-_08125EE0: .4byte gUnknown_3005E98
-_08125EE4: .4byte sub_8125F4C
-_08125EE8:
- movs r0, 0x7F
- str r0, [sp]
- ldr r0, _08125F0C @ =sub_8125F14
- str r0, [sp, 0x4]
- ldr r0, _08125F10 @ =gUnknown_203B0A0
- ldr r0, [r0]
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0x1
- bl PartyMenuInit
-_08125F02:
- add sp, 0xC
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08125F0C: .4byte sub_8125F14
-_08125F10: .4byte gUnknown_203B0A0
- thumb_func_end sub_8125E84
-
- thumb_func_start sub_8125F14
-sub_8125F14: @ 8125F14
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, _08125F3C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08125F46
- bl GetMoveSlotToReplace
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- beq _08125F40
- adds r0, r4, 0
- bl sub_8125FFC
- b _08125F46
- .align 2, 0
-_08125F3C: .4byte gPaletteFade
-_08125F40:
- adds r0, r5, 0
- bl sub_81260D8
-_08125F46:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8125F14
-
- thumb_func_start sub_8125F4C
-sub_8125F4C: @ 8125F4C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- bl sub_8125F5C
- pop {r0}
- bx r0
- thumb_func_end sub_8125F4C
-
- thumb_func_start sub_8125F5C
-sub_8125F5C: @ 8125F5C
- push {r4-r6,lr}
- mov r6, r9
- mov r5, r8
- push {r5,r6}
- mov r8, r0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, _08125FE4 @ =gUnknown_203B0A0
- mov r9, r0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- adds r6, r1, 0
- muls r6, r0
- ldr r0, _08125FE8 @ =gPlayerParty
- adds r6, r0
- bl GetMoveSlotToReplace
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- adds r1, r5, 0
- adds r1, 0xD
- adds r0, r6, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r0, _08125FEC @ =gSpecialVar_ItemId
- ldrh r2, [r0]
- movs r0, 0x4
- adds r1, r6, 0
- adds r3, r4, 0
- bl ItemUse_SetQuestLogEvent
- ldr r1, _08125FF0 @ =gStringVar1
- adds r0, r6, 0
- bl GetMonNickname
- ldr r0, _08125FF4 @ =gStringVar2
- movs r1, 0xD
- muls r1, r4
- ldr r2, _08125FF8 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- adds r0, r6, 0
- adds r1, r5, 0
- bl RemoveMonPPBonus
- mov r0, r9
- ldrh r1, [r0, 0xE]
- adds r0, r6, 0
- adds r2, r5, 0
- bl SetMonMoveSlot
- mov r0, r8
- bl sub_8125C48
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08125FE4: .4byte gUnknown_203B0A0
-_08125FE8: .4byte gPlayerParty
-_08125FEC: .4byte gSpecialVar_ItemId
-_08125FF0: .4byte gStringVar1
-_08125FF4: .4byte gStringVar2
-_08125FF8: .4byte gMoveNames
- thumb_func_end sub_8125F5C
-
- thumb_func_start sub_8125FFC
-sub_8125FFC: @ 8125FFC
- push {r4-r6,lr}
- adds r6, r0, 0
- lsls r6, 24
- lsrs r6, 24
- ldr r0, _0812605C @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- adds r5, r1, 0
- muls r5, r0
- ldr r0, _08126060 @ =gPlayerParty
- adds r5, r0
- bl GetMoveSlotToReplace
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r1, 0xD
- adds r0, r5, 0
- bl GetMonData
- adds r4, r0, 0
- lsls r4, 16
- lsrs r4, 16
- ldr r1, _08126064 @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- ldr r0, _08126068 @ =gStringVar2
- movs r1, 0xD
- muls r1, r4
- ldr r2, _0812606C @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r0, _08126070 @ =gUnknown_8416EC6
- bl sub_8125AF0
- ldr r1, _08126074 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126078 @ =sub_812607C
- str r1, [r0]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812605C: .4byte gUnknown_203B0A0
-_08126060: .4byte gPlayerParty
-_08126064: .4byte gStringVar1
-_08126068: .4byte gStringVar2
-_0812606C: .4byte gMoveNames
-_08126070: .4byte gUnknown_8416EC6
-_08126074: .4byte gTasks
-_08126078: .4byte sub_812607C
- thumb_func_end sub_8125FFC
-
- thumb_func_start sub_812607C
-sub_812607C: @ 812607C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081260C8
- ldr r5, _081260D0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r5, r1]
- movs r0, 0x64
- adds r4, r1, 0
- muls r4, r0
- ldr r0, _081260D4 @ =gPlayerParty
- adds r4, r0
- bl GetMoveSlotToReplace
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl RemoveMonPPBonus
- ldrh r5, [r5, 0xE]
- bl GetMoveSlotToReplace
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl SetMonMoveSlot
- adds r0, r6, 0
- bl sub_8125C48
-_081260C8:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081260D0: .4byte gUnknown_203B0A0
-_081260D4: .4byte gPlayerParty
- thumb_func_end sub_812607C
-
- thumb_func_start sub_81260D8
-sub_81260D8: @ 81260D8
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _08126120 @ =gStringVar2
- ldr r1, _08126124 @ =gUnknown_203B0A0
- movs r3, 0xE
- ldrsh r2, [r1, r3]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _08126128 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r4, _0812612C @ =gStringVar4
- ldr r1, _08126130 @ =gUnknown_8416E6B
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08126134 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126138 @ =sub_812613C
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08126120: .4byte gStringVar2
-_08126124: .4byte gUnknown_203B0A0
-_08126128: .4byte gMoveNames
-_0812612C: .4byte gStringVar4
-_08126130: .4byte gUnknown_8416E6B
-_08126134: .4byte gTasks
-_08126138: .4byte sub_812613C
- thumb_func_end sub_81260D8
-
- thumb_func_start sub_812613C
-sub_812613C: @ 812613C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08126160
- bl sub_812200C
- ldr r0, _08126168 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812616C @ =sub_8126170
- str r0, [r1]
-_08126160:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08126168: .4byte gTasks
-_0812616C: .4byte sub_8126170
- thumb_func_end sub_812613C
-
- thumb_func_start sub_8126170
-sub_8126170: @ 8126170
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r7, _081261A0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r7, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _081261A4 @ =gPlayerParty
- adds r4, r1, r0
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r5, r0, 24
- cmp r5, 0
- beq _081261AE
- cmp r5, 0
- bgt _081261A8
- movs r0, 0x1
- negs r0, r0
- cmp r5, r0
- beq _08126234
- b _0812626A
- .align 2, 0
-_081261A0: .4byte gUnknown_203B0A0
-_081261A4: .4byte gPlayerParty
-_081261A8:
- cmp r5, 0x1
- beq _0812623A
- b _0812626A
-_081261AE:
- ldr r1, _081261F4 @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- ldr r0, _081261F8 @ =gStringVar2
- movs r1, 0xE
- ldrsh r2, [r7, r1]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _081261FC @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r4, _08126200 @ =gStringVar4
- ldr r1, _08126204 @ =gUnknown_8416E84
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r3, 0x10
- ldrsh r0, [r7, r3]
- cmp r0, 0x1
- bne _08126210
- ldr r0, _08126208 @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812620C @ =sub_812628C
- str r0, [r1]
- b _0812626A
- .align 2, 0
-_081261F4: .4byte gStringVar1
-_081261F8: .4byte gStringVar2
-_081261FC: .4byte gMoveNames
-_08126200: .4byte gStringVar4
-_08126204: .4byte gUnknown_8416E84
-_08126208: .4byte gTasks
-_0812620C: .4byte sub_812628C
-_08126210:
- cmp r0, 0x2
- bne _08126218
- ldr r0, _08126228 @ =gSpecialVar_Result
- strh r5, [r0]
-_08126218:
- ldr r0, _0812622C @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _08126230 @ =sub_81255BC
- str r0, [r1]
- b _0812626A
- .align 2, 0
-_08126228: .4byte gSpecialVar_Result
-_0812622C: .4byte gTasks
-_08126230: .4byte sub_81255BC
-_08126234:
- movs r0, 0x5
- bl PlaySE
-_0812623A:
- ldr r1, _08126270 @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- ldr r0, _08126274 @ =gStringVar2
- ldr r1, _08126278 @ =gUnknown_203B0A0
- movs r3, 0xE
- ldrsh r2, [r1, r3]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _0812627C @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r0, _08126280 @ =gUnknown_8416DF7
- bl sub_8125AF0
- ldr r1, _08126284 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126288 @ =sub_8125D88
- str r1, [r0]
-_0812626A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126270: .4byte gStringVar1
-_08126274: .4byte gStringVar2
-_08126278: .4byte gUnknown_203B0A0
-_0812627C: .4byte gMoveNames
-_08126280: .4byte gUnknown_8416DF7
-_08126284: .4byte gTasks
-_08126288: .4byte sub_8125D88
- thumb_func_end sub_8126170
-
- thumb_func_start sub_812628C
-sub_812628C: @ 812628C
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081262A4
- adds r0, r4, 0
- bl sub_81266A0
-_081262A4:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_812628C
-
- thumb_func_start dp05_rare_candy
-dp05_rare_candy: @ 81262AC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r1
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r7, _081262E8 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r7, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _081262EC @ =gPlayerParty
- adds r4, r1, r0
- ldr r0, _081262F0 @ =gSpecialVar_ItemId
- ldrh r5, [r0]
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x64
- beq _081262F4
- ldrb r2, [r7, 0x9]
- adds r0, r4, 0
- adds r1, r5, 0
- movs r3, 0
- bl PokemonUseItemEffects2
- lsls r0, 24
- lsrs r4, r0, 24
- b _081262F6
- .align 2, 0
-_081262E8: .4byte gUnknown_203B0A0
-_081262EC: .4byte gPlayerParty
-_081262F0: .4byte gSpecialVar_ItemId
-_081262F4:
- movs r4, 0x1
-_081262F6:
- movs r0, 0x5
- bl PlaySE
- cmp r4, 0
- beq _08126330
- ldr r1, _08126324 @ =gUnknown_203B0C0
- movs r0, 0
- strb r0, [r1]
- ldr r0, _08126328 @ =gUnknown_84169DC
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _0812632C @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- mov r1, r8
- str r1, [r0]
- b _0812633C
- .align 2, 0
-_08126324: .4byte gUnknown_203B0C0
-_08126328: .4byte gUnknown_84169DC
-_0812632C: .4byte gTasks
-_08126330:
- adds r0, r6, 0
- bl sub_8124DC0
- ldr r1, _08126348 @ =gUnknown_3005E98
- ldr r0, _0812634C @ =sub_8126350
- str r0, [r1]
-_0812633C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126348: .4byte gUnknown_3005E98
-_0812634C: .4byte sub_8126350
- thumb_func_end dp05_rare_candy
-
- thumb_func_start sub_8126350
-sub_8126350: @ 8126350
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- mov r8, r0
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r6, _08126410 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r6, r1]
- movs r0, 0x64
- adds r4, r1, 0
- muls r4, r0
- ldr r0, _08126414 @ =gPlayerParty
- adds r4, r0
- ldr r0, _08126418 @ =gUnknown_203B09C
- ldr r7, [r0]
- movs r2, 0x86
- lsls r2, 2
- adds r1, r7, r2
- adds r0, r4, 0
- bl GetMonLevelUpWindowStats
- ldrb r0, [r6, 0x9]
- ldr r5, _0812641C @ =gSpecialVar_ItemId
- ldrh r1, [r5]
- movs r2, 0
- bl ExecuteTableBasedItemEffect__
- movs r0, 0x89
- lsls r0, 2
- adds r1, r7, r0
- adds r0, r4, 0
- bl GetMonLevelUpWindowStats
- ldr r1, _08126420 @ =gUnknown_203B0C0
- movs r0, 0x1
- strb r0, [r1]
- ldrh r2, [r5]
- ldr r3, _08126424 @ =0x0000ffff
- movs r0, 0x4
- adds r1, r4, 0
- bl ItemUse_SetQuestLogEvent
- movs r0, 0
- bl PlayFanfareByFanfareNum
- ldrb r0, [r6, 0x9]
- adds r1, r4, 0
- bl sub_8126440
- ldrh r0, [r5]
- movs r1, 0x1
- bl RemoveBagItem
- ldr r1, _08126428 @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _0812642C @ =gStringVar2
- movs r2, 0
- movs r3, 0x3
- bl ConvertIntToDecimalStringN
- ldr r4, _08126430 @ =gStringVar4
- ldr r1, _08126434 @ =gUnknown_8417017
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08126438 @ =gTasks
- mov r2, r8
- lsls r0, r2, 2
- add r0, r8
- lsls r0, 3
- adds r0, r1
- ldr r1, _0812643C @ =sub_81264C8
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126410: .4byte gUnknown_203B0A0
-_08126414: .4byte gPlayerParty
-_08126418: .4byte gUnknown_203B09C
-_0812641C: .4byte gSpecialVar_ItemId
-_08126420: .4byte gUnknown_203B0C0
-_08126424: .4byte 0x0000ffff
-_08126428: .4byte gStringVar1
-_0812642C: .4byte gStringVar2
-_08126430: .4byte gStringVar4
-_08126434: .4byte gUnknown_8417017
-_08126438: .4byte gTasks
-_0812643C: .4byte sub_81264C8
- thumb_func_end sub_8126350
-
- thumb_func_start sub_8126440
-sub_8126440: @ 8126440
- push {r4-r7,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r0, 24
- adds r7, r0, 0
- ldr r6, _081264C0 @ =gUnknown_203B0B4
- lsls r4, r7, 4
- ldr r1, [r6]
- adds r1, r4
- adds r0, r5, 0
- bl party_menu_get_status_condition_and_update_object
- ldr r2, _081264C4 @ =gSprites
- ldr r0, [r6]
- adds r3, r4, r0
- ldrb r1, [r3, 0xC]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _0812647C
- adds r0, r5, 0
- adds r1, r3, 0
- movs r2, 0x1
- bl sub_8121790
-_0812647C:
- ldr r1, [r6]
- adds r1, r4
- adds r0, r5, 0
- movs r2, 0x1
- bl sub_812199C
- ldr r1, [r6]
- adds r1, r4
- adds r0, r5, 0
- movs r2, 0x1
- bl sub_8121A3C
- ldr r1, [r6]
- adds r1, r4
- adds r0, r5, 0
- bl sub_8121AF0
- ldr r0, [r6]
- adds r0, r4, r0
- ldrb r0, [r0, 0x9]
- adds r1, r5, 0
- bl sub_8122358
- adds r0, r7, 0
- movs r1, 0x1
- bl sub_811F818
- movs r0, 0
- bl ScheduleBgCopyTilemapToVram
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081264C0: .4byte gUnknown_203B0B4
-_081264C4: .4byte gSprites
- thumb_func_end sub_8126440
-
- thumb_func_start sub_81264C8
-sub_81264C8: @ 81264C8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0
- bl WaitFanfare
- lsls r0, 24
- cmp r0, 0
- beq _08126514
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08126514
- ldr r0, _0812651C @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _081264FA
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _08126514
-_081264FA:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_8126570
- ldr r0, _08126520 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08126524 @ =sub_8126528
- str r0, [r1]
-_08126514:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0812651C: .4byte gMain
-_08126520: .4byte gTasks
-_08126524: .4byte sub_8126528
- thumb_func_end sub_81264C8
-
- thumb_func_start sub_8126528
-sub_8126528: @ 8126528
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08126564 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08126542
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0812655C
-_08126542:
- movs r0, 0x5
- bl PlaySE
- adds r0, r4, 0
- bl sub_81265BC
- ldr r0, _08126568 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812656C @ =sub_81265F8
- str r0, [r1]
-_0812655C:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08126564: .4byte gMain
-_08126568: .4byte gTasks
-_0812656C: .4byte sub_81265F8
- thumb_func_end sub_8126528
-
- thumb_func_start sub_8126570
-sub_8126570: @ 8126570
- push {r4,r5,lr}
- sub sp, 0x8
- ldr r0, _081265B8 @ =gUnknown_203B09C
- ldr r5, [r0]
- movs r0, 0x86
- lsls r0, 2
- adds r4, r5, r0
- bl sub_8122034
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r4, 0x18]
- ldrh r0, [r4, 0x18]
- movs r1, 0x89
- lsls r1, 2
- adds r2, r5, r1
- movs r1, 0x2
- str r1, [sp]
- movs r1, 0x3
- str r1, [sp, 0x4]
- adds r1, r4, 0
- movs r3, 0x1
- bl DrawLevelUpWindowPg1
- ldrb r0, [r4, 0x18]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x8
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081265B8: .4byte gUnknown_203B09C
- thumb_func_end sub_8126570
-
- thumb_func_start sub_81265BC
-sub_81265BC: @ 81265BC
- push {r4,lr}
- sub sp, 0x4
- ldr r0, _081265F4 @ =gUnknown_203B09C
- ldr r1, [r0]
- movs r0, 0x86
- lsls r0, 2
- adds r4, r1, r0
- ldrh r0, [r4, 0x18]
- movs r2, 0x89
- lsls r2, 2
- adds r1, r2
- movs r2, 0x3
- str r2, [sp]
- movs r2, 0x1
- movs r3, 0x2
- bl DrawLevelUpWindowPg2
- ldrb r0, [r4, 0x18]
- movs r1, 0x2
- bl CopyWindowToVram
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081265F4: .4byte gUnknown_203B09C
- thumb_func_end sub_81265BC
-
- thumb_func_start sub_81265F8
-sub_81265F8: @ 81265F8
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- movs r0, 0
- bl WaitFanfare
- lsls r0, 24
- cmp r0, 0
- beq _0812669A
- ldr r0, _08126650 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r6, 0x1
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- bne _08126620
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _0812669A
-_08126620:
- bl sub_8122064
- ldr r4, _08126654 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r4, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08126658 @ =gPlayerParty
- adds r0, r1
- movs r1, 0x1
- bl MonTryLearningNewMove
- lsls r0, 16
- lsrs r1, r0, 16
- strh r6, [r4, 0x10]
- ldr r0, _0812665C @ =0x0000fffe
- cmp r1, r0
- beq _0812667C
- cmp r1, r0
- bgt _08126660
- cmp r1, 0
- beq _0812666C
- b _08126694
- .align 2, 0
-_08126650: .4byte gMain
-_08126654: .4byte gUnknown_203B0A0
-_08126658: .4byte gPlayerParty
-_0812665C: .4byte 0x0000fffe
-_08126660:
- ldr r0, _08126668 @ =0x0000ffff
- cmp r1, r0
- beq _08126674
- b _08126694
- .align 2, 0
-_08126668: .4byte 0x0000ffff
-_0812666C:
- adds r0, r5, 0
- bl sub_8126704
- b _0812669A
-_08126674:
- adds r0, r5, 0
- bl sub_8126770
- b _0812669A
-_0812667C:
- ldr r0, _0812668C @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _08126690 @ =sub_81266A0
- str r0, [r1]
- b _0812669A
- .align 2, 0
-_0812668C: .4byte gTasks
-_08126690: .4byte sub_81266A0
-_08126694:
- adds r0, r5, 0
- bl sub_8126804
-_0812669A:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_81265F8
-
- thumb_func_start sub_81266A0
-sub_81266A0: @ 81266A0
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081266D0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _081266D4 @ =gPlayerParty
- adds r0, r1
- movs r1, 0
- bl MonTryLearningNewMove
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _081266D8 @ =0x0000fffe
- cmp r1, r0
- beq _081266FE
- cmp r1, r0
- bgt _081266DC
- cmp r1, 0
- beq _081266E8
- b _081266F8
- .align 2, 0
-_081266D0: .4byte gUnknown_203B0A0
-_081266D4: .4byte gPlayerParty
-_081266D8: .4byte 0x0000fffe
-_081266DC:
- ldr r0, _081266E4 @ =0x0000ffff
- cmp r1, r0
- beq _081266F0
- b _081266F8
- .align 2, 0
-_081266E4: .4byte 0x0000ffff
-_081266E8:
- adds r0, r4, 0
- bl sub_8126704
- b _081266FE
-_081266F0:
- adds r0, r4, 0
- bl sub_8126770
- b _081266FE
-_081266F8:
- adds r0, r4, 0
- bl sub_8126804
-_081266FE:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_81266A0
-
- thumb_func_start sub_8126704
-sub_8126704: @ 8126704
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r6, _08126748 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r6, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _0812674C @ =gPlayerParty
- adds r7, r1, r0
- adds r0, r7, 0
- movs r1, 0
- movs r2, 0
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- lsrs r4, r0, 16
- cmp r4, 0
- beq _08126754
- bl sub_811F070
- ldr r0, _08126750 @ =gCB2_AfterEvolution
- ldr r1, [r6]
- str r1, [r0]
- ldrb r3, [r6, 0x9]
- adds r0, r7, 0
- adds r1, r4, 0
- movs r2, 0x1
- bl BeginEvolutionScene
- adds r0, r5, 0
- bl DestroyTask
- b _08126762
- .align 2, 0
-_08126748: .4byte gUnknown_203B0A0
-_0812674C: .4byte gPlayerParty
-_08126750: .4byte gCB2_AfterEvolution
-_08126754:
- ldr r0, _08126768 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _0812676C @ =sub_81255BC
- str r0, [r1]
-_08126762:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126768: .4byte gTasks
-_0812676C: .4byte sub_81255BC
- thumb_func_end sub_8126704
-
- thumb_func_start sub_8126770
-sub_8126770: @ 8126770
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _081267DC @ =gUnknown_203B0A0
- mov r8, r0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _081267E0 @ =gPlayerParty
- adds r0, r1
- ldr r1, _081267E4 @ =gStringVar1
- bl GetMonNickname
- ldr r0, _081267E8 @ =gStringVar2
- ldr r6, _081267EC @ =gMoveToLearn
- ldrh r2, [r6]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _081267F0 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r4, _081267F4 @ =gStringVar4
- ldr r1, _081267F8 @ =gUnknown_8416DF7
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldrh r0, [r6]
- mov r1, r8
- strh r0, [r1, 0xE]
- ldr r1, _081267FC @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126800 @ =sub_8125D88
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081267DC: .4byte gUnknown_203B0A0
-_081267E0: .4byte gPlayerParty
-_081267E4: .4byte gStringVar1
-_081267E8: .4byte gStringVar2
-_081267EC: .4byte gMoveToLearn
-_081267F0: .4byte gMoveNames
-_081267F4: .4byte gStringVar4
-_081267F8: .4byte gUnknown_8416DF7
-_081267FC: .4byte gTasks
-_08126800: .4byte sub_8125D88
- thumb_func_end sub_8126770
-
- thumb_func_start sub_8126804
-sub_8126804: @ 8126804
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- adds r6, r0, 0
- adds r5, r1, 0
- lsls r6, 24
- lsrs r6, 24
- lsls r5, 16
- lsrs r5, 16
- ldr r0, _08126870 @ =gUnknown_203B0A0
- mov r8, r0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08126874 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08126878 @ =gStringVar1
- bl GetMonNickname
- ldr r0, _0812687C @ =gStringVar2
- movs r1, 0xD
- muls r1, r5
- ldr r2, _08126880 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- ldr r4, _08126884 @ =gStringVar4
- ldr r1, _08126888 @ =gUnknown_8416DB3
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- mov r0, r8
- strh r5, [r0, 0xE]
- ldr r1, _0812688C @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126890 @ =sub_8125CF4
- str r1, [r0]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08126870: .4byte gUnknown_203B0A0
-_08126874: .4byte gPlayerParty
-_08126878: .4byte gStringVar1
-_0812687C: .4byte gStringVar2
-_08126880: .4byte gMoveNames
-_08126884: .4byte gStringVar4
-_08126888: .4byte gUnknown_8416DB3
-_0812688C: .4byte gTasks
-_08126890: .4byte sub_8125CF4
- thumb_func_end sub_8126804
-
- thumb_func_start sub_8126894
-sub_8126894: @ 8126894
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _081268C8 @ =gUnknown_203B09C
- ldr r2, [r1]
- movs r3, 0x86
- lsls r3, 2
- adds r1, r2, r3
- movs r3, 0
- strh r3, [r1]
- ldr r4, _081268CC @ =0x0000021a
- adds r1, r2, r4
- strh r3, [r1]
- ldr r1, _081268D0 @ =gUnknown_203B0A0
- ldrb r1, [r1, 0x9]
- lsls r1, 24
- asrs r1, 24
- movs r3, 0x87
- lsls r3, 2
- adds r2, r3
- strh r1, [r2]
- bl sub_81268D4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081268C8: .4byte gUnknown_203B09C
-_081268CC: .4byte 0x0000021a
-_081268D0: .4byte gUnknown_203B0A0
- thumb_func_end sub_8126894
-
- thumb_func_start sub_81268D4
-sub_81268D4: @ 81268D4
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- lsls r0, 24
- lsrs r4, r0, 24
- mov r9, r4
- ldr r6, _08126930 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r6, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08126934 @ =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08126920
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- lsls r0, 16
- lsrs r0, 16
- mov r8, r0
- ldrb r0, [r6, 0x9]
- ldr r1, _08126938 @ =gSpecialVar_ItemId
- ldrh r1, [r1]
- movs r2, 0
- bl ExecuteTableBasedItemEffect__
- lsls r0, 24
- cmp r0, 0
- beq _08126944
-_08126920:
- ldr r0, _0812693C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08126940 @ =sub_8126A18
- str r0, [r1]
- b _081269EE
- .align 2, 0
-_08126930: .4byte gUnknown_203B0A0
-_08126934: .4byte gPlayerParty
-_08126938: .4byte gSpecialVar_ItemId
-_0812693C: .4byte gTasks
-_08126940: .4byte sub_8126A18
-_08126944:
- movs r0, 0x1
- bl PlaySE
- ldr r7, _08126A00 @ =gUnknown_203B09C
- ldr r0, [r7]
- ldr r1, _08126A04 @ =0x0000021a
- mov r10, r1
- add r0, r10
- movs r2, 0
- ldrsh r0, [r0, r2]
- cmp r0, 0
- bne _08126960
- ldr r0, _08126A08 @ =gUnknown_203B0D0
- str r5, [r0]
-_08126960:
- ldr r4, _08126A0C @ =gUnknown_203B0B4
- movs r0, 0x9
- ldrsb r0, [r6, r0]
- lsls r0, 4
- ldr r1, [r4]
- adds r1, r0
- adds r0, r5, 0
- bl party_menu_get_status_condition_and_update_object
- ldr r2, _08126A10 @ =gSprites
- movs r0, 0x9
- ldrsb r0, [r6, r0]
- ldr r1, [r4]
- lsls r0, 4
- adds r3, r0, r1
- ldrb r1, [r3, 0xC]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _0812699C
- adds r0, r5, 0
- adds r1, r3, 0
- movs r2, 0x1
- bl sub_8121790
-_0812699C:
- ldr r0, [r7]
- movs r1, 0x87
- lsls r1, 2
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0
- bl sub_811F818
- ldrb r0, [r6, 0x9]
- movs r1, 0x1
- bl sub_811F818
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- adds r3, r0, 0
- mov r2, r8
- subs r3, r2
- lsls r3, 16
- asrs r3, 16
- ldrb r1, [r6, 0x9]
- ldr r0, _08126A14 @ =sub_8126AFC
- str r0, [sp]
- mov r0, r9
- movs r2, 0x1
- bl sub_8120760
- mov r0, r9
- movs r1, 0
- mov r2, r8
- bl sub_81207F0
- ldr r0, [r7]
- movs r2, 0x86
- lsls r2, 2
- adds r1, r0, r2
- movs r2, 0x1
- strh r2, [r1]
- add r0, r10
- strh r2, [r0]
-_081269EE:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126A00: .4byte gUnknown_203B09C
-_08126A04: .4byte 0x0000021a
-_08126A08: .4byte gUnknown_203B0D0
-_08126A0C: .4byte gUnknown_203B0B4
-_08126A10: .4byte gSprites
-_08126A14: .4byte sub_8126AFC
- thumb_func_end sub_81268D4
-
- thumb_func_start sub_8126A18
-sub_8126A18: @ 8126A18
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08126AF6
- ldr r5, _08126A80 @ =gUnknown_203B09C
- ldr r2, [r5]
- movs r0, 0x86
- lsls r0, 2
- adds r1, r2, r0
- movs r3, 0
- ldrsh r0, [r1, r3]
- ldr r3, _08126A84 @ =gUnknown_203B0A0
- cmp r0, 0x1
- bne _08126A4E
- movs r0, 0
- strh r0, [r1]
- movs r1, 0x9
- ldrsb r1, [r3, r1]
- movs r6, 0x87
- lsls r6, 2
- adds r0, r2, r6
- strh r1, [r0]
-_08126A4E:
- adds r1, r3, 0
- ldrb r0, [r1, 0x9]
- adds r0, 0x1
- strb r0, [r1, 0x9]
- lsls r0, 24
- asrs r0, 24
- cmp r0, 0x6
- bne _08126AF0
- ldr r0, [r5]
- ldr r1, _08126A88 @ =0x0000021a
- adds r0, r1
- movs r2, 0
- ldrsh r1, [r0, r2]
- cmp r1, 0
- bne _08126A94
- ldr r0, _08126A8C @ =gUnknown_203B0C0
- strb r1, [r0]
- ldr r0, _08126A90 @ =gUnknown_84169DC
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- b _08126ABE
- .align 2, 0
-_08126A80: .4byte gUnknown_203B09C
-_08126A84: .4byte gUnknown_203B0A0
-_08126A88: .4byte 0x0000021a
-_08126A8C: .4byte gUnknown_203B0C0
-_08126A90: .4byte gUnknown_84169DC
-_08126A94:
- ldr r1, _08126AD4 @ =gUnknown_203B0C0
- movs r0, 0x1
- strb r0, [r1]
- ldrb r1, [r3, 0x8]
- movs r0, 0xF
- ands r0, r1
- cmp r0, 0x1
- beq _08126AB4
- ldr r0, _08126AD8 @ =gUnknown_203B0D0
- ldr r1, [r0]
- ldr r0, _08126ADC @ =gSpecialVar_ItemId
- ldrh r2, [r0]
- ldr r3, _08126AE0 @ =0x0000ffff
- movs r0, 0x4
- bl ItemUse_SetQuestLogEvent
-_08126AB4:
- ldr r0, _08126ADC @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- movs r1, 0x1
- bl RemoveBagItem
-_08126ABE:
- ldr r1, _08126AE4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126AE8 @ =sub_81255BC
- str r1, [r0]
- ldr r1, _08126AEC @ =gUnknown_203B0A0
- movs r0, 0
- strb r0, [r1, 0x9]
- b _08126AF6
- .align 2, 0
-_08126AD4: .4byte gUnknown_203B0C0
-_08126AD8: .4byte gUnknown_203B0D0
-_08126ADC: .4byte gSpecialVar_ItemId
-_08126AE0: .4byte 0x0000ffff
-_08126AE4: .4byte gTasks
-_08126AE8: .4byte sub_81255BC
-_08126AEC: .4byte gUnknown_203B0A0
-_08126AF0:
- adds r0, r4, 0
- bl sub_81268D4
-_08126AF6:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8126A18
-
- thumb_func_start sub_8126AFC
-sub_8126AFC: @ 8126AFC
- push {r4,r5,lr}
- adds r5, r0, 0
- lsls r5, 24
- lsrs r5, 24
- ldr r0, _08126B44 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08126B48 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08126B4C @ =gStringVar1
- bl GetMonNickname
- ldr r4, _08126B50 @ =gStringVar4
- ldr r1, _08126B54 @ =gUnknown_8416F27
- adds r0, r4, 0
- bl StringExpandPlaceholders
- adds r0, r4, 0
- movs r1, 0
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08126B58 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126B5C @ =sub_8126A18
- str r1, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08126B44: .4byte gUnknown_203B0A0
-_08126B48: .4byte gPlayerParty
-_08126B4C: .4byte gStringVar1
-_08126B50: .4byte gStringVar4
-_08126B54: .4byte gUnknown_8416F27
-_08126B58: .4byte gTasks
-_08126B5C: .4byte sub_8126A18
- thumb_func_end sub_8126AFC
-
- thumb_func_start sub_8126B60
-sub_8126B60: @ 8126B60
- push {r4,r5,lr}
- adds r5, r1, 0
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x5
- bl PlaySE
- ldr r2, _08126BB0 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r2, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08126BB4 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08126BB8 @ =gSpecialVar_ItemId
- ldrh r1, [r1]
- ldrb r2, [r2, 0x9]
- movs r3, 0
- bl PokemonUseItemEffects2
- lsls r0, 24
- cmp r0, 0
- beq _08126BC8
- ldr r1, _08126BBC @ =gUnknown_203B0C0
- movs r0, 0
- strb r0, [r1]
- ldr r0, _08126BC0 @ =gUnknown_84169DC
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _08126BC4 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- str r5, [r0]
- b _08126BCE
- .align 2, 0
-_08126BB0: .4byte gUnknown_203B0A0
-_08126BB4: .4byte gPlayerParty
-_08126BB8: .4byte gSpecialVar_ItemId
-_08126BBC: .4byte gUnknown_203B0C0
-_08126BC0: .4byte gUnknown_84169DC
-_08126BC4: .4byte gTasks
-_08126BC8:
- adds r0, r4, 0
- bl sub_8124DC0
-_08126BCE:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8126B60
-
- thumb_func_start sub_8126BD4
-sub_8126BD4: @ 8126BD4
- push {r4,r5,lr}
- ldr r1, _08126C10 @ =gCB2_AfterEvolution
- ldr r4, _08126C14 @ =gUnknown_203B0A0
- ldr r0, [r4]
- str r0, [r1]
- ldrb r0, [r4, 0x9]
- ldr r5, _08126C18 @ =gSpecialVar_ItemId
- ldrh r1, [r5]
- movs r2, 0
- bl ExecuteTableBasedItemEffect__
- movs r1, 0x9
- ldrsb r1, [r4, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08126C1C @ =gPlayerParty
- adds r1, r0
- ldrh r2, [r5]
- ldr r3, _08126C20 @ =0x0000ffff
- movs r0, 0x4
- bl ItemUse_SetQuestLogEvent
- ldrh r0, [r5]
- movs r1, 0x1
- bl RemoveBagItem
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08126C10: .4byte gCB2_AfterEvolution
-_08126C14: .4byte gUnknown_203B0A0
-_08126C18: .4byte gSpecialVar_ItemId
-_08126C1C: .4byte gPlayerParty
-_08126C20: .4byte 0x0000ffff
- thumb_func_end sub_8126BD4
-
- thumb_func_start sub_8126C24
-sub_8126C24: @ 8126C24
- push {lr}
- bl IsNationalPokedexEnabled
- cmp r0, 0
- bne _08126C60
- ldr r0, _08126C54 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08126C58 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08126C5C @ =gSpecialVar_ItemId
- ldrh r2, [r1]
- movs r1, 0x2
- bl GetEvolutionTargetSpecies
- lsls r0, 16
- lsrs r0, 16
- cmp r0, 0x97
- bls _08126C60
- movs r0, 0
- b _08126C62
- .align 2, 0
-_08126C54: .4byte gUnknown_203B0A0
-_08126C58: .4byte gPlayerParty
-_08126C5C: .4byte gSpecialVar_ItemId
-_08126C60:
- movs r0, 0x1
-_08126C62:
- pop {r1}
- bx r1
- thumb_func_end sub_8126C24
-
- thumb_func_start GetItemEffectType
-GetItemEffectType: @ 8126C68
- push {r4,r5,lr}
- lsls r0, 16
- lsrs r1, r0, 16
- adds r2, r1, 0
- subs r2, 0xD
- lsls r0, r2, 16
- lsrs r0, 16
- cmp r0, 0xA5
- bls _08126C7C
- b _08126DBC
-_08126C7C:
- cmp r1, 0xAF
- bne _08126C94
- ldr r0, _08126C8C @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _08126C90 @ =0x00003108
- adds r4, r0, r1
- b _08126C9C
- .align 2, 0
-_08126C8C: .4byte gSaveBlock1Ptr
-_08126C90: .4byte 0x00003108
-_08126C94:
- ldr r1, _08126CC4 @ =gItemEffectTable
- lsls r0, r2, 2
- adds r0, r1
- ldr r4, [r0]
-_08126C9C:
- ldrb r1, [r4]
- movs r5, 0x3F
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- bne _08126CBE
- ldrb r0, [r4, 0x1]
- cmp r0, 0
- bne _08126CBE
- ldrb r0, [r4, 0x2]
- cmp r0, 0
- bne _08126CBE
- ldrb r3, [r4, 0x3]
- movs r0, 0x80
- ands r0, r3
- cmp r0, 0
- beq _08126CC8
-_08126CBE:
- movs r0, 0
- b _08126DC2
- .align 2, 0
-_08126CC4: .4byte gItemEffectTable
-_08126CC8:
- movs r2, 0x40
- adds r0, r2, 0
- ands r0, r1
- cmp r0, 0
- beq _08126CD6
- movs r0, 0xA
- b _08126DC2
-_08126CD6:
- adds r0, r2, 0
- ands r0, r3
- cmp r0, 0
- beq _08126CE2
- movs r0, 0x1
- b _08126DC2
-_08126CE2:
- adds r2, r5, 0
- ands r2, r3
- cmp r2, 0
- bne _08126CF0
- lsrs r0, r1, 7
- cmp r0, 0
- beq _08126D32
-_08126CF0:
- cmp r2, 0x20
- bne _08126CF8
- movs r0, 0x4
- b _08126DC2
-_08126CF8:
- cmp r2, 0x10
- bne _08126D00
- movs r0, 0x3
- b _08126DC2
-_08126D00:
- cmp r2, 0x8
- bne _08126D08
- movs r0, 0x5
- b _08126DC2
-_08126D08:
- cmp r2, 0x4
- bne _08126D10
- movs r0, 0x6
- b _08126DC2
-_08126D10:
- cmp r2, 0x2
- bne _08126D18
- movs r0, 0x7
- b _08126DC2
-_08126D18:
- cmp r2, 0x1
- bne _08126D20
- movs r0, 0x8
- b _08126DC2
-_08126D20:
- lsrs r0, r1, 7
- cmp r0, 0
- beq _08126D2E
- cmp r2, 0
- bne _08126D2E
- movs r0, 0x9
- b _08126DC2
-_08126D2E:
- movs r0, 0xB
- b _08126DC2
-_08126D32:
- ldrb r1, [r4, 0x4]
- movs r0, 0x44
- ands r0, r1
- adds r2, r1, 0
- cmp r0, 0
- beq _08126D42
- movs r0, 0x2
- b _08126DC2
-_08126D42:
- movs r5, 0x2
- adds r0, r5, 0
- ands r0, r2
- cmp r0, 0
- beq _08126D50
- movs r0, 0xC
- b _08126DC2
-_08126D50:
- movs r3, 0x1
- adds r0, r3, 0
- ands r0, r2
- cmp r0, 0
- beq _08126D5E
- movs r0, 0xD
- b _08126DC2
-_08126D5E:
- ldrb r1, [r4, 0x5]
- movs r0, 0x8
- ands r0, r1
- cmp r0, 0
- beq _08126D6C
- movs r0, 0xE
- b _08126DC2
-_08126D6C:
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _08126D78
- movs r0, 0xF
- b _08126DC2
-_08126D78:
- adds r0, r5, 0
- ands r0, r1
- cmp r0, 0
- beq _08126D84
- movs r0, 0x10
- b _08126DC2
-_08126D84:
- adds r0, r3, 0
- ands r0, r1
- cmp r0, 0
- beq _08126D90
- movs r0, 0x11
- b _08126DC2
-_08126D90:
- movs r0, 0x80
- ands r0, r2
- cmp r0, 0
- beq _08126D9C
- movs r0, 0x12
- b _08126DC2
-_08126D9C:
- movs r0, 0x20
- ands r0, r2
- cmp r0, 0
- beq _08126DA8
- movs r0, 0x13
- b _08126DC2
-_08126DA8:
- movs r0, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08126DB4
- movs r0, 0x14
- b _08126DC2
-_08126DB4:
- movs r0, 0x18
- ands r0, r2
- cmp r0, 0
- bne _08126DC0
-_08126DBC:
- movs r0, 0x16
- b _08126DC2
-_08126DC0:
- movs r0, 0x15
-_08126DC2:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end GetItemEffectType
-
- thumb_func_start sub_8126DC8
-sub_8126DC8: @ 8126DC8
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _08126E4C @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08126E98
- ldr r7, _08126E50 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r7, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08126E54 @ =gPlayerParty
- adds r5, r1, r0
- movs r0, 0xE
- adds r0, r7
- mov r8, r0
- ldr r1, _08126E58 @ =gStringVar1
- adds r0, r5, 0
- bl GetMonNickname
- ldr r4, _08126E5C @ =gSpecialVar_0x8005
- ldrb r0, [r4]
- bl GetMoveTutorMove
- strh r0, [r7, 0xE]
- ldr r0, _08126E60 @ =gStringVar2
- movs r1, 0xE
- ldrsh r2, [r7, r1]
- movs r1, 0xD
- muls r1, r2
- ldr r2, _08126E64 @ =gMoveNames
- adds r1, r2
- bl StringCopy
- movs r0, 0x2
- mov r1, r8
- strh r0, [r1, 0x2]
- ldrb r2, [r4]
- adds r0, r5, 0
- movs r1, 0
- bl sub_8120B20
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08126E6C
- cmp r0, 0x2
- beq _08126E74
- ldrh r1, [r7, 0xE]
- adds r0, r5, 0
- bl GiveMoveToMon
- lsls r0, 16
- ldr r1, _08126E68 @ =0xffff0000
- cmp r0, r1
- beq _08126E84
- adds r0, r6, 0
- bl sub_8125C48
- b _08126E98
- .align 2, 0
-_08126E4C: .4byte gPaletteFade
-_08126E50: .4byte gUnknown_203B0A0
-_08126E54: .4byte gPlayerParty
-_08126E58: .4byte gStringVar1
-_08126E5C: .4byte gSpecialVar_0x8005
-_08126E60: .4byte gStringVar2
-_08126E64: .4byte gMoveNames
-_08126E68: .4byte 0xffff0000
-_08126E6C:
- ldr r1, _08126E70 @ =gUnknown_8416DC2
- b _08126E76
- .align 2, 0
-_08126E70: .4byte gUnknown_8416DC2
-_08126E74:
- ldr r1, _08126E80 @ =gUnknown_8416F10
-_08126E76:
- adds r0, r6, 0
- bl sub_8125B14
- b _08126E98
- .align 2, 0
-_08126E80: .4byte gUnknown_8416F10
-_08126E84:
- ldr r0, _08126EA4 @ =gUnknown_8416DF7
- bl sub_8125AF0
- ldr r1, _08126EA8 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126EAC @ =sub_8125D88
- str r1, [r0]
-_08126E98:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126EA4: .4byte gUnknown_8416DF7
-_08126EA8: .4byte gTasks
-_08126EAC: .4byte sub_8125D88
- thumb_func_end sub_8126DC8
-
- thumb_func_start CB2_PartyMenuFromStartMenu
-CB2_PartyMenuFromStartMenu: @ 8126EB0
- push {lr}
- sub sp, 0xC
- movs r0, 0
- str r0, [sp]
- ldr r0, _08126ED4 @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _08126ED8 @ =CB2_ReturnToStartMenu
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08126ED4: .4byte sub_811FB28
-_08126ED8: .4byte CB2_ReturnToStartMenu
- thumb_func_end CB2_PartyMenuFromStartMenu
-
- thumb_func_start sub_8126EDC
-sub_8126EDC: @ 8126EDC
- push {lr}
- sub sp, 0xC
- ldr r0, _08126EF8 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl GetPocketByItemId
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x4
- beq _08126F00
- cmp r0, 0x5
- beq _08126F08
- ldr r1, _08126EFC @ =sub_8124D90
- b _08126F0A
- .align 2, 0
-_08126EF8: .4byte gSpecialVar_ItemId
-_08126EFC: .4byte sub_8124D90
-_08126F00:
- ldr r1, _08126F04 @ =sub_8124DA0
- b _08126F0A
- .align 2, 0
-_08126F04: .4byte sub_8124DA0
-_08126F08:
- ldr r1, _08126F30 @ =sub_8124DB0
-_08126F0A:
- movs r0, 0x6
- str r0, [sp]
- ldr r0, _08126F34 @ =sub_811FB28
- str r0, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0x5
- movs r3, 0
- bl PartyMenuInit
- ldr r1, _08126F38 @ =gUnknown_203B0A0
- ldr r0, _08126F3C @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- strh r0, [r1, 0xC]
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08126F30: .4byte sub_8124DB0
-_08126F34: .4byte sub_811FB28
-_08126F38: .4byte gUnknown_203B0A0
-_08126F3C: .4byte gSpecialVar_ItemId
- thumb_func_end sub_8126EDC
-
- thumb_func_start sub_8126F40
-sub_8126F40: @ 8126F40
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r6, r4, 0
- ldr r5, _08126F80 @ =gUnknown_203B0D8
- ldr r0, _08126F84 @ =gUnknown_203B0A0
- mov r9, r0
- ldrb r0, [r0, 0x9]
- lsls r0, 24
- asrs r0, 24
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r7, _08126F88 @ =gPlayerParty
- adds r0, r7
- movs r1, 0xC
- bl GetMonData
- strh r0, [r5]
- lsls r0, 16
- cmp r0, 0
- bne _08126F8C
- adds r0, r4, 0
- bl sub_8126FD8
- b _08126FC4
- .align 2, 0
-_08126F80: .4byte gUnknown_203B0D8
-_08126F84: .4byte gUnknown_203B0A0
-_08126F88: .4byte gPlayerParty
-_08126F8C:
- ldrh r0, [r5]
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _08126FA0
- adds r0, r4, 0
- bl sub_812734C
- b _08126FC4
-_08126FA0:
- mov r1, r9
- movs r0, 0x9
- ldrsb r0, [r1, r0]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r7
- ldrh r1, [r5]
- movs r2, 0x1
- bl sub_812050C
- ldr r1, _08126FD0 @ =gTasks
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- adds r0, r1
- ldr r1, _08126FD4 @ =sub_8127234
- str r1, [r0]
-_08126FC4:
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08126FD0: .4byte gTasks
-_08126FD4: .4byte sub_8127234
- thumb_func_end sub_8126F40
-
- thumb_func_start sub_8126FD8
-sub_8126FD8: @ 8126FD8
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r5, _08127004 @ =gUnknown_203B0A0
- ldrh r0, [r5, 0xC]
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _08127010
- ldrh r0, [r5, 0xC]
- bl sub_8127384
- ldr r0, _08127008 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _0812700C @ =sub_81270E0
- str r0, [r1, 0x4]
- adds r0, r4, 0
- bl sub_811FA78
- b _08127016
- .align 2, 0
-_08127004: .4byte gUnknown_203B0A0
-_08127008: .4byte gUnknown_203B09C
-_0812700C: .4byte sub_81270E0
-_08127010:
- adds r0, r4, 0
- bl sub_812701C
-_08127016:
- pop {r4,r5}
- pop {r0}
- bx r0
- thumb_func_end sub_8126FD8
-
- thumb_func_start sub_812701C
-sub_812701C: @ 812701C
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- lsls r0, 24
- lsrs r7, r0, 24
- ldr r0, _08127084 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08127078
- ldr r4, _08127088 @ =gUnknown_203B0A0
- ldrh r5, [r4, 0xC]
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- movs r1, 0x64
- mov r8, r1
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- ldr r6, _0812708C @ =gPlayerParty
- adds r0, r6
- adds r1, r5, 0
- movs r2, 0
- movs r3, 0x1
- bl sub_8120420
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- mov r1, r8
- muls r1, r0
- adds r0, r1, 0
- adds r0, r6
- adds r1, r5, 0
- bl sub_81205C8
- adds r0, r5, 0
- bl sub_8127384
- ldr r1, _08127090 @ =gTasks
- lsls r0, r7, 2
- adds r0, r7
- lsls r0, 3
- adds r0, r1
- ldr r1, _08127094 @ =sub_8127098
- str r1, [r0]
-_08127078:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08127084: .4byte gPaletteFade
-_08127088: .4byte gUnknown_203B0A0
-_0812708C: .4byte gPlayerParty
-_08127090: .4byte gTasks
-_08127094: .4byte sub_8127098
- thumb_func_end sub_812701C
-
- thumb_func_start sub_8127098
-sub_8127098: @ 8127098
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r0, _081270D4 @ =gUnknown_203B0A0
- ldrb r4, [r0, 0x9]
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081270CC
- lsls r2, r4, 24
- asrs r2, 24
- movs r0, 0x64
- muls r0, r2
- ldr r1, _081270D8 @ =gPlayerParty
- adds r0, r1
- ldr r1, _081270DC @ =gUnknown_203B0B4
- lsls r2, 4
- ldr r1, [r1]
- adds r1, r2
- bl sub_81224B4
- adds r0, r5, 0
- bl sub_811FA78
-_081270CC:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_081270D4: .4byte gUnknown_203B0A0
-_081270D8: .4byte gPlayerParty
-_081270DC: .4byte gUnknown_203B0B4
- thumb_func_end sub_8127098
-
- thumb_func_start sub_81270E0
-sub_81270E0: @ 81270E0
- push {r4-r6,lr}
- ldr r4, _08127128 @ =gUnknown_203B0A0
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- movs r6, 0x64
- muls r0, r6
- ldr r5, _0812712C @ =gPlayerParty
- adds r0, r5
- ldrh r1, [r4, 0xC]
- bl sub_81205C8
- movs r0, 0x9
- ldrsb r0, [r4, r0]
- muls r0, r6
- adds r0, r5
- movs r1, 0x40
- bl GetMonData
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08127130 @ =gSaveBlock1Ptr
- lsls r2, r0, 3
- adds r2, r0
- lsls r2, 2
- ldr r0, _08127134 @ =0x00002cd0
- adds r2, r0
- ldr r1, [r1]
- adds r1, r2
- ldr r2, _08127138 @ =sub_812713C
- movs r0, 0x4
- bl sub_80FEBAC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08127128: .4byte gUnknown_203B0A0
-_0812712C: .4byte gPlayerParty
-_08127130: .4byte gSaveBlock1Ptr
-_08127134: .4byte 0x00002cd0
-_08127138: .4byte sub_812713C
- thumb_func_end sub_81270E0
-
- thumb_func_start sub_812713C
-sub_812713C: @ 812713C
- push {r4-r7,lr}
- sub sp, 0xC
- ldr r6, _0812718C @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r6, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08127190 @ =gPlayerParty
- adds r5, r1, r0
- adds r0, r5, 0
- movs r1, 0xC
- bl GetMonData
- lsls r0, 16
- lsrs r7, r0, 16
- ldr r0, _08127194 @ =gSpecialVar_Result
- ldrh r0, [r0]
- cmp r0, 0
- bne _0812719C
- adds r0, r5, 0
- bl TakeMailFromMon
- ldr r4, _08127198 @ =gUnknown_203B0D8
- adds r0, r5, 0
- movs r1, 0xC
- adds r2, r4, 0
- bl SetMonData
- ldrh r0, [r4]
- movs r1, 0x1
- bl RemoveBagItem
- adds r0, r7, 0
- bl sub_81273AC
- ldr r0, [r6]
- bl SetMainCallback2
- b _081271B8
- .align 2, 0
-_0812718C: .4byte gUnknown_203B0A0
-_08127190: .4byte gPlayerParty
-_08127194: .4byte gSpecialVar_Result
-_08127198: .4byte gUnknown_203B0D8
-_0812719C:
- ldrb r0, [r6, 0x8]
- lsls r0, 28
- lsrs r0, 28
- ldrb r2, [r6, 0xB]
- movs r1, 0x7F
- str r1, [sp]
- ldr r1, _081271C0 @ =sub_81271C4
- str r1, [sp, 0x4]
- ldr r1, [r6]
- str r1, [sp, 0x8]
- movs r1, 0xFF
- movs r3, 0x1
- bl PartyMenuInit
-_081271B8:
- add sp, 0xC
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_081271C0: .4byte sub_81271C4
- thumb_func_end sub_812713C
-
- thumb_func_start sub_81271C4
-sub_81271C4: @ 81271C4
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081271EC @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _0812721E
- ldr r1, _081271F0 @ =gUnknown_203B0D8
- ldrh r0, [r1]
- cmp r0, 0
- beq _081271F8
- ldr r0, _081271F4 @ =gUnknown_203B0A0
- ldrh r0, [r0, 0xC]
- ldrh r1, [r1]
- movs r2, 0
- bl sub_8120558
- b _08127210
- .align 2, 0
-_081271EC: .4byte gPaletteFade
-_081271F0: .4byte gUnknown_203B0D8
-_081271F4: .4byte gUnknown_203B0A0
-_081271F8:
- ldr r2, _08127224 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r2, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _08127228 @ =gPlayerParty
- adds r0, r1
- ldrh r1, [r2, 0xC]
- movs r2, 0
- movs r3, 0x1
- bl sub_8120420
-_08127210:
- ldr r0, _0812722C @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08127230 @ =sub_8127098
- str r0, [r1]
-_0812721E:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127224: .4byte gUnknown_203B0A0
-_08127228: .4byte gPlayerParty
-_0812722C: .4byte gTasks
-_08127230: .4byte sub_8127098
- thumb_func_end sub_81271C4
-
- thumb_func_start sub_8127234
-sub_8127234: @ 8127234
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl sub_8120370
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08127258
- bl sub_812200C
- ldr r0, _08127260 @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _08127264 @ =sub_8127268
- str r0, [r1]
-_08127258:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127260: .4byte gTasks
-_08127264: .4byte sub_8127268
- thumb_func_end sub_8127234
-
- thumb_func_start sub_8127268
-sub_8127268: @ 8127268
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- bl Menu_ProcessInputNoWrapClearOnChoose
- lsls r0, 24
- asrs r1, r0, 24
- cmp r1, 0
- beq _0812728E
- cmp r1, 0
- bgt _08127288
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _08127328
- b _0812733C
-_08127288:
- cmp r1, 0x1
- beq _0812732E
- b _0812733C
-_0812728E:
- ldr r7, _081272C0 @ =gUnknown_203B0A0
- ldrh r4, [r7, 0xC]
- adds r0, r4, 0
- bl sub_8127384
- ldr r6, _081272C4 @ =gUnknown_203B0D8
- ldrh r0, [r6]
- movs r1, 0x1
- bl AddBagItem
- lsls r0, 24
- cmp r0, 0
- bne _081272CC
- adds r0, r4, 0
- bl sub_81273AC
- ldrh r0, [r6]
- bl sub_8120658
- ldr r0, _081272C8 @ =gStringVar4
- movs r1, 0
- bl sub_81202F8
- b _0812730C
- .align 2, 0
-_081272C0: .4byte gUnknown_203B0A0
-_081272C4: .4byte gUnknown_203B0D8
-_081272C8: .4byte gStringVar4
-_081272CC:
- adds r0, r4, 0
- bl ItemIsMail
- lsls r0, 24
- cmp r0, 0
- beq _081272F0
- ldr r0, _081272E8 @ =gUnknown_203B09C
- ldr r1, [r0]
- ldr r0, _081272EC @ =sub_81270E0
- str r0, [r1, 0x4]
- adds r0, r5, 0
- bl sub_811FA78
- b _0812733C
- .align 2, 0
-_081272E8: .4byte gUnknown_203B09C
-_081272EC: .4byte sub_81270E0
-_081272F0:
- movs r1, 0x9
- ldrsb r1, [r7, r1]
- movs r0, 0x64
- muls r0, r1
- ldr r1, _0812731C @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- bl sub_81205C8
- ldrh r1, [r6]
- adds r0, r4, 0
- movs r2, 0x1
- bl sub_8120558
-_0812730C:
- ldr r1, _08127320 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _08127324 @ =sub_8127098
- str r1, [r0]
- b _0812733C
- .align 2, 0
-_0812731C: .4byte gPlayerParty
-_08127320: .4byte gTasks
-_08127324: .4byte sub_8127098
-_08127328:
- movs r0, 0x5
- bl PlaySE
-_0812732E:
- ldr r0, _08127344 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _08127348 @ =sub_8127098
- str r0, [r1]
-_0812733C:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08127344: .4byte gTasks
-_08127348: .4byte sub_8127098
- thumb_func_end sub_8127268
-
- thumb_func_start sub_812734C
-sub_812734C: @ 812734C
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- ldr r0, _08127378 @ =gUnknown_8416BFB
- movs r1, 0x1
- bl sub_81202F8
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r1, _0812737C @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _08127380 @ =sub_8127098
- str r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127378: .4byte gUnknown_8416BFB
-_0812737C: .4byte gTasks
-_08127380: .4byte sub_8127098
- thumb_func_end sub_812734C
-
- thumb_func_start sub_8127384
-sub_8127384: @ 8127384
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _0812739C @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x6
- bne _081273A0
- adds r0, r1, 0
- movs r1, 0x1
- bl RemoveItemFromPC
- b _081273A8
- .align 2, 0
-_0812739C: .4byte gUnknown_203B0A0
-_081273A0:
- adds r0, r1, 0
- movs r1, 0x1
- bl RemoveBagItem
-_081273A8:
- pop {r0}
- bx r0
- thumb_func_end sub_8127384
-
- thumb_func_start sub_81273AC
-sub_81273AC: @ 81273AC
- push {lr}
- lsls r0, 16
- lsrs r1, r0, 16
- ldr r0, _081273C4 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x5
- beq _081273C8
- adds r0, r1, 0
- movs r1, 0x1
- bl AddPCItem
- b _081273D0
- .align 2, 0
-_081273C4: .4byte gUnknown_203B0A0
-_081273C8:
- adds r0, r1, 0
- movs r1, 0x1
- bl AddBagItem
-_081273D0:
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- thumb_func_end sub_81273AC
-
- thumb_func_start PartyMenuInit_FromPlayerPc
-PartyMenuInit_FromPlayerPc: @ 81273D8
- push {lr}
- sub sp, 0xC
- movs r0, 0x6
- str r0, [sp]
- ldr r0, _081273FC @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _08127400 @ =CB2_PlayerPC_ReturnFromPartyMenu
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0x7
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_081273FC: .4byte sub_811FB28
-_08127400: .4byte CB2_PlayerPC_ReturnFromPartyMenu
- thumb_func_end PartyMenuInit_FromPlayerPc
-
- thumb_func_start sub_8127404
-sub_8127404: @ 8127404
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r6, r0, 24
- ldr r0, _08127450 @ =gUnknown_203B0A0
- movs r1, 0x9
- ldrsb r1, [r0, r1]
- movs r0, 0x64
- muls r1, r0
- ldr r0, _08127454 @ =gPlayerParty
- adds r5, r1, r0
- ldr r1, _08127458 @ =gUnknown_203B0C0
- movs r0, 0
- strb r0, [r1]
- ldr r2, _0812745C @ =gSaveBlock1Ptr
- ldr r0, _08127460 @ =gPlayerPcMenuManager
- ldrh r1, [r0]
- adds r1, 0x6
- ldrh r0, [r0, 0x2]
- adds r1, r0
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _08127464 @ =0x00002cd0
- adds r0, r1
- ldr r1, [r2]
- adds r4, r1, r0
- adds r0, r5, 0
- movs r1, 0xC
- bl GetMonData
- cmp r0, 0
- beq _0812746C
- ldr r0, _08127468 @ =gUnknown_8416D17
- movs r1, 0x1
- bl sub_81202F8
- b _08127482
- .align 2, 0
-_08127450: .4byte gUnknown_203B0A0
-_08127454: .4byte gPlayerParty
-_08127458: .4byte gUnknown_203B0C0
-_0812745C: .4byte gSaveBlock1Ptr
-_08127460: .4byte gPlayerPcMenuManager
-_08127464: .4byte 0x00002cd0
-_08127468: .4byte gUnknown_8416D17
-_0812746C:
- adds r0, r5, 0
- adds r1, r4, 0
- bl GiveMailToMon2
- adds r0, r4, 0
- bl ClearMailStruct
- ldr r0, _0812749C @ =gUnknown_8416D4F
- movs r1, 0x1
- bl sub_81202F8
-_08127482:
- movs r0, 0x2
- bl ScheduleBgCopyTilemapToVram
- ldr r0, _081274A0 @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
- lsls r1, 3
- adds r1, r0
- ldr r0, _081274A4 @ =sub_8127098
- str r0, [r1]
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0812749C: .4byte gUnknown_8416D4F
-_081274A0: .4byte gTasks
-_081274A4: .4byte sub_8127098
- thumb_func_end sub_8127404
-
- thumb_func_start sub_81274A8
-sub_81274A8: @ 81274A8
- push {r4,lr}
- sub sp, 0xC
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- bl sub_81274FC
- movs r0, 0
- str r0, [sp]
- ldr r0, _081274EC @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _081274F0 @ =gMain
- ldr r0, [r0, 0x8]
- str r0, [sp, 0x8]
- movs r0, 0x4
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl PartyMenuInit
- ldr r1, _081274F4 @ =gUnknown_203B0A0
- lsls r4, 6
- ldrb r2, [r1, 0x8]
- movs r0, 0x3F
- ands r0, r2
- orrs r0, r4
- strb r0, [r1, 0x8]
- ldr r0, _081274F8 @ =sub_812773C
- str r0, [r1, 0x4]
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081274EC: .4byte sub_811FB28
-_081274F0: .4byte gMain
-_081274F4: .4byte gUnknown_203B0A0
-_081274F8: .4byte sub_812773C
- thumb_func_end sub_81274A8
-
- thumb_func_start sub_81274FC
-sub_81274FC: @ 81274FC
- push {lr}
- ldr r0, _0812750C @ =gSelectedOrderFromParty
- movs r1, 0
- movs r2, 0x3
- bl memset
- pop {r0}
- bx r0
- .align 2, 0
-_0812750C: .4byte gSelectedOrderFromParty
- thumb_func_end sub_81274FC
-
- thumb_func_start sub_8127510
-sub_8127510: @ 8127510
- push {r4,lr}
- lsls r0, 24
- asrs r4, r0, 24
- movs r0, 0x64
- muls r0, r4
- ldr r1, _0812752C @ =gPlayerParty
- adds r0, r1
- bl sub_8127550
- lsls r0, 24
- cmp r0, 0
- bne _08127530
- movs r0, 0x2
- b _08127548
- .align 2, 0
-_0812752C: .4byte gPlayerParty
-_08127530:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r0, 24
- bl sub_8127710
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08127546
- movs r0, 0
- b _08127548
-_08127546:
- movs r0, 0x1
-_08127548:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8127510
-
- thumb_func_start sub_8127550
-sub_8127550: @ 8127550
- push {r4,r5,lr}
- adds r4, r0, 0
- movs r5, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- bne _0812757A
- ldr r0, _08127580 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- lsrs r1, r0, 6
- cmp r1, 0
- beq _08127584
- cmp r1, 0x1
- beq _08127592
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x1E
- bls _081275E0
-_0812757A:
- movs r0, 0
- b _081275E2
- .align 2, 0
-_08127580: .4byte gUnknown_203B0A0
-_08127584:
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _081275E0
- b _0812757A
-_08127592:
- ldr r0, _081275E8 @ =gSaveBlock2Ptr
- ldr r0, [r0]
- ldr r2, _081275EC @ =0x0000055c
- adds r0, r2
- ldrb r0, [r0]
- ands r1, r0
- cmp r1, 0
- bne _081275AE
- adds r0, r4, 0
- movs r1, 0x38
- bl GetMonData
- cmp r0, 0x32
- bhi _0812757A
-_081275AE:
- adds r0, r4, 0
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r4, r0, 16
- ldr r3, _081275F0 @ =gBattleTowerBannedSpecies
- lsls r1, r5, 1
- adds r0, r1, r3
- ldrh r0, [r0]
- ldr r2, _081275F4 @ =0x0000ffff
- cmp r0, r2
- beq _081275E0
-_081275C8:
- adds r0, r1, r3
- ldrh r0, [r0]
- cmp r0, r4
- beq _0812757A
- adds r0, r5, 0x1
- lsls r0, 16
- lsrs r5, r0, 16
- lsls r1, r5, 1
- adds r0, r1, r3
- ldrh r0, [r0]
- cmp r0, r2
- bne _081275C8
-_081275E0:
- movs r0, 0x1
-_081275E2:
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_081275E8: .4byte gSaveBlock2Ptr
-_081275EC: .4byte 0x0000055c
-_081275F0: .4byte gBattleTowerBannedSpecies
-_081275F4: .4byte 0x0000ffff
- thumb_func_end sub_8127550
-
- thumb_func_start sub_81275F8
-sub_81275F8: @ 81275F8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r0, _08127618 @ =gPlayerParty
- mov r10, r0
- ldr r0, _0812761C @ =gUnknown_203B0A0
- ldrb r0, [r0, 0x8]
- lsrs r0, 6
- cmp r0, 0x1
- beq _08127620
- cmp r0, 0x2
- beq _081276E8
- b _08127700
- .align 2, 0
-_08127618: .4byte gPlayerParty
-_0812761C: .4byte gUnknown_203B0A0
-_08127620:
- ldr r1, _0812762C @ =gSelectedOrderFromParty
- ldrb r0, [r1, 0x2]
- cmp r0, 0
- bne _08127630
- movs r0, 0x11
- b _08127702
- .align 2, 0
-_0812762C: .4byte gSelectedOrderFromParty
-_08127630:
- movs r5, 0
-_08127632:
- ldr r2, _081276DC @ =gSelectedOrderFromParty
- adds r4, r2, r5
- ldrb r0, [r4]
- movs r1, 0x64
- muls r0, r1
- subs r0, 0x64
- add r0, r10
- movs r1, 0xB
- bl GetMonData
- ldr r2, _081276E0 @ =gUnknown_203B09C
- ldr r1, [r2]
- ldr r2, _081276E4 @ =0x00000236
- adds r1, r2
- strh r0, [r1]
- ldrb r0, [r4]
- movs r1, 0x64
- muls r0, r1
- subs r0, 0x64
- add r0, r10
- movs r1, 0xC
- bl GetMonData
- ldr r2, _081276E0 @ =gUnknown_203B09C
- ldr r1, [r2]
- movs r2, 0x8D
- lsls r2, 2
- adds r1, r2
- strh r0, [r1]
- adds r1, r5, 0x1
- lsls r0, r1, 24
- lsrs r5, r0, 24
- mov r9, r1
- cmp r5, 0x2
- bhi _081276D0
- ldr r0, _081276E0 @ =gUnknown_203B09C
- mov r8, r0
- movs r7, 0x64
-_0812767E:
- mov r1, r8
- ldr r0, [r1]
- ldr r2, _081276E4 @ =0x00000236
- adds r0, r2
- movs r1, 0
- ldrsh r4, [r0, r1]
- ldr r2, _081276DC @ =gSelectedOrderFromParty
- adds r6, r2, r5
- ldrb r0, [r6]
- muls r0, r7
- subs r0, 0x64
- add r0, r10
- movs r1, 0xB
- bl GetMonData
- cmp r4, r0
- beq _081276F8
- mov r1, r8
- ldr r0, [r1]
- movs r2, 0x8D
- lsls r2, 2
- adds r1, r0, r2
- movs r2, 0
- ldrsh r0, [r1, r2]
- cmp r0, 0
- beq _081276C6
- adds r4, r0, 0
- ldrb r0, [r6]
- muls r0, r7
- subs r0, 0x64
- add r0, r10
- movs r1, 0xC
- bl GetMonData
- cmp r4, r0
- beq _081276FC
-_081276C6:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- cmp r5, 0x2
- bls _0812767E
-_081276D0:
- mov r1, r9
- lsls r0, r1, 24
- lsrs r5, r0, 24
- cmp r5, 0x1
- bls _08127632
- b _08127700
- .align 2, 0
-_081276DC: .4byte gSelectedOrderFromParty
-_081276E0: .4byte gUnknown_203B09C
-_081276E4: .4byte 0x00000236
-_081276E8:
- ldr r2, _081276F4 @ =gSelectedOrderFromParty
- ldrb r0, [r2, 0x1]
- cmp r0, 0
- bne _08127700
- movs r0, 0x12
- b _08127702
- .align 2, 0
-_081276F4: .4byte gSelectedOrderFromParty
-_081276F8:
- movs r0, 0x13
- b _08127702
-_081276FC:
- movs r0, 0x14
- b _08127702
-_08127700:
- movs r0, 0xFF
-_08127702:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_81275F8
-
- thumb_func_start sub_8127710
-sub_8127710: @ 8127710
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0
- ldr r3, _08127728 @ =gSelectedOrderFromParty
-_0812771A:
- adds r0, r1, r3
- ldrb r0, [r0]
- cmp r0, r2
- bne _0812772C
- movs r0, 0x1
- b _08127738
- .align 2, 0
-_08127728: .4byte gSelectedOrderFromParty
-_0812772C:
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x2
- bls _0812771A
- movs r0, 0
-_08127738:
- pop {r1}
- bx r1
- thumb_func_end sub_8127710
-
- thumb_func_start sub_812773C
-sub_812773C: @ 812773C
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- adds r6, r5, 0
- bl sub_81275F8
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0xFF
- beq _08127768
- movs r0, 0x1A
- bl PlaySE
- adds r0, r4, 0
- bl sub_8121D0C
- ldr r0, _08127764 @ =gTasks
- lsls r1, r5, 2
- adds r1, r5
- b _08127796
- .align 2, 0
-_08127764: .4byte gTasks
-_08127768:
- ldr r0, _08127780 @ =gSelectedOrderFromParty
- ldrb r0, [r0]
- cmp r0, 0
- beq _08127784
- movs r0, 0x5
- bl PlaySE
- adds r0, r5, 0
- bl sub_811FA78
- b _0812779E
- .align 2, 0
-_08127780: .4byte gSelectedOrderFromParty
-_08127784:
- movs r0, 0x1A
- bl PlaySE
- movs r0, 0xE
- bl sub_8121D0C
- ldr r0, _081277A4 @ =gTasks
- lsls r1, r6, 2
- adds r1, r6
-_08127796:
- lsls r1, 3
- adds r1, r0
- ldr r0, _081277A8 @ =sub_81277AC
- str r0, [r1]
-_0812779E:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081277A4: .4byte gTasks
-_081277A8: .4byte sub_81277AC
- thumb_func_end sub_812773C
-
- thumb_func_start sub_81277AC
-sub_81277AC: @ 81277AC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _081277E8 @ =gMain
- ldrh r1, [r0, 0x2E]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _081277C6
- movs r0, 0x2
- ands r0, r1
- cmp r0, 0
- beq _081277E0
-_081277C6:
- movs r0, 0x5
- bl PlaySE
- movs r0, 0
- bl sub_8121D0C
- ldr r0, _081277EC @ =gTasks
- lsls r1, r4, 2
- adds r1, r4
- lsls r1, 3
- adds r1, r0
- ldr r0, _081277F0 @ =sub_811FB28
- str r0, [r1]
-_081277E0:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081277E8: .4byte gMain
-_081277EC: .4byte gTasks
-_081277F0: .4byte sub_811FB28
- thumb_func_end sub_81277AC
-
- thumb_func_start sub_81277F4
-sub_81277F4: @ 81277F4
- push {lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- movs r2, 0
- str r2, [sp]
- ldr r2, _08127818 @ =sub_811FB28
- str r2, [sp, 0x4]
- str r1, [sp, 0x8]
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08127818: .4byte sub_811FB28
- thumb_func_end sub_81277F4
-
- thumb_func_start sub_812781C
-sub_812781C: @ 812781C
- push {lr}
- sub sp, 0xC
- ldr r0, _08127844 @ =gSpecialVar_0x8005
- ldrh r0, [r0]
- cmp r0, 0xE
- bhi _08127850
- movs r0, 0x4
- str r0, [sp]
- ldr r0, _08127848 @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _0812784C @ =CB2_ReturnToFieldContinueScriptPlayMapMusic
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0xC
- movs r3, 0
- bl PartyMenuInit
- b _08127870
- .align 2, 0
-_08127844: .4byte gSpecialVar_0x8005
-_08127848: .4byte sub_811FB28
-_0812784C: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
-_08127850:
- movs r0, 0x7F
- str r0, [sp]
- ldr r0, _08127878 @ =sub_8126DC8
- str r0, [sp, 0x4]
- ldr r0, _0812787C @ =CB2_ReturnToFieldContinueScriptPlayMapMusic
- str r0, [sp, 0x8]
- movs r0, 0
- movs r1, 0
- movs r2, 0xC
- movs r3, 0
- bl PartyMenuInit
- ldr r1, _08127880 @ =gUnknown_203B0A0
- ldr r0, _08127884 @ =gSpecialVar_0x8007
- ldrh r0, [r0]
- strb r0, [r1, 0x9]
-_08127870:
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08127878: .4byte sub_8126DC8
-_0812787C: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
-_08127880: .4byte gUnknown_203B0A0
-_08127884: .4byte gSpecialVar_0x8007
- thumb_func_end sub_812781C
-
- thumb_func_start sub_8127888
-sub_8127888: @ 8127888
- push {lr}
- sub sp, 0xC
- movs r0, 0x1
- str r0, [sp]
- ldr r0, _081278AC @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _081278B0 @ =CB2_ReturnToFieldContinueScriptPlayMapMusic
- str r0, [sp, 0x8]
- movs r0, 0xB
- movs r1, 0
- movs r2, 0xD
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_081278AC: .4byte sub_811FB28
-_081278B0: .4byte CB2_ReturnToFieldContinueScriptPlayMapMusic
- thumb_func_end sub_8127888
-
- thumb_func_start sub_81278B4
-sub_81278B4: @ 81278B4
- push {lr}
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _081278C4
- movs r0, 0
- b _081278D6
-_081278C4:
- bl IsMultiBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _081278D4
- movs r0, 0x1
- b _081278D6
-_081278D4:
- movs r0, 0x2
-_081278D6:
- pop {r1}
- bx r1
- thumb_func_end sub_81278B4
-
- thumb_func_start OpenPartyMenuInBattle
-OpenPartyMenuInBattle: @ 81278DC
- push {r4,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x8
- bl sub_80EB2E0
- lsls r0, 24
- cmp r0, 0
- bne _08127930
- ldr r0, _08127924 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08127930
- bl sub_81278B4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x7F
- str r0, [sp]
- ldr r0, _08127928 @ =sub_8120C3C
- str r0, [sp, 0x4]
- ldr r0, _0812792C @ =SetCB2ToReshowScreenAfterMenu
- str r0, [sp, 0x8]
- movs r0, 0x1
- adds r2, r4, 0
- movs r3, 0
- bl PartyMenuInit
- movs r0, 0x8
- bl sub_80EB2F4
- b _08127950
- .align 2, 0
-_08127924: .4byte gBattleTypeFlags
-_08127928: .4byte sub_8120C3C
-_0812792C: .4byte SetCB2ToReshowScreenAfterMenu
-_08127930:
- bl sub_81278B4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- str r0, [sp]
- ldr r0, _08127960 @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _08127964 @ =SetCB2ToReshowScreenAfterMenu
- str r0, [sp, 0x8]
- movs r0, 0x1
- adds r2, r4, 0
- movs r3, 0
- bl PartyMenuInit
-_08127950:
- bl nullsub_44
- bl pokemon_change_order
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127960: .4byte sub_811FB28
-_08127964: .4byte SetCB2ToReshowScreenAfterMenu
- thumb_func_end OpenPartyMenuInBattle
-
- thumb_func_start sub_8127968
-sub_8127968: @ 8127968
- push {lr}
- sub sp, 0xC
- bl sub_81278B4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0
- str r0, [sp]
- ldr r0, _0812799C @ =sub_8120EBC
- str r0, [sp, 0x4]
- ldr r0, _081279A0 @ =SetCB2ToReshowScreenAfterMenu
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0
- movs r3, 0
- bl PartyMenuInit
- bl nullsub_44
- bl pokemon_change_order
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_0812799C: .4byte sub_8120EBC
-_081279A0: .4byte SetCB2ToReshowScreenAfterMenu
- thumb_func_end sub_8127968
-
- thumb_func_start sub_81279A4
-sub_81279A4: @ 81279A4
- push {lr}
- sub sp, 0xC
- bl sub_81278B4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x5
- str r0, [sp]
- ldr r0, _081279D8 @ =sub_8120FCC
- str r0, [sp, 0x4]
- ldr r0, _081279DC @ =sub_8107ECC
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0xE
- movs r3, 0
- bl PartyMenuInit
- bl nullsub_44
- bl pokemon_change_order
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_081279D8: .4byte sub_8120FCC
-_081279DC: .4byte sub_8107ECC
- thumb_func_end sub_81279A4
-
- thumb_func_start sub_81279E0
-sub_81279E0: @ 81279E0
- push {r4,lr}
- sub sp, 0xC
- movs r0, 0x8
- bl sub_80EB2E0
- lsls r0, 24
- cmp r0, 0
- bne _08127A30
- ldr r0, _08127A24 @ =gBattleTypeFlags
- ldr r0, [r0]
- movs r1, 0x10
- ands r0, r1
- cmp r0, 0
- beq _08127A30
- bl sub_81278B4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x7F
- str r0, [sp]
- ldr r0, _08127A28 @ =sub_8120C3C
- str r0, [sp, 0x4]
- ldr r0, _08127A2C @ =sub_8107ECC
- str r0, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0x3
- movs r3, 0
- bl PartyMenuInit
- movs r0, 0x8
- bl sub_80EB2F4
- b _08127A62
- .align 2, 0
-_08127A24: .4byte gBattleTypeFlags
-_08127A28: .4byte sub_8120C3C
-_08127A2C: .4byte sub_8107ECC
-_08127A30:
- ldr r0, _08127A74 @ =gSpecialVar_ItemId
- ldrh r0, [r0]
- bl GetPocketByItemId
- lsls r0, 24
- lsrs r0, 24
- ldr r4, _08127A78 @ =sub_8107ECC
- cmp r0, 0x5
- bne _08127A44
- ldr r4, _08127A7C @ =sub_8124DB0
-_08127A44:
- bl sub_81278B4
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- movs r0, 0x5
- str r0, [sp]
- ldr r0, _08127A80 @ =sub_811FB28
- str r0, [sp, 0x4]
- str r4, [sp, 0x8]
- movs r0, 0x1
- movs r2, 0x3
- movs r3, 0
- bl PartyMenuInit
-_08127A62:
- bl nullsub_44
- bl pokemon_change_order
- add sp, 0xC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127A74: .4byte gSpecialVar_ItemId
-_08127A78: .4byte sub_8107ECC
-_08127A7C: .4byte sub_8124DB0
-_08127A80: .4byte sub_811FB28
- thumb_func_end sub_81279E0
-
- thumb_func_start sub_8127A84
-sub_8127A84: @ 8127A84
- push {r4,lr}
- adds r4, r0, 0
- ldr r0, _08127AA4 @ =gPlayerParty + 100 @ &gPlayerParty[1]
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08127AA0
- adds r0, r4, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _08127AA8
-_08127AA0:
- movs r0, 0x7
- b _08127ABA
- .align 2, 0
-_08127AA4: .4byte gPlayerParty + 100 @ &gPlayerParty[1]
-_08127AA8:
- ldr r0, _08127AB4 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x1
- beq _08127AB8
- movs r0, 0x2
- b _08127ABA
- .align 2, 0
-_08127AB4: .4byte gUnknown_203B0A0
-_08127AB8:
- movs r0, 0x3
-_08127ABA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_8127A84
-
- thumb_func_start sub_8127AC0
-sub_8127AC0: @ 8127AC0
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- bl GetCursorSelectionMonId
- lsls r0, 24
- lsrs r5, r0, 24
- bl IsMultiBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08127B08
- cmp r5, 0x1
- beq _08127AE6
- cmp r5, 0x4
- beq _08127AE6
- cmp r5, 0x5
- bne _08127B08
-_08127AE6:
- ldr r4, _08127AFC @ =gStringVar1
- bl GetTrainerPartnerName
- adds r1, r0, 0
- adds r0, r4, 0
- bl StringCopy
- ldr r0, _08127B00 @ =gStringVar4
- ldr r1, _08127B04 @ =gUnknown_8416A98
- b _08127C86
- .align 2, 0
-_08127AFC: .4byte gStringVar1
-_08127B00: .4byte gStringVar4
-_08127B04: .4byte gUnknown_8416A98
-_08127B08:
- movs r0, 0x64
- adds r1, r5, 0
- muls r1, r0
- ldr r0, _08127B2C @ =gPlayerParty
- adds r4, r1, r0
- adds r0, r4, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- bne _08127B3C
- ldr r1, _08127B30 @ =gStringVar1
- adds r0, r4, 0
- bl GetMonNickname
- ldr r0, _08127B34 @ =gStringVar4
- ldr r1, _08127B38 @ =gUnknown_8416A75
- b _08127C86
- .align 2, 0
-_08127B2C: .4byte gPlayerParty
-_08127B30: .4byte gStringVar1
-_08127B34: .4byte gStringVar4
-_08127B38: .4byte gUnknown_8416A75
-_08127B3C:
- movs r4, 0
- b _08127B68
-_08127B40:
- adds r0, r4, 0
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _08127B62
- adds r0, r5, 0
- bl sub_8127F7C
- lsls r0, 24
- ldr r2, _08127B90 @ =gBattlerPartyIndexes
- lsls r1, r4, 1
- adds r1, r2
- lsrs r0, 24
- ldrh r1, [r1]
- cmp r0, r1
- beq _08127C40
-_08127B62:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
-_08127B68:
- ldr r0, _08127B94 @ =gBattlersCount
- ldrb r0, [r0]
- cmp r4, r0
- bcc _08127B40
- movs r7, 0x64
- adds r0, r5, 0
- muls r0, r7
- ldr r1, _08127B98 @ =gPlayerParty
- mov r8, r1
- adds r6, r0, r1
- adds r0, r6, 0
- movs r1, 0x2D
- bl GetMonData
- cmp r0, 0
- beq _08127BA4
- ldr r0, _08127B9C @ =gStringVar4
- ldr r1, _08127BA0 @ =gUnknown_8416ACB
- b _08127C86
- .align 2, 0
-_08127B90: .4byte gBattlerPartyIndexes
-_08127B94: .4byte gBattlersCount
-_08127B98: .4byte gPlayerParty
-_08127B9C: .4byte gStringVar4
-_08127BA0: .4byte gUnknown_8416ACB
-_08127BA4:
- adds r0, r5, 0
- bl sub_8127F7C
- ldr r1, _08127BC8 @ =gBattleStruct
- ldr r1, [r1]
- adds r1, 0x8B
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bne _08127BD8
- ldr r1, _08127BCC @ =gStringVar1
- adds r0, r6, 0
- bl GetMonNickname
- ldr r0, _08127BD0 @ =gStringVar4
- ldr r1, _08127BD4 @ =gUnknown_8416A55
- b _08127C86
- .align 2, 0
-_08127BC8: .4byte gBattleStruct
-_08127BCC: .4byte gStringVar1
-_08127BD0: .4byte gStringVar4
-_08127BD4: .4byte gUnknown_8416A55
-_08127BD8:
- ldr r0, _08127BE8 @ =gUnknown_203B0A0
- ldrb r0, [r0, 0xB]
- cmp r0, 0x4
- bne _08127BEC
- bl SetMonPreventsSwitchingString
- b _08127C8A
- .align 2, 0
-_08127BE8: .4byte gUnknown_203B0A0
-_08127BEC:
- cmp r0, 0x2
- beq _08127C64
- adds r0, r5, 0
- bl sub_8127F7C
- ldr r1, _08127C30 @ =gUnknown_203B0C1
- strb r0, [r1]
- ldr r1, _08127C34 @ =gUnknown_203B0C0
- movs r0, 0x1
- strb r0, [r1]
- ldr r1, _08127C38 @ =gBattlerPartyIndexes
- ldr r0, _08127C3C @ =gBattlerInMenuId
- ldrb r0, [r0]
- lsls r0, 1
- adds r0, r1
- ldrb r0, [r0]
- bl pokemon_order_func
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r4, 0
- adds r1, r5, 0
- bl sub_8127FF4
- adds r0, r4, 0
- muls r0, r7
- add r0, r8
- adds r1, r6, 0
- bl sub_811FA40
- movs r0, 0x1
- b _08127C8C
- .align 2, 0
-_08127C30: .4byte gUnknown_203B0C1
-_08127C34: .4byte gUnknown_203B0C0
-_08127C38: .4byte gBattlerPartyIndexes
-_08127C3C: .4byte gBattlerInMenuId
-_08127C40:
- movs r0, 0x64
- muls r0, r5
- ldr r1, _08127C54 @ =gPlayerParty
- adds r0, r1
- ldr r1, _08127C58 @ =gStringVar1
- bl GetMonNickname
- ldr r0, _08127C5C @ =gStringVar4
- ldr r1, _08127C60 @ =gUnknown_8416A3A
- b _08127C86
- .align 2, 0
-_08127C54: .4byte gPlayerParty
-_08127C58: .4byte gStringVar1
-_08127C5C: .4byte gStringVar4
-_08127C60: .4byte gUnknown_8416A3A
-_08127C64:
- ldr r0, _08127C98 @ =gBattlerInMenuId
- ldrb r0, [r0]
- ldr r1, _08127C9C @ =gBattlerPartyIndexes
- lsls r0, 1
- adds r0, r1
- ldrb r0, [r0]
- bl pokemon_order_func
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- add r0, r8
- ldr r1, _08127CA0 @ =gStringVar1
- bl GetMonNickname
- ldr r0, _08127CA4 @ =gStringVar4
- ldr r1, _08127CA8 @ =gUnknown_8416A1E
-_08127C86:
- bl StringExpandPlaceholders
-_08127C8A:
- movs r0, 0
-_08127C8C:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_08127C98: .4byte gBattlerInMenuId
-_08127C9C: .4byte gBattlerPartyIndexes
-_08127CA0: .4byte gStringVar1
-_08127CA4: .4byte gStringVar4
-_08127CA8: .4byte gUnknown_8416A1E
- thumb_func_end sub_8127AC0
-
- thumb_func_start sub_8127CAC
-sub_8127CAC: @ 8127CAC
- push {r4,lr}
- ldr r4, _08127CC8 @ =gUnknown_203B0DC
- bl sub_80435E0
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl sub_8127CCC
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127CC8: .4byte gUnknown_203B0DC
- thumb_func_end sub_8127CAC
-
- thumb_func_start sub_8127CCC
-sub_8127CCC: @ 8127CCC
- push {r4-r6,lr}
- sub sp, 0x8
- adds r6, r0, 0
- lsls r1, 24
- lsrs r4, r1, 24
- bl IsMultiBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08127D02
- cmp r4, 0
- beq _08127CF4
- movs r0, 0x30
- strb r0, [r6]
- movs r0, 0x45
- strb r0, [r6, 0x1]
- movs r0, 0x12
- strb r0, [r6, 0x2]
- b _08127D9C
-_08127CF4:
- movs r0, 0x3
- strb r0, [r6]
- movs r0, 0x12
- strb r0, [r6, 0x1]
- movs r0, 0x45
- strb r0, [r6, 0x2]
- b _08127D9C
-_08127D02:
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _08127D40
- movs r5, 0x1
- movs r0, 0
- bl GetBattlerAtPosition
- mov r2, sp
- ldr r1, _08127D3C @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r1
- ldrh r0, [r0]
- strb r0, [r2]
- movs r4, 0
- mov r1, sp
-_08127D26:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08127D34
- mov r2, sp
- adds r0, r2, r5
- strb r4, [r0]
- adds r5, 0x1
-_08127D34:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08127D26
- b _08127D84
- .align 2, 0
-_08127D3C: .4byte gBattlerPartyIndexes
-_08127D40:
- movs r5, 0x2
- movs r0, 0
- bl GetBattlerAtPosition
- mov r1, sp
- ldr r4, _08127DA4 @ =gBattlerPartyIndexes
- lsls r0, 24
- lsrs r0, 23
- adds r0, r4
- ldrh r0, [r0]
- strb r0, [r1]
- movs r0, 0x2
- bl GetBattlerAtPosition
- mov r1, sp
- lsls r0, 24
- lsrs r0, 23
- adds r0, r4
- ldrh r0, [r0]
- strb r0, [r1, 0x1]
- movs r4, 0
-_08127D6A:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08127D7E
- ldrb r0, [r1, 0x1]
- cmp r4, r0
- beq _08127D7E
- mov r2, sp
- adds r0, r2, r5
- strb r4, [r0]
- adds r5, 0x1
-_08127D7E:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08127D6A
-_08127D84:
- movs r4, 0
- mov r3, sp
-_08127D88:
- adds r0, r6, r4
- ldrb r1, [r3]
- lsls r1, 4
- ldrb r2, [r3, 0x1]
- orrs r1, r2
- strb r1, [r0]
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- ble _08127D88
-_08127D9C:
- add sp, 0x8
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08127DA4: .4byte gBattlerPartyIndexes
- thumb_func_end sub_8127CCC
-
- thumb_func_start sub_8127DA8
-sub_8127DA8: @ 8127DA8
- push {lr}
- adds r2, r0, 0
- lsls r2, 24
- lsrs r2, 24
- lsls r1, 24
- lsrs r1, 24
- ldr r0, _08127DC8 @ =gBattleStruct
- lsls r3, r2, 1
- adds r3, r2
- adds r3, 0x60
- ldr r0, [r0]
- adds r0, r3
- bl sub_8127DCC
- pop {r0}
- bx r0
- .align 2, 0
-_08127DC8: .4byte gBattleStruct
- thumb_func_end sub_8127DA8
-
- thumb_func_start sub_8127DCC
-sub_8127DCC: @ 8127DCC
- push {r4-r7,lr}
- sub sp, 0x8
- adds r5, r0, 0
- adds r0, r2, 0
- lsls r1, 24
- lsrs r7, r1, 24
- lsls r0, 24
- lsrs r0, 24
- bl GetBattlerSide
- lsls r0, 24
- cmp r0, 0
- bne _08127DF4
- movs r0, 0
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x2
- b _08127E00
-_08127DF4:
- movs r0, 0x1
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r4, r0, 24
- movs r0, 0x3
-_08127E00:
- bl GetBattlerAtPosition
- lsls r0, 24
- lsrs r6, r0, 24
- bl IsMultiBattle
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _08127E34
- cmp r7, 0
- beq _08127E26
- movs r0, 0x30
- strb r0, [r5]
- movs r0, 0x45
- strb r0, [r5, 0x1]
- movs r0, 0x12
- strb r0, [r5, 0x2]
- b _08127EB6
-_08127E26:
- movs r0, 0x3
- strb r0, [r5]
- movs r0, 0x12
- strb r0, [r5, 0x1]
- movs r0, 0x45
- strb r0, [r5, 0x2]
- b _08127EB6
-_08127E34:
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _08127E6C
- movs r3, 0x1
- mov r2, sp
- ldr r1, _08127E68 @ =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r1
- ldrh r0, [r0]
- strb r0, [r2]
- movs r4, 0
- mov r1, sp
-_08127E50:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08127E5E
- mov r2, sp
- adds r0, r2, r3
- strb r4, [r0]
- adds r3, 0x1
-_08127E5E:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08127E50
- b _08127E9E
- .align 2, 0
-_08127E68: .4byte gBattlerPartyIndexes
-_08127E6C:
- movs r3, 0x2
- mov r1, sp
- ldr r2, _08127EC0 @ =gBattlerPartyIndexes
- lsls r0, r4, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1]
- lsls r0, r6, 1
- adds r0, r2
- ldrh r0, [r0]
- strb r0, [r1, 0x1]
- movs r4, 0
-_08127E84:
- ldrb r0, [r1]
- cmp r4, r0
- beq _08127E98
- ldrb r0, [r1, 0x1]
- cmp r4, r0
- beq _08127E98
- mov r2, sp
- adds r0, r2, r3
- strb r4, [r0]
- adds r3, 0x1
-_08127E98:
- adds r4, 0x1
- cmp r4, 0x5
- ble _08127E84
-_08127E9E:
- movs r4, 0
- mov r3, sp
-_08127EA2:
- adds r0, r5, r4
- ldrb r1, [r3]
- lsls r1, 4
- ldrb r2, [r3, 0x1]
- orrs r1, r2
- strb r1, [r0]
- adds r3, 0x2
- adds r4, 0x1
- cmp r4, 0x2
- ble _08127EA2
-_08127EB6:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08127EC0: .4byte gBattlerPartyIndexes
- thumb_func_end sub_8127DCC
-
- thumb_func_start sub_8127EC4
-sub_8127EC4: @ 8127EC4
- push {r4-r7,lr}
- sub sp, 0x8
- lsls r0, 24
- lsrs r4, r0, 24
- lsls r1, 24
- lsrs r5, r1, 24
- lsls r2, 24
- lsrs r6, r2, 24
- movs r7, 0
- bl IsMultiBattle
- lsls r0, 24
- cmp r0, 0
- beq _08127F72
- ldr r0, _08127F28 @ =gBattleStruct
- lsls r1, r4, 1
- adds r1, r4
- adds r1, 0x60
- ldr r0, [r0]
- adds r4, r0, r1
- movs r2, 0
- add r6, sp
- mov r12, r6
- movs r6, 0xF
- mov r3, sp
-_08127EF6:
- adds r1, r4, r2
- ldrb r0, [r1]
- lsrs r0, 4
- strb r0, [r3]
- adds r3, 0x1
- ldrb r1, [r1]
- adds r0, r6, 0
- ands r0, r1
- strb r0, [r3]
- adds r3, 0x1
- adds r2, 0x1
- cmp r2, 0x2
- ble _08127EF6
- mov r0, r12
- ldrb r3, [r0]
- movs r2, 0
- mov r0, sp
- ldrb r0, [r0]
- cmp r0, r5
- bne _08127F2C
- mov r0, sp
- ldrb r7, [r0]
- strb r3, [r0]
- b _08127F40
- .align 2, 0
-_08127F28: .4byte gBattleStruct
-_08127F2C:
- adds r2, 0x1
- cmp r2, 0x5
- bgt _08127F40
- mov r0, sp
- adds r1, r0, r2
- ldrb r0, [r1]
- cmp r0, r5
- bne _08127F2C
- adds r7, r0, 0
- strb r3, [r1]
-_08127F40:
- cmp r2, 0x6
- beq _08127F72
- mov r0, r12
- strb r7, [r0]
- mov r0, sp
- ldrb r0, [r0]
- lsls r0, 4
- mov r1, sp
- ldrb r1, [r1, 0x1]
- orrs r0, r1
- strb r0, [r4]
- mov r0, sp
- ldrb r0, [r0, 0x2]
- lsls r0, 4
- mov r1, sp
- ldrb r1, [r1, 0x3]
- orrs r0, r1
- strb r0, [r4, 0x1]
- mov r0, sp
- ldrb r0, [r0, 0x4]
- lsls r0, 4
- mov r1, sp
- ldrb r1, [r1, 0x5]
- orrs r0, r1
- strb r0, [r4, 0x2]
-_08127F72:
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8127EC4
-
- thumb_func_start sub_8127F7C
-sub_8127F7C: @ 8127F7C
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- movs r1, 0x1
- ands r1, r2
- lsrs r2, r0, 25
- cmp r1, 0
- beq _08127F9C
- ldr r0, _08127F98 @ =gUnknown_203B0DC
- adds r0, r2, r0
- ldrb r0, [r0]
- movs r1, 0xF
- ands r1, r0
- b _08127FA4
- .align 2, 0
-_08127F98: .4byte gUnknown_203B0DC
-_08127F9C:
- ldr r0, _08127FAC @ =gUnknown_203B0DC
- adds r0, r2, r0
- ldrb r0, [r0]
- lsrs r1, r0, 4
-_08127FA4:
- adds r0, r1, 0
- pop {r1}
- bx r1
- .align 2, 0
-_08127FAC: .4byte gUnknown_203B0DC
- thumb_func_end sub_8127F7C
-
- thumb_func_start sub_8127FB0
-sub_8127FB0: @ 8127FB0
- push {r4,lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r1, 24
- lsrs r4, r1, 24
- movs r1, 0x1
- ands r1, r3
- lsrs r3, r0, 25
- cmp r1, 0
- beq _08127FD8
- ldr r0, _08127FD4 @ =gUnknown_203B0DC
- adds r0, r3, r0
- ldrb r2, [r0]
- movs r1, 0xF0
- ands r1, r2
- orrs r1, r4
- strb r1, [r0]
- b _08127FE8
- .align 2, 0
-_08127FD4: .4byte gUnknown_203B0DC
-_08127FD8:
- ldr r2, _08127FF0 @ =gUnknown_203B0DC
- adds r2, r3, r2
- ldrb r1, [r2]
- movs r0, 0xF
- ands r0, r1
- lsls r1, r4, 4
- orrs r0, r1
- strb r0, [r2]
-_08127FE8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08127FF0: .4byte gUnknown_203B0DC
- thumb_func_end sub_8127FB0
-
- thumb_func_start sub_8127FF4
-sub_8127FF4: @ 8127FF4
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r6, r1, 0
- lsls r5, 24
- lsrs r5, 24
- lsls r6, 24
- lsrs r6, 24
- adds r0, r5, 0
- bl sub_8127F7C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- adds r0, r6, 0
- bl sub_8127F7C
- adds r1, r0, 0
- lsls r1, 24
- lsrs r1, 24
- adds r0, r5, 0
- bl sub_8127FB0
- adds r0, r6, 0
- adds r1, r4, 0
- bl sub_8127FB0
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end sub_8127FF4
-
- thumb_func_start pokemon_order_func
-pokemon_order_func: @ 8128030
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r3, 0
- movs r2, 0
- ldr r5, _08128058 @ =gUnknown_203B0DC
-_0812803C:
- adds r0, r3, r5
- ldrb r1, [r0]
- lsrs r0, r1, 4
- cmp r0, r4
- beq _08128054
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- movs r0, 0xF
- ands r0, r1
- cmp r0, r4
- bne _0812805C
-_08128054:
- adds r0, r2, 0
- b _0812806E
- .align 2, 0
-_08128058: .4byte gUnknown_203B0DC
-_0812805C:
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- adds r0, r3, 0x1
- lsls r0, 24
- lsrs r3, r0, 24
- cmp r3, 0x2
- bls _0812803C
- movs r0, 0
-_0812806E:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end pokemon_order_func
-
- thumb_func_start pokemon_change_order
-pokemon_change_order: @ 8128074
- push {r4-r6,lr}
- movs r4, 0x96
- lsls r4, 2
- adds r0, r4, 0
- bl Alloc
- adds r5, r0, 0
- ldr r1, _081280C0 @ =gPlayerParty
- adds r2, r4, 0
- bl memcpy
- movs r4, 0
- movs r6, 0x64
-_0812808E:
- adds r0, r4, 0
- bl pokemon_order_func
- lsls r0, 24
- lsrs r0, 24
- muls r0, r6
- ldr r1, _081280C0 @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- muls r1, r6
- adds r1, r5
- movs r2, 0x64
- bl memcpy
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _0812808E
- adds r0, r5, 0
- bl Free
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_081280C0: .4byte gPlayerParty
- thumb_func_end pokemon_change_order
-
- thumb_func_start sub_81280C4
-sub_81280C4: @ 81280C4
- push {r4-r6,lr}
- movs r4, 0x96
- lsls r4, 2
- adds r0, r4, 0
- bl Alloc
- adds r5, r0, 0
- ldr r1, _08128110 @ =gPlayerParty
- adds r2, r4, 0
- bl memcpy
- movs r4, 0
- movs r6, 0x64
-_081280DE:
- adds r0, r4, 0
- bl sub_8127F7C
- lsls r0, 24
- lsrs r0, 24
- muls r0, r6
- ldr r1, _08128110 @ =gPlayerParty
- adds r0, r1
- adds r1, r4, 0
- muls r1, r6
- adds r1, r5
- movs r2, 0x64
- bl memcpy
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _081280DE
- adds r0, r5, 0
- bl Free
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08128110: .4byte gPlayerParty
- thumb_func_end sub_81280C4
-
- thumb_func_start sub_8128114
-sub_8128114: @ 8128114
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r6, 0x1
- movs r7, 0x64
- ldr r0, _0812816C @ =gPlayerParty
- mov r8, r0
-_08128122:
- adds r0, r6, 0
- bl sub_8127F7C
- lsls r0, 24
- lsrs r0, 24
- muls r0, r7
- mov r1, r8
- adds r5, r0, r1
- adds r0, r5, 0
- movs r1, 0xB
- bl GetMonData
- cmp r0, 0
- beq _08128170
- adds r0, r5, 0
- movs r1, 0x39
- bl GetMonData
- cmp r0, 0
- beq _08128170
- movs r0, 0
- bl sub_8127F7C
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- movs r0, 0
- adds r1, r6, 0
- bl sub_8127FF4
- adds r0, r4, 0
- muls r0, r7
- add r0, r8
- adds r1, r5, 0
- bl sub_811FA40
- b _0812817A
- .align 2, 0
-_0812816C: .4byte gPlayerParty
-_08128170:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x5
- bls _08128122
-_0812817A:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- thumb_func_end sub_8128114
-
- thumb_func_start sub_8128184
-sub_8128184: @ 8128184
- push {lr}
- bl sub_8108CF0
- ldr r0, _08128194 @ =SetCB2ToReshowScreenAfterMenu
- bl SetMainCallback2
- pop {r0}
- bx r0
- .align 2, 0
-_08128194: .4byte SetCB2ToReshowScreenAfterMenu
- thumb_func_end sub_8128184
-
- thumb_func_start sub_8128198
-sub_8128198: @ 8128198
- push {lr}
- sub sp, 0xC
- movs r0, 0x7F
- str r0, [sp]
- ldr r0, _081281BC @ =sub_81281C4
- str r0, [sp, 0x4]
- ldr r0, _081281C0 @ =gMain
- ldr r0, [r0, 0x8]
- str r0, [sp, 0x8]
- movs r0, 0x5
- movs r1, 0x3
- movs r2, 0
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_081281BC: .4byte sub_81281C4
-_081281C0: .4byte gMain
- thumb_func_end sub_8128198
-
- thumb_func_start sub_81281C4
-sub_81281C4: @ 81281C4
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _081281F4 @ =gTasks
- lsls r4, r0, 2
- adds r4, r0
- lsls r4, 3
- adds r4, r1
- movs r1, 0x80
- lsls r1, 1
- strh r1, [r4, 0x8]
- bl sub_81282DC
- movs r1, 0x80
- lsls r1, 9
- movs r0, 0x2
- movs r2, 0
- bl ChangeBgX
- ldr r0, _081281F8 @ =sub_81281FC
- str r0, [r4]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_081281F4: .4byte gTasks
-_081281F8: .4byte sub_81281FC
- thumb_func_end sub_81281C4
-
- thumb_func_start sub_81281FC
-sub_81281FC: @ 81281FC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r6, r5, 2
- adds r0, r6, r5
- lsls r0, 3
- ldr r1, _08128270 @ =gTasks+0x8
- adds r4, r0, r1
- ldr r0, _08128274 @ =gPaletteFade
- ldrb r1, [r0, 0x7]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08128268
- ldrh r0, [r4]
- subs r0, 0x8
- strh r0, [r4]
- adds r0, r5, 0
- bl sub_81282DC
- movs r1, 0
- ldrsh r0, [r4, r1]
- cmp r0, 0
- bne _08128268
- movs r4, 0x3
- ldr r7, _08128278 @ =gUnknown_2022B58
-_08128230:
- subs r0, r4, 0x3
- lsls r0, 5
- adds r0, r7
- ldrh r0, [r0]
- cmp r0, 0
- beq _0812824C
- ldr r0, _0812827C @ =gUnknown_203B0B4
- ldr r1, [r0]
- lsls r0, r4, 4
- adds r0, r1
- ldrb r0, [r0, 0x9]
- movs r1, 0
- bl sub_812238C
-_0812824C:
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0x5
- bls _08128230
- movs r0, 0x71
- bl PlaySE
- ldr r0, _08128280 @ =gTasks
- adds r1, r6, r5
- lsls r1, 3
- adds r1, r0
- ldr r0, _08128284 @ =sub_8128288
- str r0, [r1]
-_08128268:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08128270: .4byte gTasks+0x8
-_08128274: .4byte gPaletteFade
-_08128278: .4byte gUnknown_2022B58
-_0812827C: .4byte gUnknown_203B0B4
-_08128280: .4byte gTasks
-_08128284: .4byte sub_8128288
- thumb_func_end sub_81281FC
-
- thumb_func_start sub_8128288
-sub_8128288: @ 8128288
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r0, r2, 2
- adds r0, r2
- lsls r0, 3
- ldr r1, _081282B4 @ =gTasks+0x8
- adds r0, r1
- ldrh r1, [r0]
- adds r1, 0x1
- strh r1, [r0]
- lsls r1, 16
- movs r0, 0x80
- lsls r0, 17
- cmp r1, r0
- bne _081282AE
- adds r0, r2, 0
- bl sub_811FA78
-_081282AE:
- pop {r0}
- bx r0
- .align 2, 0
-_081282B4: .4byte gTasks+0x8
- thumb_func_end sub_8128288
-
- thumb_func_start sub_81282B8
-sub_81282B8: @ 81282B8
- push {lr}
- lsls r0, 24
- lsrs r2, r0, 24
- lsls r1, 16
- lsrs r3, r1, 16
- cmp r1, 0
- blt _081282D2
- ldr r1, _081282D8 @ =gSprites
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- strh r3, [r0, 0x24]
-_081282D2:
- pop {r0}
- bx r0
- .align 2, 0
-_081282D8: .4byte gSprites
- thumb_func_end sub_81282B8
-
- thumb_func_start sub_81282DC
-sub_81282DC: @ 81282DC
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- ldr r0, _08128364 @ =gTasks+0x8
- adds r5, r1, r0
- movs r6, 0x3
- ldr r7, _08128368 @ =gUnknown_203B0B4
-_081282F0:
- ldr r0, _0812836C @ =gUnknown_2022B58
- subs r1, r6, 0x3
- lsls r1, 5
- adds r1, r0
- ldrh r0, [r1]
- cmp r0, 0
- beq _08128348
- ldr r0, [r7]
- lsls r4, r6, 4
- adds r0, r4, r0
- ldrb r0, [r0, 0x9]
- ldrh r1, [r5]
- subs r1, 0x8
- lsls r1, 16
- asrs r1, 16
- bl sub_81282B8
- ldr r0, [r7]
- adds r0, r4, r0
- ldrb r0, [r0, 0xA]
- ldrh r1, [r5]
- subs r1, 0x8
- lsls r1, 16
- asrs r1, 16
- bl sub_81282B8
- ldr r0, [r7]
- adds r0, r4, r0
- ldrb r0, [r0, 0xB]
- ldrh r1, [r5]
- subs r1, 0x8
- lsls r1, 16
- asrs r1, 16
- bl sub_81282B8
- ldr r0, [r7]
- adds r4, r0
- ldrb r0, [r4, 0xC]
- ldrh r1, [r5]
- subs r1, 0x8
- lsls r1, 16
- asrs r1, 16
- bl sub_81282B8
-_08128348:
- adds r0, r6, 0x1
- lsls r0, 24
- lsrs r6, r0, 24
- cmp r6, 0x5
- bls _081282F0
- movs r1, 0x80
- lsls r1, 4
- movs r0, 0x2
- movs r2, 0x1
- bl ChangeBgX
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08128364: .4byte gTasks+0x8
-_08128368: .4byte gUnknown_203B0B4
-_0812836C: .4byte gUnknown_2022B58
- thumb_func_end sub_81282DC
-
- thumb_func_start sub_8128370
-sub_8128370: @ 8128370
- push {lr}
- sub sp, 0xC
- ldr r1, _08128398 @ =gFieldCallback2
- ldr r0, _0812839C @ =hm_add_c3_without_phase_2
- str r0, [r1]
- movs r0, 0xF
- str r0, [sp]
- ldr r0, _081283A0 @ =sub_811FB28
- str r0, [sp, 0x4]
- ldr r0, _081283A4 @ =CB2_ReturnToField
- str r0, [sp, 0x8]
- movs r0, 0x6
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_08128398: .4byte gFieldCallback2
-_0812839C: .4byte hm_add_c3_without_phase_2
-_081283A0: .4byte sub_811FB28
-_081283A4: .4byte CB2_ReturnToField
- thumb_func_end sub_8128370
-
- thumb_func_start sub_81283A8
-sub_81283A8: @ 81283A8
- push {lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _081283D4 @ =gFieldCallback2
- ldr r1, _081283D8 @ =hm_add_c3_without_phase_2
- str r1, [r2]
- movs r1, 0
- str r1, [sp]
- ldr r1, _081283DC @ =sub_811FB28
- str r1, [sp, 0x4]
- ldr r1, _081283E0 @ =CB2_ReturnToField
- str r1, [sp, 0x8]
- movs r1, 0
- movs r2, 0xB
- movs r3, 0
- bl PartyMenuInit
- add sp, 0xC
- pop {r0}
- bx r0
- .align 2, 0
-_081283D4: .4byte gFieldCallback2
-_081283D8: .4byte hm_add_c3_without_phase_2
-_081283DC: .4byte sub_811FB28
-_081283E0: .4byte CB2_ReturnToField
- thumb_func_end sub_81283A8
-
- thumb_func_start hm_add_c3_without_phase_2
-hm_add_c3_without_phase_2: @ 81283E4
- push {lr}
- bl sub_807DC00
- ldr r0, _081283F8 @ =task_hm_without_phase_2
- movs r1, 0xA
- bl CreateTask
- movs r0, 0x1
- pop {r1}
- bx r1
- .align 2, 0
-_081283F8: .4byte task_hm_without_phase_2
- thumb_func_end hm_add_c3_without_phase_2
-
- thumb_func_start task_hm_without_phase_2
-task_hm_without_phase_2: @ 81283FC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- bl field_weather_is_fade_finished
- lsls r0, 24
- cmp r0, 0
- beq _0812841A
- adds r0, r4, 0
- bl DestroyTask
- bl ScriptContext2_Disable
- bl EnableBothScriptContexts
-_0812841A:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end task_hm_without_phase_2
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/pokedex_screen.s b/asm/pokedex_screen.s
index 8320c5809..9c57cff88 100644
--- a/asm/pokedex_screen.s
+++ b/asm/pokedex_screen.s
@@ -428,13 +428,13 @@ sub_8102858: @ 8102858
lsls r1, 7
movs r0, 0
bl SetGpuRegBits
- ldr r0, _08102878 @ =CB2_ReturnToStartMenu
+ ldr r0, _08102878 @ =CB2_ReturnToFieldWithOpenMenu
bl SetMainCallback2
_08102874:
pop {r0}
bx r0
.align 2, 0
-_08102878: .4byte CB2_ReturnToStartMenu
+_08102878: .4byte CB2_ReturnToFieldWithOpenMenu
thumb_func_end sub_8102858
thumb_func_start sub_810287C
diff --git a/asm/pokemon_jump_2.s b/asm/pokemon_jump_2.s
index 44598a330..8ae94ce5e 100644
--- a/asm/pokemon_jump_2.s
+++ b/asm/pokemon_jump_2.s
@@ -4230,8 +4230,8 @@ sub_81499E0: @ 81499E0
_081499FC: .4byte gUnknown_203F3D4
thumb_func_end sub_81499E0
- thumb_func_start sub_8149A00
-sub_8149A00: @ 8149A00
+ thumb_func_start IsSpeciesAllowedInPokemonJump
+IsSpeciesAllowedInPokemonJump: @ 8149A00
push {lr}
lsls r0, 16
lsrs r0, 16
@@ -4242,7 +4242,7 @@ sub_8149A00: @ 8149A00
lsrs r0, 31
pop {r1}
bx r1
- thumb_func_end sub_8149A00
+ thumb_func_end IsSpeciesAllowedInPokemonJump
thumb_func_start sub_8149A18
sub_8149A18: @ 8149A18
@@ -4264,7 +4264,7 @@ _08149A1C:
bl GetMonData
lsls r0, 16
lsrs r0, 16
- bl sub_8149A00
+ bl IsSpeciesAllowedInPokemonJump
cmp r0, 0
beq _08149A54
ldr r1, _08149A50 @ =gSpecialVar_Result
diff --git a/asm/pokemon_special_anim.s b/asm/pokemon_special_anim.s
index 9092a38aa..b499f0999 100644
--- a/asm/pokemon_special_anim.s
+++ b/asm/pokemon_special_anim.s
@@ -558,7 +558,7 @@ _0811C9AA:
adds r0, r4, 0
adds r0, 0x96
ldrh r0, [r0]
- bl GetItemCompatibilityRule
+ bl CheckIfItemIsTMHMOrEvolutionStone
lsls r0, 24
lsrs r0, 24
cmp r0, 0x2
@@ -1508,8 +1508,8 @@ sub_811D120: @ 811D120
bx r1
thumb_func_end sub_811D120
- thumb_func_start GetMonLevelUpWindowStats
-GetMonLevelUpWindowStats: @ 811D130
+ thumb_func_start BufferMonStatsToTaskData
+BufferMonStatsToTaskData: @ 811D130
push {r4,r5,lr}
adds r4, r0, 0
adds r5, r1, 0
@@ -1539,7 +1539,7 @@ GetMonLevelUpWindowStats: @ 811D130
pop {r4,r5}
pop {r0}
bx r0
- thumb_func_end GetMonLevelUpWindowStats
+ thumb_func_end BufferMonStatsToTaskData
thumb_func_start sub_811D178
sub_811D178: @ 811D178
diff --git a/asm/pokemon_storage_system.s b/asm/pokemon_storage_system.s
index 5c95eb22a..460410f47 100644
--- a/asm/pokemon_storage_system.s
+++ b/asm/pokemon_storage_system.s
@@ -1455,7 +1455,7 @@ _0808C3E0:
.align 2, 0
_0808C444: .4byte gUnknown_83CDA20
_0808C448:
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
cmp r0, 0
bne _0808C454
@@ -6591,7 +6591,7 @@ _0808EEE8:
ldr r2, _0808EF08 @ =sub_808CE60
movs r0, 0x4
movs r1, 0
- bl sub_8107DB4
+ bl GoToBagMenu
_0808EEF6:
adds r0, r7, 0
bl DestroyTask
@@ -15947,7 +15947,7 @@ sub_80937B4: @ 80937B4
_080937C4: .4byte gUnknown_2039822
_080937C8:
ldr r4, _080937D8 @ =gUnknown_2039821
- bl sub_8138B20
+ bl GetLastViewedMonIndex
strb r0, [r4]
_080937D0:
pop {r4}
diff --git a/asm/pokemon_summary_screen.s b/asm/pokemon_summary_screen.s
index d1d6ed06f..b345231f3 100644
--- a/asm/pokemon_summary_screen.s
+++ b/asm/pokemon_summary_screen.s
@@ -42,7 +42,7 @@ _0813453C: .4byte gUnknown_203B140
_08134540: .4byte 0x00003308
_08134544: .4byte gUnknown_203B144
_08134548:
- ldr r0, _08134574 @ =gUnknown_203B16C
+ ldr r0, _08134574 @ =gLastViewedMonIndex
strb r6, [r0]
ldr r0, _08134578 @ =gUnknown_203B16D
movs r1, 0
@@ -64,7 +64,7 @@ _08134548:
movs r0, 0x1
b _08134596
.align 2, 0
-_08134574: .4byte gUnknown_203B16C
+_08134574: .4byte gLastViewedMonIndex
_08134578: .4byte gUnknown_203B16D
_0813457C: .4byte gUnknown_203B16E
_08134580: .4byte 0x000032f8
@@ -3448,7 +3448,7 @@ _08136168:
ldr r0, [r6]
ldr r3, _08136208 @ =0x00003084
adds r0, r3
- ldr r1, _0813620C @ =gUnknown_8416221
+ ldr r1, _0813620C @ =gText_FemaleSymbol
bl StringCopy
b _08136238
.align 2, 0
@@ -3459,19 +3459,19 @@ _081361FC: .4byte 0x00003220
_08136200: .4byte 0x00003221
_08136204: .4byte 0x00003034
_08136208: .4byte 0x00003084
-_0813620C: .4byte gUnknown_8416221
+_0813620C: .4byte gText_FemaleSymbol
_08136210:
cmp r7, 0
bne _0813622C
ldr r0, [r6]
ldr r1, _08136224 @ =0x00003084
adds r0, r1
- ldr r1, _08136228 @ =gUnknown_841621F
+ ldr r1, _08136228 @ =gText_MaleSymbol
bl StringCopy
b _08136238
.align 2, 0
_08136224: .4byte 0x00003084
-_08136228: .4byte gUnknown_841621F
+_08136228: .4byte gText_MaleSymbol
_0813622C:
ldr r0, [r6]
ldr r2, _08136308 @ =0x00003084
@@ -3622,7 +3622,7 @@ sub_8136350: @ 8136350
bl ConvertIntToDecimalStringN
ldr r0, [r6]
adds r0, r4
- ldr r1, _08136504 @ =gUnknown_841620C
+ ldr r1, _08136504 @ =gText_Slash
bl StringAppend
ldr r0, [r6]
adds r0, r7
@@ -3794,7 +3794,7 @@ _081363E6:
_081364F8: .4byte gUnknown_203B140
_081364FC: .4byte 0x00003290
_08136500: .4byte 0x00003090
-_08136504: .4byte gUnknown_841620C
+_08136504: .4byte gText_Slash
_08136508: .4byte gUnknown_203B144
_0813650C: .4byte 0x000032f8
_08136510: .4byte sub_804CF14
@@ -5618,7 +5618,7 @@ _081373EA:
str r6, [sp]
mov r7, r9
str r7, [sp, 0x4]
- ldr r1, _081374E0 @ =gUnknown_841620C
+ ldr r1, _081374E0 @ =gText_Slash
str r1, [sp, 0x8]
movs r1, 0x2
movs r2, 0x3A
@@ -5663,7 +5663,7 @@ _081374D0: .4byte gUnknown_8416238
_081374D4: .4byte gUnknown_203B144
_081374D8: .4byte 0x000030b8
_081374DC: .4byte 0x00003258
-_081374E0: .4byte gUnknown_841620C
+_081374E0: .4byte gText_Slash
_081374E4: .4byte 0x000030f0
thumb_func_end sub_81372E4
@@ -6839,8 +6839,8 @@ _08137E82:
adds r0, r1
ldr r0, [r0]
bl SetMainCallback2
- bl sub_8138B20
- ldr r1, _08137EE0 @ =gUnknown_203B16C
+ bl GetLastViewedMonIndex
+ ldr r1, _08137EE0 @ =gLastViewedMonIndex
strb r0, [r1]
ldr r0, [r4]
cmp r0, 0
@@ -6864,7 +6864,7 @@ _08137ECC:
_08137ED4: .4byte gUnknown_203B140
_08137ED8: .4byte 0x00003214
_08137EDC: .4byte 0x000032f8
-_08137EE0: .4byte gUnknown_203B16C
+_08137EE0: .4byte gLastViewedMonIndex
_08137EE4: .4byte gUnknown_203B144
thumb_func_end sub_8137E64
@@ -8397,14 +8397,14 @@ _08138B18: .4byte 0x00003220
_08138B1C: .4byte 0x00003221
thumb_func_end sub_8138A38
- thumb_func_start sub_8138B20
-sub_8138B20: @ 8138B20
- ldr r0, _08138B28 @ =gUnknown_203B16C
+ thumb_func_start GetLastViewedMonIndex
+GetLastViewedMonIndex: @ 8138B20
+ ldr r0, _08138B28 @ =gLastViewedMonIndex
ldrb r0, [r0]
bx lr
.align 2, 0
-_08138B28: .4byte gUnknown_203B16C
- thumb_func_end sub_8138B20
+_08138B28: .4byte gLastViewedMonIndex
+ thumb_func_end GetLastViewedMonIndex
thumb_func_start GetMoveSlotToReplace
GetMoveSlotToReplace: @ 8138B2C
@@ -8443,7 +8443,7 @@ sub_8138B4C: @ 8138B4C
ldrb r0, [r0]
cmp r0, 0x1
bne _08138B84
- ldr r0, _08138B80 @ =gUnknown_203B16C
+ ldr r0, _08138B80 @ =gLastViewedMonIndex
ldrb r0, [r0]
cmp r0, 0x3
bhi _08138B76
@@ -8454,7 +8454,7 @@ _08138B76:
b _08138B86
.align 2, 0
_08138B7C: .4byte gReceivedRemoteLinkPlayers
-_08138B80: .4byte gUnknown_203B16C
+_08138B80: .4byte gLastViewedMonIndex
_08138B84:
movs r0, 0
_08138B86:
@@ -8476,7 +8476,7 @@ sub_8138B8C: @ 8138B8C
adds r2, 0xD8
adds r0, r1, r2
ldr r4, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -8493,7 +8493,7 @@ _08138BC4:
ldr r2, _08138BE8 @ =0x000032f4
adds r0, r1, r2
ldr r4, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 2
@@ -9148,7 +9148,7 @@ sub_81390B0: @ 81390B0
ldr r1, _081391DC @ =0x000032f4
adds r0, r1
ldr r6, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -9294,7 +9294,7 @@ sub_81391EC: @ 81391EC
ldr r1, _08139318 @ =0x000032f4
adds r0, r1
ldr r6, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 2
@@ -9442,7 +9442,7 @@ sub_8139328: @ 8139328
adds r2, 0xD8
adds r0, r1, r2
ldr r4, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
lsls r0, 24
lsrs r0, 24
movs r1, 0x64
@@ -9459,7 +9459,7 @@ _08139360:
ldr r2, _08139384 @ =0x000032f4
adds r0, r1, r2
ldr r4, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
lsls r0, 24
lsrs r0, 24
lsls r1, r0, 2
@@ -9489,7 +9489,7 @@ sub_8139388: @ 8139388
bl sub_8138BEC
lsls r0, 16
lsrs r0, 16
- bl sub_8125A90
+ bl IsMoveHm
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -10269,7 +10269,7 @@ _081399DC: .4byte sub_804CF14
_081399E0: .4byte 0x00003024
_081399E4: .4byte 0x0000ffff
_081399E8:
- ldr r0, _08139A1C @ =gUnknown_203B16C
+ ldr r0, _08139A1C @ =gLastViewedMonIndex
ldrb r1, [r0]
movs r0, 0x3
bl sub_804455C
@@ -10293,7 +10293,7 @@ _081399E8:
bl CreateMonPicSprite
b _08139A40
.align 2, 0
-_08139A1C: .4byte gUnknown_203B16C
+_08139A1C: .4byte gLastViewedMonIndex
_08139A20: .4byte 0x0000ffff
_08139A24:
movs r0, 0x3C
@@ -10787,7 +10787,7 @@ _08139E20:
.align 2, 0
_08139E28: .4byte SpriteCallbackDummy
_08139E2C:
- ldr r0, _08139E48 @ =gUnknown_203B16C
+ ldr r0, _08139E48 @ =gLastViewedMonIndex
ldrb r1, [r0]
movs r0, 0x3
bl sub_804455C
@@ -10801,7 +10801,7 @@ _08139E2C:
str r4, [sp, 0x4]
b _08139E58
.align 2, 0
-_08139E48: .4byte gUnknown_203B16C
+_08139E48: .4byte gLastViewedMonIndex
_08139E4C: .4byte SpriteCallbackDummy
_08139E50:
ldr r1, _08139E98 @ =SpriteCallbackDummy
@@ -13221,7 +13221,7 @@ _0813B16C:
ldr r2, _0813B190 @ =0x000032f4
adds r0, r2
ldr r4, [r0]
- bl sub_8138B20
+ bl GetLastViewedMonIndex
adds r1, r0, 0
lsls r1, 24
lsrs r1, 24
@@ -13268,7 +13268,7 @@ _0813B1CC:
negs r1, r1
cmp r0, r1
beq _0813B1F4
- ldr r0, _0813B1FC @ =gUnknown_203B16C
+ ldr r0, _0813B1FC @ =gLastViewedMonIndex
strb r2, [r0]
ldr r0, _0813B200 @ =sub_813B3F0
movs r1, 0
@@ -13284,7 +13284,7 @@ _0813B1F4:
pop {r0}
bx r0
.align 2, 0
-_0813B1FC: .4byte gUnknown_203B16C
+_0813B1FC: .4byte gLastViewedMonIndex
_0813B200: .4byte sub_813B3F0
_0813B204: .4byte gUnknown_203B140
_0813B208: .4byte 0x0000328c
@@ -13311,7 +13311,7 @@ sub_813B20C: @ 813B20C
movs r1, 0x1
negs r1, r1
adds r5, r0, 0
- ldr r6, _0813B264 @ =gUnknown_203B16C
+ ldr r6, _0813B264 @ =gLastViewedMonIndex
cmp r3, r1
bne _0813B23E
ldrb r0, [r6]
@@ -13336,7 +13336,7 @@ _0813B252:
_0813B258: .4byte gUnknown_203B140
_0813B25C: .4byte 0x000032f4
_0813B260: .4byte 0x00003214
-_0813B264: .4byte gUnknown_203B16C
+_0813B264: .4byte gLastViewedMonIndex
_0813B268: .4byte 0x00003210
_0813B26C:
lsls r5, r4, 24
@@ -13346,7 +13346,7 @@ _0813B26E:
asrs r1, r5, 24
adds r0, r1
lsls r0, 24
- ldr r4, _0813B29C @ =gUnknown_203B16C
+ ldr r4, _0813B29C @ =gLastViewedMonIndex
lsrs r6, r0, 24
asrs r0, 24
ldrb r3, [r4]
@@ -13365,7 +13365,7 @@ _0813B294:
negs r0, r0
b _0813B2C0
.align 2, 0
-_0813B29C: .4byte gUnknown_203B16C
+_0813B29C: .4byte gLastViewedMonIndex
_0813B2A0: .4byte gUnknown_203B140
_0813B2A4: .4byte 0x00003210
_0813B2A8:
@@ -13514,7 +13514,7 @@ _0813B39E:
bhi _0813B3B6
ldr r4, _0813B3D4 @ =gUnknown_8463FB8
adds r4, r5, r4
- bl sub_8138B20
+ bl GetLastViewedMonIndex
ldrb r1, [r4]
lsls r0, 24
lsrs r0, 24
diff --git a/asm/region_map.s b/asm/region_map.s
index 5d136385b..662c65fa7 100644
--- a/asm/region_map.s
+++ b/asm/region_map.s
@@ -7395,7 +7395,7 @@ sub_80C3B00: @ 80C3B00
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
ldrb r0, [r0, 0x14]
pop {r1}
bx r1
@@ -7477,7 +7477,7 @@ _080C3BAC:
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
adds r2, r0, 0
ldr r0, _080C3BEC @ =gUnknown_20399E4
ldr r1, [r0]
@@ -7506,7 +7506,7 @@ _080C3BF0:
asrs r1, 24
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
adds r2, r0, 0
ldr r0, _080C3C28 @ =gUnknown_20399E4
ldr r1, [r0]
@@ -7543,7 +7543,7 @@ _080C3C2C:
ldrsb r1, [r5, r1]
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
adds r2, r0, 0
b _080C3C8E
.align 2, 0
@@ -7564,7 +7564,7 @@ _080C3C68:
ldrsb r1, [r5, r1]
lsls r1, 16
lsrs r1, 16
- bl get_mapheader_by_bank_and_number
+ bl Overworld_GetMapHeaderByGroupAndId
adds r2, r0, 0
ldr r1, [r4]
ldrb r0, [r2, 0x14]
@@ -9761,8 +9761,8 @@ _080C4DF2:
bx r1
thumb_func_end GetMapName
- thumb_func_start sub_80C4DF8
-sub_80C4DF8: @ 80C4DF8
+ thumb_func_start GetMapNameGeneric
+GetMapNameGeneric: @ 80C4DF8
push {lr}
lsls r1, 16
lsrs r1, 16
@@ -9770,14 +9770,14 @@ sub_80C4DF8: @ 80C4DF8
bl GetMapName
pop {r1}
bx r1
- thumb_func_end sub_80C4DF8
+ thumb_func_end GetMapNameGeneric
thumb_func_start sub_80C4E08
sub_80C4E08: @ 80C4E08
push {lr}
lsls r1, 16
lsrs r1, 16
- bl sub_80C4DF8
+ bl GetMapNameGeneric
pop {r1}
bx r1
thumb_func_end sub_80C4E08
@@ -9893,15 +9893,15 @@ _080C4EF2:
bx r0
thumb_func_end sub_80C4ED0
- thumb_func_start sub_80C4EF8
-sub_80C4EF8: @ 80C4EF8
+ thumb_func_start MCB2_FlyMap
+MCB2_FlyMap: @ 80C4EF8
push {lr}
bl sub_80C51E8
movs r0, 0x2
bl sub_80BFEDC
pop {r0}
bx r0
- thumb_func_end sub_80C4EF8
+ thumb_func_end MCB2_FlyMap
thumb_func_start sub_80C4F08
sub_80C4F08: @ 80C4F08
@@ -10283,7 +10283,7 @@ _080C5220:
_080C5250: .4byte gUnknown_20399FC
_080C5254: .4byte CB2_ReturnToField
_080C5258:
- ldr r0, _080C5274 @ =sub_8124AB0
+ ldr r0, _080C5274 @ =CB2_ReturnToPartyMenuFromFlyMap
bl SetMainCallback2
_080C525E:
ldr r4, _080C5278 @ =gUnknown_20399FC
@@ -10298,7 +10298,7 @@ _080C526E:
pop {r0}
bx r0
.align 2, 0
-_080C5274: .4byte sub_8124AB0
+_080C5274: .4byte CB2_ReturnToPartyMenuFromFlyMap
_080C5278: .4byte gUnknown_20399FC
thumb_func_end sub_80C5208
diff --git a/asm/script_pokemon_util_80A0058.s b/asm/script_pokemon_util_80A0058.s
index 81b3b7efe..6f451b90a 100644
--- a/asm/script_pokemon_util_80A0058.s
+++ b/asm/script_pokemon_util_80A0058.s
@@ -385,7 +385,7 @@ sub_80A0334: @ 80A0334
ldr r0, _080A034C @ =sub_80A0350
str r0, [r1, 0x8]
movs r0, 0
- bl sub_81274A8
+ bl InitChooseHalfPartyForBattle
pop {r0}
bx r0
.align 2, 0
@@ -427,7 +427,7 @@ ChooseBattleTowerPlayerParty: @ 80A0380
ldr r0, _080A0398 @ =sub_80A039C
str r0, [r1, 0x8]
movs r0, 0x1
- bl sub_81274A8
+ bl InitChooseHalfPartyForBattle
pop {r0}
bx r0
.align 2, 0
diff --git a/asm/script_pokemon_util_80BF8FC.s b/asm/script_pokemon_util_80BF8FC.s
index 15d19e08b..a909758c2 100644
--- a/asm/script_pokemon_util_80BF8FC.s
+++ b/asm/script_pokemon_util_80BF8FC.s
@@ -88,7 +88,7 @@ sub_80BF97C: @ 80BF97C
lsls r0, 3
adds r0, r1
ldrb r0, [r0, 0x8]
- bl sub_81283A8
+ bl ChoosePartyMonByMenuType
adds r0, r4, 0
bl DestroyTask
_080BF9AC:
diff --git a/asm/shop.s b/asm/shop.s
index bc5eccd64..ca92ff4b7 100644
--- a/asm/shop.s
+++ b/asm/shop.s
@@ -291,7 +291,7 @@ sub_809ACD4: @ 809ACD4
ldr r2, _0809ACEC @ =CB2_ReturnToField
movs r0, 0x2
movs r1, 0x3
- bl sub_8107DB4
+ bl GoToBagMenu
ldr r1, _0809ACF0 @ =gFieldCallback
ldr r0, _0809ACF4 @ =sub_809AD74
str r0, [r1]
@@ -386,7 +386,7 @@ sub_809AD8C: @ 809AD8C
push {r4,lr}
lsls r0, 24
lsrs r4, r0, 24
- bl field_weather_is_fade_finished
+ bl IsWeatherNotFadingIn
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -793,7 +793,7 @@ _0809B118:
movs r1, 0
movs r2, 0xE
movs r3, 0x1E
- bl SetBgRectPal
+ bl SetBgTilemapPalette
b _0809B14E
.align 2, 0
_0809B138: .4byte gUnknown_2039934
@@ -805,7 +805,7 @@ _0809B13C:
movs r1, 0
movs r2, 0xC
movs r3, 0x1E
- bl SetBgRectPal
+ bl SetBgTilemapPalette
_0809B14E:
movs r0, 0x1
bl ScheduleBgCopyTilemapToVram