summaryrefslogtreecommitdiff
path: root/asm/battle_7.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/battle_7.s')
-rw-r--r--asm/battle_7.s1626
1 files changed, 0 insertions, 1626 deletions
diff --git a/asm/battle_7.s b/asm/battle_7.s
index 593a5bbb1..1e4e2013a 100644
--- a/asm/battle_7.s
+++ b/asm/battle_7.s
@@ -6,1632 +6,6 @@
.text
- thumb_func_start sub_80312F0
-sub_80312F0: @ 80312F0
- push {r4-r7,lr}
- adds r6, r0, 0
- ldrh r0, [r6, 0x30]
- lsls r0, 24
- lsrs r0, 24
- ldr r7, _08031334 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r5, r1, 2
- adds r3, r5, r7
- adds r0, r3, 0
- adds r0, 0x3F
- ldrb r4, [r0]
- lsls r0, r4, 26
- cmp r0, 0
- bge _08031354
- adds r0, r3, 0
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- blt _08031354
- adds r1, r3, 0
- adds r1, 0x2C
- ldrb r2, [r1]
- lsls r0, r2, 25
- cmp r0, 0
- bge _08031338
- movs r0, 0x41
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- b _08031354
- .align 2, 0
-_08031334: .4byte gSprites
-_08031338:
- lsls r0, r4, 27
- cmp r0, 0
- bge _08031354
- adds r0, r7, 0
- adds r0, 0x1C
- adds r0, r5, r0
- ldr r1, _0803135C @ =sub_80105DC
- str r1, [r0]
- adds r0, r3, 0
- movs r1, 0
- bl StartSpriteAffineAnim
- ldr r0, _08031360 @ =SpriteCallbackDummy
- str r0, [r6, 0x1C]
-_08031354:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0803135C: .4byte sub_80105DC
-_08031360: .4byte SpriteCallbackDummy
- thumb_func_end sub_80312F0
-
- thumb_func_start unref_sub_8031364
-unref_sub_8031364: @ 8031364
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 24
- adds r3, r4, 0
- adds r3, 0x2C
- ldrb r0, [r3]
- movs r2, 0x40
- orrs r0, r2
- strb r0, [r3]
- ldr r0, _08031388 @ =SpriteCallbackDummy
- str r0, [r4, 0x1C]
- cmp r1, 0
- bne _0803138C
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
- b _08031394
- .align 2, 0
-_08031388: .4byte SpriteCallbackDummy
-_0803138C:
- adds r0, r4, 0
- movs r1, 0x1
- bl StartSpriteAffineAnim
-_08031394:
- adds r0, r4, 0
- bl AnimateSprite
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end unref_sub_8031364
-
- thumb_func_start sub_80313A0
-sub_80313A0: @ 80313A0
- push {lr}
- adds r2, r0, 0
- ldr r0, _080313C8 @ =gUnknown_02024DE8
- ldrh r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _080313C2
- ldrh r0, [r2, 0x2E]
- ldrh r1, [r2, 0x24]
- adds r0, r1
- strh r0, [r2, 0x24]
- lsls r0, 16
- cmp r0, 0
- bne _080313C2
- ldr r0, _080313CC @ =SpriteCallbackDummy
- str r0, [r2, 0x1C]
-_080313C2:
- pop {r0}
- bx r0
- .align 2, 0
-_080313C8: .4byte gUnknown_02024DE8
-_080313CC: .4byte SpriteCallbackDummy
- thumb_func_end sub_80313A0
-
- thumb_func_start move_anim_start_t2_for_situation
-move_anim_start_t2_for_situation: @ 80313D0
- push {r4-r6,lr}
- adds r4, r1, 0
- lsls r0, 24
- ldr r5, _08031400 @ =gUnknown_02024A60
- ldrb r2, [r5]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 2
- ldr r6, _08031404 @ =0x02017810
- adds r1, r6
- ldrb r2, [r1]
- movs r3, 0x10
- orrs r2, r3
- strb r2, [r1]
- cmp r0, 0
- bne _0803144C
- cmp r4, 0x20
- bne _08031408
- ldrb r0, [r5]
- movs r1, 0x6
- bl move_anim_start_t2
- b _080314C2
- .align 2, 0
-_08031400: .4byte gUnknown_02024A60
-_08031404: .4byte 0x02017810
-_08031408:
- cmp r4, 0x8
- beq _08031414
- movs r0, 0x80
- ands r0, r4
- cmp r0, 0
- beq _0803141E
-_08031414:
- ldrb r0, [r5]
- movs r1, 0
- bl move_anim_start_t2
- b _080314C2
-_0803141E:
- cmp r4, 0x10
- bne _0803142C
- ldrb r0, [r5]
- movs r1, 0x2
- bl move_anim_start_t2
- b _080314C2
-_0803142C:
- movs r0, 0x7
- ands r0, r4
- cmp r0, 0
- beq _0803143E
- ldrb r0, [r5]
- movs r1, 0x4
- bl move_anim_start_t2
- b _080314C2
-_0803143E:
- cmp r4, 0x40
- bne _080314AE
- ldrb r0, [r5]
- movs r1, 0x5
- bl move_anim_start_t2
- b _080314C2
-_0803144C:
- movs r0, 0xF0
- lsls r0, 12
- ands r0, r4
- cmp r0, 0
- beq _08031460
- ldrb r0, [r5]
- movs r1, 0x3
- bl move_anim_start_t2
- b _080314C2
-_08031460:
- movs r0, 0x7
- ands r0, r4
- cmp r0, 0
- beq _08031472
- ldrb r0, [r5]
- movs r1, 0x1
- bl move_anim_start_t2
- b _080314C2
-_08031472:
- movs r0, 0x80
- lsls r0, 21
- ands r0, r4
- cmp r0, 0
- beq _08031486
- ldrb r0, [r5]
- movs r1, 0x7
- bl move_anim_start_t2
- b _080314C2
-_08031486:
- movs r0, 0x80
- lsls r0, 20
- ands r0, r4
- cmp r0, 0
- beq _0803149A
- ldrb r0, [r5]
- movs r1, 0x8
- bl move_anim_start_t2
- b _080314C2
-_0803149A:
- movs r0, 0xE0
- lsls r0, 8
- ands r0, r4
- cmp r0, 0
- beq _080314AE
- ldrb r0, [r5]
- movs r1, 0x9
- bl move_anim_start_t2
- b _080314C2
-_080314AE:
- ldrb r0, [r5]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- adds r1, r6
- ldrb r2, [r1]
- movs r0, 0x11
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
-_080314C2:
- pop {r4-r6}
- pop {r0}
- bx r0
- thumb_func_end move_anim_start_t2_for_situation
-
- thumb_func_start move_anim_start_t3
-move_anim_start_t3: @ 80314C8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- ldr r4, [sp, 0x20]
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- lsls r2, 24
- lsrs r2, 24
- mov r10, r2
- lsls r3, 24
- lsrs r5, r3, 24
- lsls r4, 16
- lsrs r7, r4, 16
- cmp r5, 0
- bne _0803150C
- movs r0, 0x80
- ands r0, r7
- cmp r0, 0
- beq _0803150C
- ldr r0, _08031508 @ =gBattleMonForms
- adds r0, r6, r0
- movs r2, 0x7F
- adds r1, r7, 0
- ands r1, r2
- strb r1, [r0]
- movs r0, 0x1
- b _080315C2
- .align 2, 0
-_08031508: .4byte gBattleMonForms
-_0803150C:
- lsls r1, r6, 2
- ldr r0, _08031530 @ =0x02017800
- adds r4, r1, r0
- ldrb r1, [r4]
- movs r0, 0x4
- mov r8, r0
- ands r0, r1
- cmp r0, 0
- beq _08031578
- adds r0, r5, 0
- bl sub_803163C
- lsls r0, 24
- cmp r0, 0
- bne _08031534
- movs r0, 0x1
- b _080315C2
- .align 2, 0
-_08031530: .4byte 0x02017800
-_08031534:
- ldrb r1, [r4]
- mov r0, r8
- ands r0, r1
- cmp r0, 0
- beq _08031578
- cmp r5, 0x2
- bne _08031578
- ldr r1, _08031570 @ =gSprites
- ldr r0, _08031574 @ =gUnknown_02024BE0
- adds r0, r6, r0
- ldrb r2, [r0]
- lsls r0, r2, 4
- adds r0, r2
- lsls r0, 2
- adds r0, r1
- adds r0, 0x3E
- ldrb r0, [r0]
- lsls r0, 29
- cmp r0, 0
- bge _08031578
- adds r0, r6, 0
- movs r1, 0x1
- bl refresh_graphics_maybe
- adds r0, r6, 0
- bl sub_80324E0
- movs r0, 0x1
- b _080315C2
- .align 2, 0
-_08031570: .4byte gSprites
-_08031574: .4byte gUnknown_02024BE0
-_08031578:
- ldr r0, _080315D0 @ =gBattleAnimPlayerMonIndex
- mov r1, r9
- strb r1, [r0]
- ldr r0, _080315D4 @ =gBattleAnimEnemyMonIndex
- mov r1, r10
- strb r1, [r0]
- ldr r4, _080315D8 @ =0x02017840
- strh r7, [r4]
- ldr r0, _080315DC @ =gBattleAnims_Unknown1
- adds r1, r5, 0
- movs r2, 0
- bl DoMoveAnim
- ldr r0, _080315E0 @ =sub_80315E8
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080315E4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r6, [r1, 0x8]
- movs r0, 0x8
- ldrsh r1, [r1, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- subs r4, 0x30
- adds r0, r4
- ldrb r1, [r0]
- movs r2, 0x20
- orrs r1, r2
- strb r1, [r0]
- movs r0, 0
-_080315C2:
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_080315D0: .4byte gBattleAnimPlayerMonIndex
-_080315D4: .4byte gBattleAnimEnemyMonIndex
-_080315D8: .4byte 0x02017840
-_080315DC: .4byte gBattleAnims_Unknown1
-_080315E0: .4byte sub_80315E8
-_080315E4: .4byte gTasks
- thumb_func_end move_anim_start_t3
-
- thumb_func_start sub_80315E8
-sub_80315E8: @ 80315E8
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _0803162C @ =gAnimScriptCallback
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, _08031630 @ =gAnimScriptActive
- ldrb r0, [r0]
- cmp r0, 0
- bne _08031626
- ldr r1, _08031634 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0x8
- ldrsh r0, [r0, r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- ldr r0, _08031638 @ =0x02017810
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x21
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0
- bl DestroyTask
-_08031626:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803162C: .4byte gAnimScriptCallback
-_08031630: .4byte gAnimScriptActive
-_08031634: .4byte gTasks
-_08031638: .4byte 0x02017810
- thumb_func_end sub_80315E8
-
- thumb_func_start sub_803163C
-sub_803163C: @ 803163C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xD
- bgt _08031650
- cmp r0, 0xA
- bge _08031654
- cmp r0, 0x2
- beq _08031654
- b _08031658
-_08031650:
- cmp r0, 0x11
- bne _08031658
-_08031654:
- movs r0, 0x1
- b _0803165A
-_08031658:
- movs r0, 0
-_0803165A:
- pop {r1}
- bx r1
- thumb_func_end sub_803163C
-
- thumb_func_start move_anim_start_t4
-move_anim_start_t4: @ 8031660
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 24
- lsrs r4, 24
- lsls r3, 24
- lsrs r3, 24
- ldr r0, _080316B4 @ =gBattleAnimPlayerMonIndex
- strb r1, [r0]
- ldr r0, _080316B8 @ =gBattleAnimEnemyMonIndex
- strb r2, [r0]
- ldr r0, _080316BC @ =gBattleAnims_Unknown2
- adds r1, r3, 0
- movs r2, 0
- bl DoMoveAnim
- ldr r0, _080316C0 @ =sub_80316CC
- movs r1, 0xA
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _080316C4 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0x8]
- movs r0, 0x8
- ldrsh r1, [r1, r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- ldr r1, _080316C8 @ =0x02017810
- adds r0, r1
- ldrb r1, [r0]
- movs r2, 0x40
- orrs r1, r2
- strb r1, [r0]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080316B4: .4byte gBattleAnimPlayerMonIndex
-_080316B8: .4byte gBattleAnimEnemyMonIndex
-_080316BC: .4byte gBattleAnims_Unknown2
-_080316C0: .4byte sub_80316CC
-_080316C4: .4byte gTasks
-_080316C8: .4byte 0x02017810
- thumb_func_end move_anim_start_t4
-
- thumb_func_start sub_80316CC
-sub_80316CC: @ 80316CC
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- ldr r0, _08031710 @ =gAnimScriptCallback
- ldr r0, [r0]
- bl _call_via_r0
- ldr r0, _08031714 @ =gAnimScriptActive
- ldrb r0, [r0]
- cmp r0, 0
- bne _0803170A
- ldr r1, _08031718 @ =gTasks
- lsls r0, r4, 2
- adds r0, r4
- lsls r0, 3
- adds r0, r1
- movs r1, 0x8
- ldrsh r0, [r0, r1]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 2
- ldr r0, _0803171C @ =0x02017810
- adds r1, r0
- ldrb r2, [r1]
- movs r0, 0x41
- negs r0, r0
- ands r0, r2
- strb r0, [r1]
- adds r0, r4, 0
- bl DestroyTask
-_0803170A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08031710: .4byte gAnimScriptCallback
-_08031714: .4byte gAnimScriptActive
-_08031718: .4byte gTasks
-_0803171C: .4byte 0x02017810
- thumb_func_end sub_80316CC
-
- thumb_func_start sub_8031720
-sub_8031720: @ 8031720
- movs r0, 0
- bx lr
- thumb_func_end sub_8031720
-
- thumb_func_start mplay_80342A4
-mplay_80342A4: @ 8031724
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0
- bl IsSEPlaying
- lsls r0, 24
- cmp r0, 0
- beq _08031764
- lsls r1, r4, 1
- adds r1, r4
- lsls r1, 2
- ldr r2, _0803176C @ =0x02017810
- adds r1, r2
- ldrb r0, [r1, 0x8]
- adds r0, 0x1
- strb r0, [r1, 0x8]
- ldr r0, _08031770 @ =gUnknown_02024A60
- ldrb r1, [r0]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- ldrb r0, [r0, 0x8]
- cmp r0, 0x1D
- bls _08031768
- ldr r0, _08031774 @ =gMPlay_SE1
- bl m4aMPlayStop
- ldr r0, _08031778 @ =gMPlay_SE2
- bl m4aMPlayStop
-_08031764:
- cmp r5, 0
- beq _0803177C
-_08031768:
- movs r0, 0x1
- b _0803178A
- .align 2, 0
-_0803176C: .4byte 0x02017810
-_08031770: .4byte gUnknown_02024A60
-_08031774: .4byte gMPlay_SE1
-_08031778: .4byte gMPlay_SE2
-_0803177C:
- lsls r0, r4, 1
- adds r0, r4
- lsls r0, 2
- ldr r1, _08031790 @ =0x02017810
- adds r0, r1
- strb r5, [r0, 0x8]
- movs r0, 0
-_0803178A:
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_08031790: .4byte 0x02017810
- thumb_func_end mplay_80342A4
-
- thumb_func_start sub_8031794
-sub_8031794: @ 8031794
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- mov r8, r0
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- movs r1, 0
- bl GetMonData
- str r0, [sp, 0xC]
- mov r0, r9
- lsls r1, r0, 2
- ldr r0, _080317D0 @ =0x02017800
- adds r2, r1, r0
- ldrh r0, [r2, 0x2]
- cmp r0, 0
- bne _080317D4
- mov r0, r8
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r7, [sp, 0xC]
- b _080317DC
- .align 2, 0
-_080317D0: .4byte 0x02017800
-_080317D4:
- ldrh r6, [r2, 0x2]
- ldr r0, _08031838 @ =gUnknown_02024E70
- adds r0, r1, r0
- ldr r7, [r0]
-_080317DC:
- mov r0, r8
- movs r1, 0x1
- bl GetMonData
- mov r10, r0
- mov r0, r9
- bl battle_get_per_side_status
- lsls r0, 24
- lsls r5, r6, 3
- ldr r1, _0803183C @ =gMonFrontPicTable
- adds r5, r1
- ldr r1, _08031840 @ =gMonFrontPicCoords
- lsls r2, r6, 2
- adds r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, 0x1]
- movs r3, 0x80
- lsls r3, 18
- ldr r4, _08031844 @ =gUnknown_081FAF4C
- lsrs r0, 22
- adds r0, r4
- ldr r0, [r0]
- str r0, [sp]
- str r6, [sp, 0x4]
- str r7, [sp, 0x8]
- adds r0, r5, 0
- bl HandleLoadSpecialPokePic
- mov r1, r9
- lsls r2, r1, 4
- movs r0, 0x80
- lsls r0, 1
- adds r7, r2, r0
- lsls r1, 2
- ldr r0, _08031848 @ =0x02017800
- adds r0, r1, r0
- ldrh r0, [r0, 0x2]
- str r1, [sp, 0x10]
- adds r4, r2, 0
- cmp r0, 0
- bne _0803184C
- mov r0, r8
- bl pokemon_get_pal
- b _08031856
- .align 2, 0
-_08031838: .4byte gUnknown_02024E70
-_0803183C: .4byte gMonFrontPicTable
-_08031840: .4byte gMonFrontPicCoords
-_08031844: .4byte gUnknown_081FAF4C
-_08031848: .4byte 0x02017800
-_0803184C:
- adds r0, r6, 0
- mov r1, r10
- ldr r2, [sp, 0xC]
- bl species_and_otid_get_pal
-_08031856:
- adds r5, r0, 0
- ldr r1, _080318E0 @ =0x02000000
- mov r8, r1
- adds r0, r5, 0
- bl sub_800D238
- mov r0, r8
- adds r1, r7, 0
- movs r2, 0x20
- bl LoadPalette
- adds r1, r4, 0
- adds r1, 0x80
- mov r0, r8
- movs r2, 0x20
- bl LoadPalette
- ldr r0, _080318E4 @ =SPECIES_CASTFORM
- cmp r6, r0
- bne _080318A2
- subs r0, 0x81
- adds r7, r4, r0
- movs r4, 0xB2
- lsls r4, 9
- add r4, r8
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_800D238
- ldr r0, _080318E8 @ =gBattleMonForms
- add r0, r9
- ldrb r0, [r0]
- lsls r0, 5
- adds r0, r4
- adds r1, r7, 0
- movs r2, 0x20
- bl LoadPalette
-_080318A2:
- movs r0, 0xBC
- lsls r0, 9
- add r0, r8
- ldr r1, [sp, 0x10]
- adds r0, r1, r0
- ldrh r0, [r0, 0x2]
- cmp r0, 0
- beq _080318CE
- ldr r3, _080318EC @ =0x00007fff
- adds r0, r7, 0
- movs r1, 0x10
- movs r2, 0x6
- bl BlendPalette
- lsls r1, r7, 1
- ldr r0, _080318F0 @ =gPlttBufferFaded
- adds r0, r1, r0
- ldr r2, _080318F4 @ =gPlttBufferUnfaded
- adds r1, r2
- ldr r2, _080318F8 @ =REG_BG0CNT
- bl CpuSet
-_080318CE:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080318E0: .4byte 0x02000000
-_080318E4: .4byte SPECIES_CASTFORM
-_080318E8: .4byte gBattleMonForms
-_080318EC: .4byte 0x00007fff
-_080318F0: .4byte gPlttBufferFaded
-_080318F4: .4byte gPlttBufferUnfaded
-_080318F8: .4byte REG_BG0CNT
- thumb_func_end sub_8031794
-
- thumb_func_start sub_80318FC
-sub_80318FC: @ 80318FC
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x14
- mov r8, r0
- lsls r1, 24
- lsrs r1, 24
- mov r9, r1
- movs r1, 0
- bl GetMonData
- str r0, [sp, 0xC]
- mov r0, r9
- lsls r1, r0, 2
- ldr r0, _08031938 @ =0x02017800
- adds r2, r1, r0
- ldrh r0, [r2, 0x2]
- cmp r0, 0
- bne _0803193C
- mov r0, r8
- movs r1, 0xB
- bl GetMonData
- lsls r0, 16
- lsrs r6, r0, 16
- ldr r7, [sp, 0xC]
- b _08031944
- .align 2, 0
-_08031938: .4byte 0x02017800
-_0803193C:
- ldrh r6, [r2, 0x2]
- ldr r0, _080319A0 @ =gUnknown_02024E70
- adds r0, r1, r0
- ldr r7, [r0]
-_08031944:
- mov r0, r8
- movs r1, 0x1
- bl GetMonData
- mov r10, r0
- mov r0, r9
- bl battle_get_per_side_status
- lsls r0, 24
- lsls r5, r6, 3
- ldr r1, _080319A4 @ =gMonBackPicTable
- adds r5, r1
- ldr r1, _080319A8 @ =gMonBackPicCoords
- lsls r2, r6, 2
- adds r2, r1
- ldrb r1, [r2]
- ldrb r2, [r2, 0x1]
- movs r3, 0x80
- lsls r3, 18
- ldr r4, _080319AC @ =gUnknown_081FAF4C
- lsrs r0, 22
- adds r0, r4
- ldr r0, [r0]
- str r0, [sp]
- str r6, [sp, 0x4]
- str r7, [sp, 0x8]
- adds r0, r5, 0
- bl HandleLoadSpecialPokePic
- mov r1, r9
- lsls r2, r1, 4
- movs r0, 0x80
- lsls r0, 1
- adds r7, r2, r0
- lsls r1, 2
- ldr r0, _080319B0 @ =0x02017800
- adds r0, r1, r0
- ldrh r0, [r0, 0x2]
- str r1, [sp, 0x10]
- adds r4, r2, 0
- cmp r0, 0
- bne _080319B4
- mov r0, r8
- bl pokemon_get_pal
- b _080319BE
- .align 2, 0
-_080319A0: .4byte gUnknown_02024E70
-_080319A4: .4byte gMonBackPicTable
-_080319A8: .4byte gMonBackPicCoords
-_080319AC: .4byte gUnknown_081FAF4C
-_080319B0: .4byte 0x02017800
-_080319B4:
- adds r0, r6, 0
- mov r1, r10
- ldr r2, [sp, 0xC]
- bl species_and_otid_get_pal
-_080319BE:
- adds r5, r0, 0
- ldr r1, _08031A48 @ =0x02000000
- mov r8, r1
- adds r0, r5, 0
- bl sub_800D238
- mov r0, r8
- adds r1, r7, 0
- movs r2, 0x20
- bl LoadPalette
- adds r1, r4, 0
- adds r1, 0x80
- mov r0, r8
- movs r2, 0x20
- bl LoadPalette
- ldr r0, _08031A4C @ =SPECIES_CASTFORM
- cmp r6, r0
- bne _08031A0A
- subs r0, 0x81
- adds r7, r4, r0
- movs r4, 0xB2
- lsls r4, 9
- add r4, r8
- adds r0, r5, 0
- adds r1, r4, 0
- bl sub_800D238
- ldr r0, _08031A50 @ =gBattleMonForms
- add r0, r9
- ldrb r0, [r0]
- lsls r0, 5
- adds r0, r4
- adds r1, r7, 0
- movs r2, 0x20
- bl LoadPalette
-_08031A0A:
- movs r0, 0xBC
- lsls r0, 9
- add r0, r8
- ldr r1, [sp, 0x10]
- adds r0, r1, r0
- ldrh r0, [r0, 0x2]
- cmp r0, 0
- beq _08031A36
- ldr r3, _08031A54 @ =0x00007fff
- adds r0, r7, 0
- movs r1, 0x10
- movs r2, 0x6
- bl BlendPalette
- lsls r1, r7, 1
- ldr r0, _08031A58 @ =gPlttBufferFaded
- adds r0, r1, r0
- ldr r2, _08031A5C @ =gPlttBufferUnfaded
- adds r1, r2
- ldr r2, _08031A60 @ =REG_BG0CNT
- bl CpuSet
-_08031A36:
- add sp, 0x14
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08031A48: .4byte 0x02000000
-_08031A4C: .4byte SPECIES_CASTFORM
-_08031A50: .4byte gBattleMonForms
-_08031A54: .4byte 0x00007fff
-_08031A58: .4byte gPlttBufferFaded
-_08031A5C: .4byte gPlttBufferUnfaded
-_08031A60: .4byte REG_BG0CNT
- thumb_func_end sub_80318FC
-
- thumb_func_start unref_sub_8031A64
-unref_sub_8031A64: @ 8031A64
- bx lr
- thumb_func_end unref_sub_8031A64
-
- thumb_func_start nullsub_9
-nullsub_9: @ 8031A68
- bx lr
- thumb_func_end nullsub_9
-
- thumb_func_start sub_8031A6C
-sub_8031A6C: @ 8031A6C
- push {r4-r6,lr}
- sub sp, 0x10
- adds r4, r0, 0
- adds r0, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r0, 24
- lsrs r0, 24
- bl battle_get_per_side_status
- lsls r0, 24
- lsls r6, r4, 3
- ldr r5, _08031ADC @ =gTrainerFrontPicTable
- adds r5, r6, r5
- ldr r1, _08031AE0 @ =gTrainerFrontPicCoords
- lsls r4, 2
- adds r4, r1
- ldrb r1, [r4]
- ldrb r2, [r4, 0x1]
- movs r3, 0x80
- lsls r3, 18
- ldr r4, _08031AE4 @ =gUnknown_081FAF4C
- lsrs r0, 22
- adds r0, r4
- ldr r4, [r0]
- str r4, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- adds r0, r5, 0
- bl DecompressPicFromTable_2
- str r4, [sp, 0x8]
- ldrh r2, [r5, 0x4]
- ldr r0, _08031AE8 @ =0xffff0000
- ldr r1, [sp, 0xC]
- ands r1, r0
- orrs r1, r2
- str r1, [sp, 0xC]
- ldrh r2, [r5, 0x6]
- lsls r2, 16
- ldr r0, _08031AEC @ =0x0000ffff
- ands r0, r1
- orrs r0, r2
- str r0, [sp, 0xC]
- add r0, sp, 0x8
- bl LoadCompressedObjectPic
- ldr r0, _08031AF0 @ =gTrainerFrontPicPaletteTable
- adds r6, r0
- adds r0, r6, 0
- bl LoadCompressedObjectPalette
- add sp, 0x10
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08031ADC: .4byte gTrainerFrontPicTable
-_08031AE0: .4byte gTrainerFrontPicCoords
-_08031AE4: .4byte gUnknown_081FAF4C
-_08031AE8: .4byte 0xffff0000
-_08031AEC: .4byte 0x0000ffff
-_08031AF0: .4byte gTrainerFrontPicPaletteTable
- thumb_func_end sub_8031A6C
-
- thumb_func_start sub_8031AF4
-sub_8031AF4: @ 8031AF4
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x8
- adds r4, r0, 0
- adds r5, r1, 0
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 24
- lsrs r5, 24
- adds r0, r5, 0
- bl battle_get_per_side_status
- lsls r0, 24
- lsls r1, r4, 3
- mov r8, r1
- ldr r6, _08031B60 @ =gTrainerBackPicTable
- add r6, r8
- ldr r1, _08031B64 @ =gTrainerBackPicCoords
- lsls r4, 2
- adds r4, r1
- ldrb r1, [r4]
- ldrb r2, [r4, 0x1]
- movs r3, 0x80
- lsls r3, 18
- ldr r4, _08031B68 @ =gUnknown_081FAF4C
- lsrs r0, 22
- adds r0, r4
- ldr r0, [r0]
- str r0, [sp]
- movs r0, 0
- str r0, [sp, 0x4]
- adds r0, r6, 0
- bl DecompressPicFromTable_2
- ldr r0, _08031B6C @ =gTrainerBackPicPaletteTable
- add r8, r0
- mov r1, r8
- ldr r0, [r1]
- lsls r5, 20
- movs r1, 0x80
- lsls r1, 17
- adds r5, r1
- lsrs r5, 16
- adds r1, r5, 0
- movs r2, 0x20
- bl LoadCompressedPalette
- add sp, 0x8
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_08031B60: .4byte gTrainerBackPicTable
-_08031B64: .4byte gTrainerBackPicCoords
-_08031B68: .4byte gUnknown_081FAF4C
-_08031B6C: .4byte gTrainerBackPicPaletteTable
- thumb_func_end sub_8031AF4
-
- thumb_func_start nullsub_10
-nullsub_10: @ 8031B70
- bx lr
- thumb_func_end nullsub_10
-
- thumb_func_start sub_8031B74
-sub_8031B74: @ 8031B74
- push {r4,lr}
- adds r4, r0, 0
- lsls r4, 16
- ldr r0, _08031B98 @ =gTrainerFrontPicPaletteTable
- lsrs r4, 13
- adds r0, r4, r0
- ldrh r0, [r0, 0x4]
- bl FreeSpritePaletteByTag
- ldr r0, _08031B9C @ =gTrainerFrontPicTable
- adds r4, r0
- ldrh r0, [r4, 0x6]
- bl FreeSpriteTilesByTag
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08031B98: .4byte gTrainerFrontPicPaletteTable
-_08031B9C: .4byte gTrainerFrontPicTable
- thumb_func_end sub_8031B74
-
- thumb_func_start unref_sub_8031BA0
-unref_sub_8031BA0: @ 8031BA0
- push {r4-r7,lr}
- ldr r4, _08031BCC @ =gUnknown_0820A4D4
- adds r0, r4, 0
- bl LoadSpritePalette
- adds r4, 0x8
- adds r0, r4, 0
- bl LoadSpritePalette
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _08031BD8
- ldr r0, _08031BD0 @ =gUnknown_0820A47C
- bl LoadCompressedObjectPic
- ldr r0, _08031BD4 @ =gUnknown_0820A484
- bl LoadCompressedObjectPic
- movs r5, 0x2
- b _08031BFA
- .align 2, 0
-_08031BCC: .4byte gUnknown_0820A4D4
-_08031BD0: .4byte gUnknown_0820A47C
-_08031BD4: .4byte gUnknown_0820A484
-_08031BD8:
- ldr r4, _08031C20 @ =gUnknown_0820A48C
- adds r0, r4, 0
- bl LoadCompressedObjectPic
- adds r4, 0x8
- adds r0, r4, 0
- bl LoadCompressedObjectPic
- ldr r4, _08031C24 @ =gUnknown_0820A49C
- adds r0, r4, 0
- bl LoadCompressedObjectPic
- adds r4, 0x8
- adds r0, r4, 0
- bl LoadCompressedObjectPic
- movs r5, 0x4
-_08031BFA:
- movs r4, 0
- cmp r4, r5
- bcs _08031C1A
- ldr r7, _08031C28 @ =gUnknown_02024A72
- ldr r6, _08031C2C @ =gUnknown_0820A4B4
-_08031C04:
- adds r0, r4, r7
- ldrb r0, [r0]
- lsls r0, 3
- adds r0, r6
- bl LoadCompressedObjectPic
- adds r0, r4, 0x1
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, r5
- bcc _08031C04
-_08031C1A:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08031C20: .4byte gUnknown_0820A48C
-_08031C24: .4byte gUnknown_0820A49C
-_08031C28: .4byte gUnknown_02024A72
-_08031C2C: .4byte gUnknown_0820A4B4
- thumb_func_end unref_sub_8031BA0
-
- thumb_func_start sub_8031C30
-sub_8031C30: @ 8031C30
- push {r4-r6,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- movs r6, 0
- cmp r4, 0
- bne _08031C40
- b _08031D52
-_08031C40:
- cmp r4, 0x1
- bne _08031C5C
- ldr r4, _08031C58 @ =gUnknown_0820A4D4
- adds r0, r4, 0
- bl LoadSpritePalette
- adds r4, 0x8
- adds r0, r4, 0
- bl LoadSpritePalette
- b _08031D52
- .align 2, 0
-_08031C58: .4byte gUnknown_0820A4D4
-_08031C5C:
- bl IsDoubleBattle
- lsls r0, 24
- cmp r0, 0
- bne _08031CC4
- cmp r4, 0x2
- bne _08031C94
- ldr r0, _08031C80 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08031C88
- ldr r0, _08031C84 @ =gUnknown_0820A4AC
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031C80: .4byte gBattleTypeFlags
-_08031C84: .4byte gUnknown_0820A4AC
-_08031C88:
- ldr r0, _08031C90 @ =gUnknown_0820A47C
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031C90: .4byte gUnknown_0820A47C
-_08031C94:
- cmp r4, 0x3
- bne _08031CA4
- ldr r0, _08031CA0 @ =gUnknown_0820A484
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031CA0: .4byte gUnknown_0820A484
-_08031CA4:
- cmp r4, 0x4
- bne _08031CB4
- ldr r0, _08031CB0 @ =gUnknown_02024A72
- ldrb r0, [r0]
- b _08031D3C
- .align 2, 0
-_08031CB0: .4byte gUnknown_02024A72
-_08031CB4:
- cmp r4, 0x5
- bne _08031D50
- ldr r0, _08031CC0 @ =gUnknown_02024A72
- ldrb r0, [r0, 0x1]
- b _08031D3C
- .align 2, 0
-_08031CC0: .4byte gUnknown_02024A72
-_08031CC4:
- cmp r4, 0x2
- bne _08031CD4
- ldr r0, _08031CD0 @ =gUnknown_0820A48C
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031CD0: .4byte gUnknown_0820A48C
-_08031CD4:
- cmp r4, 0x3
- bne _08031CE4
- ldr r0, _08031CE0 @ =gUnknown_0820A494
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031CE0: .4byte gUnknown_0820A494
-_08031CE4:
- cmp r4, 0x4
- bne _08031CF4
- ldr r0, _08031CF0 @ =gUnknown_0820A49C
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031CF0: .4byte gUnknown_0820A49C
-_08031CF4:
- cmp r4, 0x5
- bne _08031D04
- ldr r0, _08031D00 @ =gUnknown_0820A4A4
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031D00: .4byte gUnknown_0820A4A4
-_08031D04:
- cmp r4, 0x6
- bne _08031D14
- ldr r0, _08031D10 @ =gUnknown_02024A72
- ldrb r0, [r0]
- b _08031D3C
- .align 2, 0
-_08031D10: .4byte gUnknown_02024A72
-_08031D14:
- cmp r4, 0x7
- bne _08031D24
- ldr r0, _08031D20 @ =gUnknown_02024A72
- ldrb r0, [r0, 0x1]
- b _08031D3C
- .align 2, 0
-_08031D20: .4byte gUnknown_02024A72
-_08031D24:
- cmp r4, 0x8
- bne _08031D34
- ldr r0, _08031D30 @ =gUnknown_02024A72
- ldrb r0, [r0, 0x2]
- b _08031D3C
- .align 2, 0
-_08031D30: .4byte gUnknown_02024A72
-_08031D34:
- cmp r5, 0x9
- bne _08031D50
- ldr r0, _08031D48 @ =gUnknown_02024A72
- ldrb r0, [r0, 0x3]
-_08031D3C:
- lsls r0, 3
- ldr r1, _08031D4C @ =gUnknown_0820A4B4
- adds r0, r1
- bl LoadCompressedObjectPic
- b _08031D52
- .align 2, 0
-_08031D48: .4byte gUnknown_02024A72
-_08031D4C: .4byte gUnknown_0820A4B4
-_08031D50:
- movs r6, 0x1
-_08031D52:
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8031C30
-
- thumb_func_start load_gfxc_health_bar
-load_gfxc_health_bar: @ 8031D5C
- push {lr}
- ldr r0, _08031D6C @ =gUnknown_08D09C48
- movs r1, 0x80
- lsls r1, 18
- bl sub_800D238
- pop {r0}
- bx r0
- .align 2, 0
-_08031D6C: .4byte gUnknown_08D09C48
- thumb_func_end load_gfxc_health_bar
-
- thumb_func_start battle_load_something
-battle_load_something: @ 8031D70
- push {r4-r6,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- movs r6, 0
- ldrb r0, [r5]
- cmp r0, 0x6
- bls _08031D80
- b _08031EDE
-_08031D80:
- lsls r0, 2
- ldr r1, _08031D8C @ =_08031D90
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08031D8C: .4byte _08031D90
- .align 2, 0
-_08031D90:
- .4byte _08031DAC
- .4byte _08031DB2
- .4byte _08031EBC
- .4byte _08031DC8
- .4byte _08031DF8
- .4byte _08031E34
- .4byte _08031ED4
-_08031DAC:
- bl sub_8031F0C
- b _08031EBC
-_08031DB2:
- ldrb r0, [r4]
- bl sub_8031C30
- lsls r0, 24
- cmp r0, 0
- beq _08031DC0
- b _08031EB8
-_08031DC0:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- b _08031EDE
-_08031DC8:
- ldr r0, _08031DE0 @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- beq _08031DE4
- ldrb r0, [r4]
- cmp r0, 0
- bne _08031DE4
- bl battle_make_oam_safari_battle
- b _08031DEA
- .align 2, 0
-_08031DE0: .4byte gBattleTypeFlags
-_08031DE4:
- ldrb r0, [r4]
- bl battle_make_oam_normal_battle
-_08031DEA:
- ldr r2, _08031DF4 @ =gUnknown_03004340
- ldrb r1, [r4]
- adds r1, r2
- strb r0, [r1]
- b _08031EA6
- .align 2, 0
-_08031DF4: .4byte gUnknown_03004340
-_08031DF8:
- ldrb r0, [r4]
- bl sub_8043F44
- ldr r0, _08031E18 @ =gUnknown_02024A72
- ldrb r1, [r4]
- adds r0, r1, r0
- ldrb r0, [r0]
- cmp r0, 0x1
- bhi _08031E20
- ldr r0, _08031E1C @ =gUnknown_03004340
- adds r0, r1, r0
- ldrb r0, [r0]
- movs r1, 0
- bl nullsub_11
- b _08031EA6
- .align 2, 0
-_08031E18: .4byte gUnknown_02024A72
-_08031E1C: .4byte gUnknown_03004340
-_08031E20:
- ldr r0, _08031E30 @ =gUnknown_03004340
- adds r0, r1, r0
- ldrb r0, [r0]
- movs r1, 0x1
- bl nullsub_11
- b _08031EA6
- .align 2, 0
-_08031E30: .4byte gUnknown_03004340
-_08031E34:
- ldrb r0, [r4]
- bl battle_side_get_owner
- lsls r0, 24
- cmp r0, 0
- bne _08031E7C
- ldr r0, _08031E6C @ =gBattleTypeFlags
- ldrh r1, [r0]
- movs r0, 0x80
- ands r0, r1
- cmp r0, 0
- bne _08031E9A
- ldr r0, _08031E70 @ =gUnknown_03004340
- ldrb r1, [r4]
- adds r0, r1, r0
- ldrb r0, [r0]
- ldr r2, _08031E74 @ =gUnknown_02024A6A
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _08031E78 @ =gPlayerParty
- adds r1, r2
- movs r2, 0
- bl sub_8045A5C
- b _08031E9A
- .align 2, 0
-_08031E6C: .4byte gBattleTypeFlags
-_08031E70: .4byte gUnknown_03004340
-_08031E74: .4byte gUnknown_02024A6A
-_08031E78: .4byte gPlayerParty
-_08031E7C:
- ldr r0, _08031EC4 @ =gUnknown_03004340
- ldrb r1, [r4]
- adds r0, r1, r0
- ldrb r0, [r0]
- ldr r2, _08031EC8 @ =gUnknown_02024A6A
- lsls r1, 1
- adds r1, r2
- ldrh r2, [r1]
- movs r1, 0x64
- muls r1, r2
- ldr r2, _08031ECC @ =gEnemyParty
- adds r1, r2
- movs r2, 0
- bl sub_8045A5C
-_08031E9A:
- ldr r1, _08031EC4 @ =gUnknown_03004340
- ldrb r0, [r4]
- adds r0, r1
- ldrb r0, [r0]
- bl sub_8043DB0
-_08031EA6:
- ldrb r0, [r4]
- adds r0, 0x1
- strb r0, [r4]
- ldr r1, _08031ED0 @ =gUnknown_02024A68
- lsls r0, 24
- lsrs r0, 24
- ldrb r1, [r1]
- cmp r0, r1
- bne _08031EDE
-_08031EB8:
- movs r0, 0
- strb r0, [r4]
-_08031EBC:
- ldrb r0, [r5]
- adds r0, 0x1
- strb r0, [r5]
- b _08031EDE
- .align 2, 0
-_08031EC4: .4byte gUnknown_03004340
-_08031EC8: .4byte gUnknown_02024A6A
-_08031ECC: .4byte gEnemyParty
-_08031ED0: .4byte gUnknown_02024A68
-_08031ED4:
- bl sub_80327CC
- bl sub_8094958
- movs r6, 0x1
-_08031EDE:
- adds r0, r6, 0
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end battle_load_something
-
- thumb_func_start sub_8031EE8
-sub_8031EE8: @ 8031EE8
- push {r4,lr}
- ldr r4, _08031F08 @ =0x02017810
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x30
- bl memset
- adds r4, 0x30
- adds r0, r4, 0
- movs r1, 0
- movs r2, 0x10
- bl memset
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_08031F08: .4byte 0x02017810
- thumb_func_end sub_8031EE8
-
- thumb_func_start sub_8031F0C
-sub_8031F0C: @ 8031F0C
- push {lr}
- bl sub_8031EE8
- ldr r0, _08031F20 @ =0x02017800
- movs r1, 0
- movs r2, 0x10
- bl memset
- pop {r0}
- bx r0
- .align 2, 0
-_08031F20: .4byte 0x02017800
- thumb_func_end sub_8031F0C
-
- thumb_func_start sub_8031F24
-sub_8031F24: @ 8031F24
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- movs r4, 0
- ldr r5, _08031F78 @ =gUnknown_02024A68
- ldrb r0, [r5]
- cmp r4, r0
- bge _08031F6E
- ldr r0, _08031F7C @ =gSprites
- mov r8, r0
- movs r7, 0x1
- movs r0, 0x2
- negs r0, r0
- mov r12, r0
- ldr r6, _08031F80 @ =gUnknown_02024BE0
- ldr r3, _08031F84 @ =0x02017800
-_08031F44:
- adds r0, r4, r6
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- add r0, r8
- adds r0, 0x3E
- ldrb r1, [r0]
- lsls r1, 29
- lsrs r1, 31
- ands r1, r7
- ldrb r2, [r3]
- mov r0, r12
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- adds r3, 0x4
- adds r4, 0x1
- ldrb r0, [r5]
- cmp r4, r0
- blt _08031F44
-_08031F6E:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08031F78: .4byte gUnknown_02024A68
-_08031F7C: .4byte gSprites
-_08031F80: .4byte gUnknown_02024BE0
-_08031F84: .4byte 0x02017800
- thumb_func_end sub_8031F24
-
- thumb_func_start sub_8031F88
-sub_8031F88: @ 8031F88
- lsls r0, 24
- lsrs r0, 24
- lsls r3, r0, 2
- ldr r1, _08031FB8 @ =0x02017800
- adds r3, r1
- ldr r2, _08031FBC @ =gSprites
- ldr r1, _08031FC0 @ =gUnknown_02024BE0
- adds r0, r1
- ldrb r1, [r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- lsls r1, 29
- lsrs r1, 31
- ldrb r2, [r3]
- movs r0, 0x2
- negs r0, r0
- ands r0, r2
- orrs r0, r1
- strb r0, [r3]
- bx lr
- .align 2, 0
-_08031FB8: .4byte 0x02017800
-_08031FBC: .4byte gSprites
-_08031FC0: .4byte gUnknown_02024BE0
- thumb_func_end sub_8031F88
-
thumb_func_start sub_8031FC4
sub_8031FC4: @ 8031FC4
push {r4-r7,lr}