diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/battle_2.s | 4792 | ||||
-rw-r--r-- | asm/cable_club.s | 4 | ||||
-rw-r--r-- | asm/daycare.s | 458 | ||||
-rw-r--r-- | asm/easy_chat.s | 362 | ||||
-rw-r--r-- | asm/egg_hatch.s | 10 | ||||
-rw-r--r-- | asm/field_map_obj.s | 14745 | ||||
-rw-r--r-- | asm/party_menu.s | 3625 | ||||
-rw-r--r-- | asm/player_pc.s | 1027 | ||||
-rw-r--r-- | asm/secret_base.s | 2028 | ||||
-rw-r--r-- | asm/tv.s | 6507 |
10 files changed, 20 insertions, 33538 deletions
diff --git a/asm/battle_2.s b/asm/battle_2.s index 7d199fff2..cff6efe06 100644 --- a/asm/battle_2.s +++ b/asm/battle_2.s @@ -6,4798 +6,6 @@ .text - thumb_func_start sub_800FCD4 -sub_800FCD4: @ 800FCD4 - push {lr} - ldr r0, _0800FCF4 @ =REG_VCOUNT - ldrh r0, [r0] - subs r0, 0x6F - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x30 - bhi _0800FCEE - ldr r1, _0800FCF8 @ =REG_BG0CNT - movs r2, 0x98 - lsls r2, 8 - adds r0, r2, 0 - strh r0, [r1] -_0800FCEE: - pop {r0} - bx r0 - .align 2, 0 -_0800FCF4: .4byte REG_VCOUNT -_0800FCF8: .4byte REG_BG0CNT - thumb_func_end sub_800FCD4 - - thumb_func_start sub_800FCFC -sub_800FCFC: @ 800FCFC - push {lr} - bl Random - ldr r1, _0800FD78 @ =REG_BG0HOFS - ldr r0, _0800FD7C @ =gUnknown_030042A4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD80 @ =gUnknown_030042A0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD84 @ =gUnknown_030042C0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD88 @ =gUnknown_030041B4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD8C @ =gUnknown_03004288 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD90 @ =gUnknown_03004280 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD94 @ =gUnknown_030041B0 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x2 - ldr r0, _0800FD98 @ =gUnknown_030041B8 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x22 - ldr r0, _0800FD9C @ =gUnknown_030042C4 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x4 - ldr r0, _0800FDA0 @ =gUnknown_03004240 - ldrh r0, [r0] - strh r0, [r1] - subs r1, 0x2 - ldr r0, _0800FDA4 @ =gUnknown_03004200 - ldrh r0, [r0] - strh r0, [r1] - adds r1, 0x4 - ldr r0, _0800FDA8 @ =gUnknown_03004244 - ldrh r0, [r0] - strh r0, [r1] - bl LoadOam - bl ProcessSpriteCopyRequests - bl TransferPlttBuffer - bl sub_8089668 - pop {r0} - bx r0 - .align 2, 0 -_0800FD78: .4byte REG_BG0HOFS -_0800FD7C: .4byte gUnknown_030042A4 -_0800FD80: .4byte gUnknown_030042A0 -_0800FD84: .4byte gUnknown_030042C0 -_0800FD88: .4byte gUnknown_030041B4 -_0800FD8C: .4byte gUnknown_03004288 -_0800FD90: .4byte gUnknown_03004280 -_0800FD94: .4byte gUnknown_030041B0 -_0800FD98: .4byte gUnknown_030041B8 -_0800FD9C: .4byte gUnknown_030042C4 -_0800FDA0: .4byte gUnknown_03004240 -_0800FDA4: .4byte gUnknown_03004200 -_0800FDA8: .4byte gUnknown_03004244 - thumb_func_end sub_800FCFC - - thumb_func_start nullsub_36 -nullsub_36: @ 800FDAC - bx lr - thumb_func_end nullsub_36 - - thumb_func_start sub_800FDB0 -sub_800FDB0: @ 800FDB0 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _0800FDD0 - movs r1, 0x32 - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - lsrs r0, 8 - ldrh r1, [r5, 0x30] - adds r0, r1 - strh r0, [r5, 0x20] - b _0800FDE2 -_0800FDD0: - movs r1, 0x32 - ldrsh r0, [r5, r1] - movs r1, 0xFF - lsls r1, 8 - ands r0, r1 - asrs r0, 8 - ldrh r1, [r5, 0x30] - subs r1, r0 - strh r1, [r5, 0x20] -_0800FDE2: - movs r1, 0xC0 - lsls r1, 1 - adds r0, r1, 0 - ldrh r1, [r5, 0x32] - adds r0, r1 - strh r0, [r5, 0x32] - adds r0, r5, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x20 - ands r0, r1 - cmp r0, 0 - beq _0800FE16 - ldr r4, _0800FE1C @ =0x00002710 - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r4, 0 - bl FreeSpritePaletteByTag - adds r0, r5, 0 - bl FreeSpriteOamMatrix - adds r0, r5, 0 - bl DestroySprite -_0800FE16: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0800FE1C: .4byte 0x00002710 - thumb_func_end sub_800FDB0 - - thumb_func_start sub_800FE20 -sub_800FE20: @ 800FE20 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - ldr r0, _0800FE3C @ =sub_800FDB0 - str r0, [r4, 0x1C] - movs r0, 0x68 - bl PlaySE - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0800FE3C: .4byte sub_800FDB0 - thumb_func_end sub_800FE20 - - thumb_func_start sub_800FE40 -sub_800FE40: @ 800FE40 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - movs r1, 0 - str r1, [sp, 0x8] - ldr r0, _0800FE88 @ =0x02000000 - ldr r2, _0800FE8C @ =0x000160cb - adds r0, r2 - ldrb r2, [r0] - ldr r0, _0800FE90 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0800FEB4 - ldr r1, _0800FE94 @ =gLinkPlayers - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x18] - cmp r0, 0x1 - beq _0800FEA0 - cmp r0, 0x1 - bgt _0800FE98 - cmp r0, 0 - beq _0800FEB4 - b _0800FEBC - .align 2, 0 -_0800FE88: .4byte 0x02000000 -_0800FE8C: .4byte 0x000160cb -_0800FE90: .4byte gBattleTypeFlags -_0800FE94: .4byte gLinkPlayers -_0800FE98: - cmp r0, 0x2 - beq _0800FEB4 - cmp r0, 0x3 - bne _0800FEBC -_0800FEA0: - ldr r1, _0800FEAC @ =gEnemyParty - str r1, [sp, 0x4] - ldr r2, _0800FEB0 @ =gPlayerParty - str r2, [sp, 0x8] - b _0800FEBC - .align 2, 0 -_0800FEAC: .4byte gEnemyParty -_0800FEB0: .4byte gPlayerParty -_0800FEB4: - ldr r3, _08010008 @ =gPlayerParty - str r3, [sp, 0x4] - ldr r0, _0801000C @ =gEnemyParty - str r0, [sp, 0x8] -_0800FEBC: - movs r7, 0 - movs r1, 0 - mov r8, r1 - ldr r2, [sp] - lsls r2, 2 - str r2, [sp, 0xC] - movs r3, 0xCE - lsls r3, 1 - mov r10, r3 - mov r9, r1 -_0800FED0: - movs r0, 0x64 - mov r4, r8 - muls r4, r0 - ldr r0, [sp, 0x4] - adds r4, r0, r4 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - adds r1, r0, 0 - cmp r5, 0 - beq _0800FF40 - cmp r5, r10 - beq _0800FF14 - cmp r6, 0 - beq _0800FF14 - cmp r1, 0 - bne _0800FF14 - movs r0, 0x1 - mov r2, r9 - lsls r0, r2 - orrs r7, r0 -_0800FF14: - cmp r5, 0 - beq _0800FF40 - cmp r6, 0 - beq _0800FF2C - cmp r5, r10 - beq _0800FF24 - cmp r1, 0 - beq _0800FF2C -_0800FF24: - movs r0, 0x2 - mov r3, r9 - lsls r0, r3 - orrs r7, r0 -_0800FF2C: - cmp r5, 0 - beq _0800FF40 - cmp r5, r10 - beq _0800FF40 - cmp r6, 0 - bne _0800FF40 - movs r0, 0x3 - mov r1, r9 - lsls r0, r1 - orrs r7, r0 -_0800FF40: - movs r2, 0x2 - add r9, r2 - movs r3, 0x1 - add r8, r3 - mov r0, r8 - cmp r0, 0x5 - ble _0800FED0 - ldr r1, _08010010 @ =gTasks - ldr r2, [sp, 0xC] - ldr r3, [sp] - adds r0, r2, r3 - lsls r0, 3 - adds r0, r1 - strh r7, [r0, 0xE] - movs r7, 0 - movs r0, 0 - mov r8, r0 - movs r1, 0xCE - lsls r1, 1 - mov r10, r1 - mov r9, r0 -_0800FF6A: - movs r0, 0x64 - mov r4, r8 - muls r4, r0 - ldr r2, [sp, 0x8] - adds r4, r2, r4 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - lsls r0, 16 - lsrs r6, r0, 16 - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData - adds r1, r0, 0 - cmp r5, 0 - beq _0800FFDA - cmp r5, r10 - beq _0800FFAE - cmp r6, 0 - beq _0800FFAE - cmp r1, 0 - bne _0800FFAE - movs r0, 0x1 - mov r3, r9 - lsls r0, r3 - orrs r7, r0 -_0800FFAE: - cmp r5, 0 - beq _0800FFDA - cmp r6, 0 - beq _0800FFC6 - cmp r5, r10 - beq _0800FFBE - cmp r1, 0 - beq _0800FFC6 -_0800FFBE: - movs r0, 0x2 - mov r1, r9 - lsls r0, r1 - orrs r7, r0 -_0800FFC6: - cmp r5, 0 - beq _0800FFDA - cmp r5, r10 - beq _0800FFDA - cmp r6, 0 - bne _0800FFDA - movs r0, 0x3 - mov r2, r9 - lsls r0, r2 - orrs r7, r0 -_0800FFDA: - movs r3, 0x2 - add r9, r3 - movs r0, 0x1 - add r8, r0 - mov r1, r8 - cmp r1, 0x5 - ble _0800FF6A - ldr r1, _08010010 @ =gTasks - ldr r2, [sp, 0xC] - ldr r3, [sp] - adds r0, r2, r3 - lsls r0, 3 - adds r0, r1 - strh r7, [r0, 0x10] - 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 -_08010008: .4byte gPlayerParty -_0801000C: .4byte gEnemyParty -_08010010: .4byte gTasks - thumb_func_end sub_800FE40 - - thumb_func_start c2_8011A1C -c2_8011A1C: @ 8010014 - push {r4,r5,lr} - sub sp, 0x4 - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - bl SetVBlankCallback - movs r4, 0 - str r4, [sp] - movs r1, 0xC0 - lsls r1, 19 - ldr r2, _08010144 @ =0x05006000 - mov r0, sp - bl CpuSet - ldr r0, _08010148 @ =REG_MOSAIC - strh r4, [r0] - subs r0, 0xC - movs r2, 0xF0 - strh r2, [r0] - adds r0, 0x4 - ldr r3, _0801014C @ =0x00005051 - adds r1, r3, 0 - strh r1, [r0] - adds r0, 0x4 - strh r4, [r0] - adds r0, 0x2 - strh r4, [r0] - ldr r0, _08010150 @ =gUnknown_030042C4 - strh r2, [r0] - ldr r0, _08010154 @ =gUnknown_03004240 - strh r1, [r0] - bl dp12_8087EA4 - ldr r0, _08010158 @ =gUnknown_03004DE0 - movs r3, 0xF0 - movs r4, 0xF0 - lsls r4, 3 - adds r2, r0, r4 - movs r1, 0x4F -_08010066: - strh r3, [r0] - strh r3, [r2] - adds r2, 0x2 - adds r0, 0x2 - subs r1, 0x1 - cmp r1, 0 - bge _08010066 - movs r1, 0x50 - ldr r5, _0801015C @ =gWindowConfig_81E6C58 - ldr r0, _08010158 @ =gUnknown_03004DE0 - ldr r3, _08010160 @ =0x0000ff10 - movs r4, 0x82 - lsls r4, 4 - adds r2, r0, r4 - adds r0, 0xA0 -_08010084: - strh r3, [r0] - strh r3, [r2] - adds r2, 0x2 - adds r0, 0x2 - adds r1, 0x1 - cmp r1, 0x9F - ble _08010084 - adds r0, r5, 0 - bl SetUpWindowConfig - bl ResetPaletteFade - ldr r0, _08010164 @ =gUnknown_030042A4 - movs r4, 0 - strh r4, [r0] - ldr r0, _08010168 @ =gUnknown_030042A0 - strh r4, [r0] - ldr r0, _0801016C @ =gUnknown_030042C0 - strh r4, [r0] - ldr r0, _08010170 @ =gUnknown_030041B4 - strh r4, [r0] - ldr r0, _08010174 @ =gUnknown_03004288 - strh r4, [r0] - ldr r0, _08010178 @ =gUnknown_03004280 - strh r4, [r0] - ldr r0, _0801017C @ =gUnknown_030041B0 - strh r4, [r0] - ldr r0, _08010180 @ =gUnknown_030041B8 - strh r4, [r0] - ldr r0, _08010184 @ =gUnknown_03004210 - adds r1, r5, 0 - bl InitWindowFromConfig - ldr r0, _08010188 @ =gUnknown_030041D0 - ldr r1, _0801018C @ =gWindowConfig_81E71D0 - bl InitWindowFromConfig - ldr r0, _08010190 @ =gUnknown_03004250 - ldr r1, _08010194 @ =gWindowConfig_81E71EC - bl InitWindowFromConfig - bl sub_800D6D4 - ldr r0, _08010198 @ =gUnknown_08D004E0 - movs r1, 0 - movs r2, 0x40 - bl LoadCompressedPalette - bl sub_800D74C - bl ResetSpriteData - bl ResetTasks - bl sub_800E23C - ldr r1, _0801019C @ =REG_WINOUT - movs r0, 0x37 - strh r0, [r1] - bl FreeAllSpritePalettes - ldr r1, _080101A0 @ =gReservedSpritePaletteCount - movs r0, 0x4 - strb r0, [r1] - ldr r0, _080101A4 @ =sub_800FCFC - bl SetVBlankCallback - ldr r0, _080101A8 @ =sub_800DE30 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080101AC @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r2, 0x87 - lsls r2, 1 - strh r2, [r1, 0xA] - movs r2, 0x5A - strh r2, [r1, 0xC] - movs r2, 0x1 - strh r2, [r1, 0x12] - bl sub_800FE40 - ldr r0, _080101B0 @ =sub_80101B8 - bl SetMainCallback2 - ldr r0, _080101B4 @ =gUnknown_02024D1E - strb r4, [r0] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08010144: .4byte 0x05006000 -_08010148: .4byte REG_MOSAIC -_0801014C: .4byte 0x00005051 -_08010150: .4byte gUnknown_030042C4 -_08010154: .4byte gUnknown_03004240 -_08010158: .4byte gUnknown_03004DE0 -_0801015C: .4byte gWindowConfig_81E6C58 -_08010160: .4byte 0x0000ff10 -_08010164: .4byte gUnknown_030042A4 -_08010168: .4byte gUnknown_030042A0 -_0801016C: .4byte gUnknown_030042C0 -_08010170: .4byte gUnknown_030041B4 -_08010174: .4byte gUnknown_03004288 -_08010178: .4byte gUnknown_03004280 -_0801017C: .4byte gUnknown_030041B0 -_08010180: .4byte gUnknown_030041B8 -_08010184: .4byte gUnknown_03004210 -_08010188: .4byte gUnknown_030041D0 -_0801018C: .4byte gWindowConfig_81E71D0 -_08010190: .4byte gUnknown_03004250 -_08010194: .4byte gWindowConfig_81E71EC -_08010198: .4byte gUnknown_08D004E0 -_0801019C: .4byte REG_WINOUT -_080101A0: .4byte gReservedSpritePaletteCount -_080101A4: .4byte sub_800FCFC -_080101A8: .4byte sub_800DE30 -_080101AC: .4byte gTasks -_080101B0: .4byte sub_80101B8 -_080101B4: .4byte gUnknown_02024D1E - thumb_func_end c2_8011A1C - - thumb_func_start sub_80101B8 -sub_80101B8: @ 80101B8 - push {lr} - bl c2_081284E0 - bl AnimateSprites - bl BuildOamBuffer - bl UpdatePaletteFade - bl RunTasks - pop {r0} - bx r0 - thumb_func_end sub_80101B8 - - thumb_func_start c2_081284E0 -c2_081284E0: @ 80101D4 - push {r4,lr} - sub sp, 0x4 - ldr r4, _080101EC @ =gUnknown_02024D1E - ldrb r0, [r4] - cmp r0, 0x1 - beq _080101FC - cmp r0, 0x1 - bgt _080101F0 - cmp r0, 0 - beq _080101F6 - b _08010236 - .align 2, 0 -_080101EC: .4byte gUnknown_02024D1E -_080101F0: - cmp r0, 0x2 - beq _08010222 - b _08010236 -_080101F6: - movs r0, 0xFF - strb r0, [r4, 0x1] - b _0801021A -_080101FC: - ldrb r0, [r4, 0x1] - subs r0, 0x1 - strb r0, [r4, 0x1] - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08010236 - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade -_0801021A: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - b _08010236 -_08010222: - ldr r0, _08010240 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08010236 - ldr r0, _08010244 @ =gMain - ldr r0, [r0, 0x8] - bl SetMainCallback2 -_08010236: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08010240: .4byte gPaletteFade -_08010244: .4byte gMain - thumb_func_end c2_081284E0 - - thumb_func_start oac_poke_opponent -oac_poke_opponent: @ 8010248 - push {lr} - sub sp, 0x4 - ldr r1, _08010270 @ =sub_8010278 - str r1, [r0, 0x1C] - movs r1, 0 - bl StartSpriteAnimIfDifferent - movs r0, 0x80 - lsls r0, 10 - ldr r1, _08010274 @ =0x00003def - str r1, [sp] - movs r1, 0 - movs r2, 0xA - movs r3, 0xA - bl BeginNormalPaletteFade - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_08010270: .4byte sub_8010278 -_08010274: .4byte 0x00003def - thumb_func_end oac_poke_opponent - - thumb_func_start sub_8010278 -sub_8010278: @ 8010278 - push {lr} - adds r2, r0, 0 - ldr r0, _080102A4 @ =gUnknown_02024DE8 - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080102A0 - ldrh r0, [r2, 0x24] - adds r0, 0x2 - strh r0, [r2, 0x24] - lsls r0, 16 - cmp r0, 0 - bne _080102A0 - ldr r0, _080102A8 @ =sub_80102AC - str r0, [r2, 0x1C] - ldrh r0, [r2, 0x32] - movs r1, 0x19 - bl PlayCry1 -_080102A0: - pop {r0} - bx r0 - .align 2, 0 -_080102A4: .4byte gUnknown_02024DE8 -_080102A8: .4byte sub_80102AC - thumb_func_end sub_8010278 - - thumb_func_start sub_80102AC -sub_80102AC: @ 80102AC - push {r4,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _080102F4 - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - bl sub_804777C - ldr r1, _080102FC @ =gUnknown_03004340 - movs r2, 0x2E - ldrsh r0, [r4, r2] - adds r0, r1 - ldrb r0, [r0] - bl sub_8043DFC - ldr r0, _08010300 @ =nullsub_37 - str r0, [r4, 0x1C] - adds r0, r4, 0 - movs r1, 0 - bl StartSpriteAnimIfDifferent - movs r0, 0x80 - lsls r0, 10 - ldr r1, _08010304 @ =0x00003def - str r1, [sp] - movs r1, 0 - movs r2, 0xA - movs r3, 0 - bl BeginNormalPaletteFade -_080102F4: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080102FC: .4byte gUnknown_03004340 -_08010300: .4byte nullsub_37 -_08010304: .4byte 0x00003def - thumb_func_end sub_80102AC - - thumb_func_start nullsub_37 -nullsub_37: @ 8010308 - bx lr - thumb_func_end nullsub_37 - - thumb_func_start unref_sub_801030C -unref_sub_801030C: @ 801030C - movs r1, 0x6 - strh r1, [r0, 0x34] - movs r1, 0x1 - strh r1, [r0, 0x36] - ldr r1, _0801031C @ =sub_8010320 - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_0801031C: .4byte sub_8010320 - thumb_func_end unref_sub_801030C - - thumb_func_start sub_8010320 -sub_8010320: @ 8010320 - push {r4,lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x36] - subs r0, 0x1 - strh r0, [r3, 0x36] - lsls r0, 16 - cmp r0, 0 - bne _08010374 - movs r0, 0x8 - strh r0, [r3, 0x36] - movs r0, 0x3E - adds r0, r3 - mov r12, r0 - ldrb r2, [r0] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r4, 0x5 - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - orrs r0, r1 - mov r1, r12 - strb r0, [r1] - ldrh r0, [r3, 0x34] - subs r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - asrs r2, r0, 16 - cmp r2, 0 - bne _08010374 - ldrb r1, [r1] - adds r0, r4, 0 - ands r0, r1 - mov r1, r12 - strb r0, [r1] - ldr r0, _0801037C @ =nullsub_37 - str r0, [r3, 0x1C] - ldr r0, _08010380 @ =gUnknown_03004284 - str r2, [r0] -_08010374: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0801037C: .4byte nullsub_37 -_08010380: .4byte gUnknown_03004284 - thumb_func_end sub_8010320 - - thumb_func_start sub_8010384 -sub_8010384: @ 8010384 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r0 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, r6, 2 - ldr r0, _080103A4 @ =0x02017800 - adds r1, r0 - ldrh r0, [r1, 0x2] - cmp r0, 0 - beq _080103A8 - adds r4, r0, 0 - b _080103AC - .align 2, 0 -_080103A4: .4byte 0x02017800 -_080103A8: - mov r0, r9 - ldrh r4, [r0, 0x32] -_080103AC: - ldr r1, _08010414 @ =gUnknown_02024A6A - lsls r0, r6, 1 - adds r5, r0, r1 - ldrh r0, [r5] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r7, _08010418 @ =gEnemyParty - adds r0, r7 - movs r1, 0 - bl GetMonData - cmp r4, SPECIES_UNOWN - bne _08010430 - ldrh r0, [r5] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r7 - movs r1, 0 - bl GetMonData - adds r2, r0, 0 - movs r0, 0xC0 - lsls r0, 18 - ands r0, r2 - lsrs r0, 18 - movs r1, 0xC0 - lsls r1, 10 - ands r1, r2 - lsrs r1, 12 - orrs r0, r1 - movs r1, 0xC0 - lsls r1, 2 - ands r1, r2 - lsrs r1, 6 - orrs r0, r1 - movs r1, 0x3 - ands r1, r2 - orrs r0, r1 - movs r1, 0x1C - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - bne _0801041C - movs r0, SPECIES_UNOWN - b _08010426 - .align 2, 0 -_08010414: .4byte gUnknown_02024A6A -_08010418: .4byte gEnemyParty -_0801041C: - movs r1, 0xCE - lsls r1, 1 - adds r0, r1 - lsls r0, 16 - lsrs r0, 16 -_08010426: - ldr r1, _0801042C @ =gMonFrontPicCoords - lsls r0, 2 - b _08010468 - .align 2, 0 -_0801042C: .4byte gMonFrontPicCoords -_08010430: - ldr r0, _08010448 @ =SPECIES_CASTFORM - cmp r4, r0 @ Check if pokemon species is Castform - bne _08010454 - ldr r0, _0801044C @ =gUnknownCastformCoords_0837F598 - ldr r1, _08010450 @ =gBattleMonForms - adds r1, r6, r1 - ldrb r1, [r1] - lsls r1, 2 - adds r1, r0 - ldrb r0, [r1, 0x1] - b _0801046C - .align 2, 0 -_08010448: .4byte SPECIES_CASTFORM -_0801044C: .4byte gUnknownCastformCoords_0837F598 -_08010450: .4byte gBattleMonForms -_08010454: - movs r0, 0xCE - lsls r0, 1 - cmp r4, r0 - bls _08010464 - ldr r0, _08010460 @ =gMonFrontPicCoords - b _0801046A - .align 2, 0 -_08010460: .4byte gMonFrontPicCoords -_08010464: - ldr r1, _0801048C @ =gMonFrontPicCoords - lsls r0, r4, 2 -_08010468: - adds r0, r1 -_0801046A: - ldrb r0, [r0, 0x1] -_0801046C: - lsrs r1, r0, 3 - movs r0, 0x8 - subs r0, r1 - mov r1, r9 - strh r0, [r1, 0x34] - movs r0, 0x1 - strh r0, [r1, 0x36] - ldr r0, _08010490 @ =sub_8010494 - str r0, [r1, 0x1C] - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801048C: .4byte gMonFrontPicCoords -_08010490: .4byte sub_8010494 - thumb_func_end sub_8010384 - - thumb_func_start sub_8010494 -sub_8010494: @ 8010494 - push {r4,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x36] - subs r0, 0x1 - strh r0, [r4, 0x36] - lsls r0, 16 - cmp r0, 0 - bne _08010510 - movs r0, 0x2 - strh r0, [r4, 0x36] - ldrh r0, [r4, 0x26] - adds r0, 0x8 - strh r0, [r4, 0x26] - ldrh r0, [r4, 0x34] - subs r0, 0x1 - strh r0, [r4, 0x34] - lsls r0, 16 - cmp r0, 0 - bge _080104C8 - adds r0, r4, 0 - bl FreeSpriteOamMatrix - adds r0, r4, 0 - bl DestroySprite - b _08010510 -_080104C8: - ldrh r0, [r4, 0x2E] - lsls r0, 24 - lsrs r0, 24 - bl battle_get_per_side_status - ldr r1, _08010518 @ =gUnknown_081FAF4C - lsls r0, 24 - lsrs r0, 22 - adds r0, r1 - ldr r2, _0801051C @ =gBattleMonForms - movs r3, 0x2E - ldrsh r1, [r4, r3] - adds r1, r2 - ldrb r1, [r1] - lsls r1, 11 - ldr r2, [r0] - adds r2, r1 - movs r1, 0x34 - ldrsh r0, [r4, r1] - lsls r0, 8 - adds r2, r0 - movs r1, 0 - movs r0, 0xFF -_080104F6: - strb r1, [r2] - adds r2, 0x1 - subs r0, 0x1 - cmp r0, 0 - bge _080104F6 - ldr r0, _0801051C @ =gBattleMonForms - movs r2, 0x2E - ldrsh r1, [r4, r2] - adds r1, r0 - ldrb r1, [r1] - adds r0, r4, 0 - bl StartSpriteAnim -_08010510: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08010518: .4byte gUnknown_081FAF4C -_0801051C: .4byte gBattleMonForms - thumb_func_end sub_8010494 - - thumb_func_start sub_8010520 -sub_8010520: @ 8010520 - movs r1, 0x8 - strh r1, [r0, 0x34] - adds r1, r0, 0 - adds r1, 0x3E - ldrb r1, [r1] - lsls r1, 29 - lsrs r1, 31 - strh r1, [r0, 0x36] - ldr r1, _08010538 @ =sub_801053C - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_08010538: .4byte sub_801053C - thumb_func_end sub_8010520 - - thumb_func_start sub_801053C -sub_801053C: @ 801053C - push {lr} - adds r3, r0, 0 - ldrh r0, [r3, 0x34] - subs r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - cmp r0, 0 - bne _0801056E - movs r0, 0x3E - adds r0, r3 - mov r12, r0 - ldrb r2, [r0] - lsls r0, r2, 29 - lsrs r0, 31 - movs r1, 0x1 - eors r1, r0 - lsls r1, 2 - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - mov r1, r12 - strb r0, [r1] - movs r0, 0x8 - strh r0, [r3, 0x34] -_0801056E: - pop {r0} - bx r0 - thumb_func_end sub_801053C - - thumb_func_start sub_8010574 -sub_8010574: @ 8010574 - movs r1, 0x3E - adds r1, r0 - mov r12, r1 - movs r1, 0x1 - ldrh r2, [r0, 0x36] - ands r2, r1 - lsls r2, 2 - mov r1, r12 - ldrb r3, [r1] - movs r1, 0x5 - negs r1, r1 - ands r1, r3 - orrs r1, r2 - mov r2, r12 - strb r1, [r2] - movs r1, 0 - strh r1, [r0, 0x36] - ldr r1, _0801059C @ =nullsub_37 - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_0801059C: .4byte nullsub_37 - thumb_func_end sub_8010574 - - thumb_func_start sub_80105A0 -sub_80105A0: @ 80105A0 - ldr r1, _080105A8 @ =oac_poke_ally_ - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_080105A8: .4byte oac_poke_ally_ - thumb_func_end sub_80105A0 - - thumb_func_start oac_poke_ally_ -oac_poke_ally_: @ 80105AC - push {lr} - adds r2, r0, 0 - ldr r0, _080105D4 @ =gUnknown_02024DE8 - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080105D0 - ldrh r0, [r2, 0x24] - subs r0, 0x2 - strh r0, [r2, 0x24] - lsls r0, 16 - asrs r1, r0, 16 - cmp r1, 0 - bne _080105D0 - ldr r0, _080105D8 @ =nullsub_86 - str r0, [r2, 0x1C] - strh r1, [r2, 0x30] -_080105D0: - pop {r0} - bx r0 - .align 2, 0 -_080105D4: .4byte gUnknown_02024DE8 -_080105D8: .4byte nullsub_86 - thumb_func_end oac_poke_ally_ - - thumb_func_start sub_80105DC -sub_80105DC: @ 80105DC - ldr r1, _080105E4 @ =nullsub_86 - str r1, [r0, 0x1C] - bx lr - .align 2, 0 -_080105E4: .4byte nullsub_86 - thumb_func_end sub_80105DC - - thumb_func_start nullsub_86 -nullsub_86: @ 80105E8 - bx lr - thumb_func_end nullsub_86 - - thumb_func_start sub_80105EC -sub_80105EC: @ 80105EC - push {lr} - adds r2, r0, 0 - ldr r0, _08010610 @ =gUnknown_02024DE8 - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0801060C - ldrh r0, [r2, 0x30] - ldrh r1, [r2, 0x24] - adds r0, r1 - strh r0, [r2, 0x24] - ldrh r0, [r2, 0x32] - ldrh r1, [r2, 0x26] - adds r0, r1 - strh r0, [r2, 0x26] -_0801060C: - pop {r0} - bx r0 - .align 2, 0 -_08010610: .4byte gUnknown_02024DE8 - thumb_func_end sub_80105EC - - thumb_func_start dp11b_obj_instanciate -dp11b_obj_instanciate: @ 8010614 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - cmp r1, 0 - beq _0801064C - lsls r2, r4, 1 - adds r0, r2, r4 - lsls r0, 2 - ldr r1, _08010648 @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - b _0801065A - .align 2, 0 -_08010648: .4byte 0x02017810 -_0801064C: - lsls r2, r4, 1 - adds r0, r2, r4 - lsls r0, 2 - ldr r1, _08010698 @ =0x02017810 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x4 -_0801065A: - ands r0, r1 - adds r6, r2, 0 - cmp r0, 0 - bne _080106FA - ldr r0, _0801069C @ =objc_dp11b_pingpong - bl CreateInvisibleSpriteWithCallback - lsls r0, 24 - lsrs r5, r0, 24 - mov r0, r8 - cmp r0, 0x1 - bne _080106A8 - ldr r0, _080106A0 @ =gUnknown_03004340 - adds r0, r4, r0 - ldrb r7, [r0] - adds r0, r6, r4 - lsls r0, 2 - ldr r1, _08010698 @ =0x02017810 - adds r0, r1 - strb r5, [r0, 0x2] - ldrb r1, [r0] - movs r2, 0x2 - orrs r1, r2 - strb r1, [r0] - ldr r2, _080106A4 @ =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0x80 - b _080106CC - .align 2, 0 -_08010698: .4byte 0x02017810 -_0801069C: .4byte objc_dp11b_pingpong -_080106A0: .4byte gUnknown_03004340 -_080106A4: .4byte gSprites -_080106A8: - ldr r0, _08010708 @ =gUnknown_02024BE0 - adds r0, r4, r0 - ldrb r7, [r0] - adds r0, r6, r4 - lsls r0, 2 - ldr r1, _0801070C @ =0x02017810 - adds r0, r1 - strb r5, [r0, 0x3] - ldrb r1, [r0] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0] - ldr r2, _08010710 @ =gSprites - lsls r3, r5, 4 - adds r0, r3, r5 - lsls r0, 2 - adds r0, r2 - movs r1, 0xC0 -_080106CC: - strh r1, [r0, 0x2E] - adds r4, r2, 0 - adds r1, r3, r5 - lsls r1, 2 - adds r1, r4 - mov r2, r9 - lsls r0, r2, 24 - asrs r0, 24 - movs r2, 0 - strh r0, [r1, 0x30] - mov r3, r10 - lsls r0, r3, 24 - asrs r0, 24 - strh r0, [r1, 0x32] - strh r7, [r1, 0x34] - mov r0, r8 - strh r0, [r1, 0x36] - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r0, r4 - strh r2, [r0, 0x24] - strh r2, [r0, 0x26] -_080106FA: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08010708: .4byte gUnknown_02024BE0 -_0801070C: .4byte 0x02017810 -_08010710: .4byte gSprites - thumb_func_end dp11b_obj_instanciate - - thumb_func_start dp11b_obj_free -dp11b_obj_free: @ 8010714 - push {r4,r5,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0x1 - bne _0801075C - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _08010754 @ =0x02017810 - adds r5, r0, r1 - ldrb r1, [r5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080107A0 - ldr r2, _08010758 @ =gSprites - ldrb r1, [r5, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x34] - lsls r1, 24 - lsrs r4, r1, 24 - bl DestroySprite - ldrb r1, [r5] - movs r0, 0x3 - negs r0, r0 - b _0801078C - .align 2, 0 -_08010754: .4byte 0x02017810 -_08010758: .4byte gSprites -_0801075C: - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 2 - ldr r1, _080107A8 @ =0x02017810 - adds r5, r0, r1 - ldrb r1, [r5] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080107A0 - ldr r2, _080107AC @ =gSprites - ldrb r1, [r5, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r1, [r0, 0x34] - lsls r1, 24 - lsrs r4, r1, 24 - bl DestroySprite - ldrb r1, [r5] - movs r0, 0x5 - negs r0, r0 -_0801078C: - ands r0, r1 - strb r0, [r5] - ldr r0, _080107AC @ =gSprites - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - adds r1, r0 - movs r0, 0 - strh r0, [r1, 0x24] - strh r0, [r1, 0x26] -_080107A0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080107A8: .4byte 0x02017810 -_080107AC: .4byte gSprites - thumb_func_end dp11b_obj_free - - thumb_func_start objc_dp11b_pingpong -objc_dp11b_pingpong: @ 80107B0 - push {r4,r5,lr} - adds r4, r0, 0 - ldrh r0, [r4, 0x34] - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0x36 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - bne _080107C8 - movs r2, 0x2E - ldrsh r0, [r4, r2] - b _080107CC -_080107C8: - movs r1, 0x2E - ldrsh r0, [r4, r1] -_080107CC: - movs r2, 0x32 - ldrsh r1, [r4, r2] - bl Sin - ldr r2, _080107F8 @ =gSprites - lsls r1, r5, 4 - adds r1, r5 - lsls r1, 2 - adds r1, r2 - ldrh r2, [r4, 0x32] - adds r0, r2 - strh r0, [r1, 0x26] - ldrh r0, [r4, 0x30] - ldrh r1, [r4, 0x2E] - adds r0, r1 - movs r1, 0xFF - ands r0, r1 - strh r0, [r4, 0x2E] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080107F8: .4byte gSprites - thumb_func_end objc_dp11b_pingpong - - thumb_func_start nullsub_41 -nullsub_41: @ 80107FC - bx lr - thumb_func_end nullsub_41 - - thumb_func_start sub_8010800 -sub_8010800: @ 8010800 - push {lr} - bl sub_8010874 - ldr r1, _08010818 @ =gUnknown_02024D1E - movs r0, 0 - strb r0, [r1, 0x1] - ldr r1, _0801081C @ =gUnknown_030042D4 - ldr r0, _08010820 @ =bc_8012FAC - str r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_08010818: .4byte gUnknown_02024D1E -_0801081C: .4byte gUnknown_030042D4 -_08010820: .4byte bc_8012FAC - thumb_func_end sub_8010800 - - thumb_func_start sub_8010824 -sub_8010824: @ 8010824 - push {r4,r5,lr} - ldr r0, _08010864 @ =gUnknown_030042D4 - ldr r0, [r0] - bl _call_via_r0 - ldr r1, _08010868 @ =gUnknown_02024A60 - movs r0, 0 - strb r0, [r1] - ldr r0, _0801086C @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r0, 0 - beq _0801085E - ldr r5, _08010870 @ =gUnknown_03004330 - adds r4, r1, 0 -_08010840: - ldrb r0, [r4] - lsls r0, 2 - adds r0, r5 - ldr r0, [r0] - bl _call_via_r0 - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _0801086C @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08010840 -_0801085E: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08010864: .4byte gUnknown_030042D4 -_08010868: .4byte gUnknown_02024A60 -_0801086C: .4byte gUnknown_02024A68 -_08010870: .4byte gUnknown_03004330 - thumb_func_end sub_8010824 - - thumb_func_start sub_8010874 -sub_8010874: @ 8010874 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r0, 0 - bl sub_801365C - bl sub_801377C - movs r2, 0 - movs r3, 0 - ldr r0, _08010AC8 @ =gUnknown_02024C4C - mov r10, r0 - ldr r1, _08010ACC @ =gUnknown_02024C44 - mov r9, r1 - ldr r4, _08010AD0 @ =gUnknown_02024C3C - mov r8, r4 - ldr r0, _08010AD4 @ =gUnknown_02024C34 - mov r12, r0 - ldr r4, _08010AD8 @ =gUnknown_02024CA8 - movs r5, 0 - ldr r7, _08010ADC @ =gUnknown_02024C2C - ldr r6, _08010AE0 @ =gUnknown_02024C54 -_080108A4: - ldr r0, _08010AE4 @ =gUnknown_02024C98 - adds r0, r5, r0 - str r3, [r0] - movs r1, 0 -_080108AC: - adds r0, r4, r1 - strb r3, [r0] - adds r1, 0x1 - cmp r1, 0x1B - bls _080108AC - movs r0, 0x2 - strb r0, [r4, 0x16] - ldr r1, _08010AE8 @ =gUnknown_02024C70 - adds r0, r2, r1 - strb r3, [r0] - mov r0, r12 - strh r3, [r0] - mov r1, r8 - strh r3, [r1] - mov r0, r9 - strh r3, [r0] - mov r1, r10 - strh r3, [r1] - ldr r0, _08010AEC @ =gUnknown_02024C5C - adds r1, r2, r0 - movs r0, 0xFF - strb r0, [r1] - strh r3, [r6] - strh r3, [r7] - ldr r1, _08010AF0 @ =0x02017100 - adds r0, r5, r1 - str r3, [r0] - movs r0, 0x2 - add r10, r0 - add r9, r0 - add r8, r0 - add r12, r0 - adds r4, 0x1C - adds r5, 0x4 - adds r7, 0x2 - adds r6, 0x2 - adds r2, 0x1 - cmp r2, 0x3 - ble _080108A4 - movs r5, 0 - ldr r3, _08010AF4 @ =gUnknown_02024C80 - ldr r4, _08010AF8 @ =gUnknown_02024C7A - movs r2, 0x1 -_08010902: - strh r5, [r4] - movs r1, 0 -_08010906: - adds r0, r3, r1 - strb r5, [r0] - adds r1, 0x1 - cmp r1, 0xB - bls _08010906 - adds r3, 0xC - adds r4, 0x2 - subs r2, 0x1 - cmp r2, 0 - bge _08010902 - movs r1, 0 - ldr r2, _08010AFC @ =gPlayerMonIndex - strb r1, [r2] - ldr r3, _08010B00 @ =gEnemyMonIndex - strb r1, [r3] - ldr r4, _08010B04 @ =gBattleWeather - strh r1, [r4] - ldr r1, _08010B08 @ =gUnknown_02024DBC - movs r2, 0 - movs r3, 0 -_0801092E: - adds r0, r1, r2 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x2B - bls _0801092E - movs r0, 0 - ldr r1, _08010B0C @ =gUnknown_02024C6C - str r0, [r1] - ldr r2, _08010B10 @ =gBattleTypeFlags - ldrh r1, [r2] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0801095C - ldr r3, _08010B14 @ =gSaveBlock2 - ldrb r1, [r3, 0x15] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0801095C - movs r0, 0x80 - ldr r4, _08010B0C @ =gUnknown_02024C6C - str r0, [r4] -_0801095C: - ldr r1, _08010B14 @ =gSaveBlock2 - ldrb r0, [r1, 0x15] - lsls r0, 30 - lsrs r0, 31 - ldr r3, _08010B18 @ =0x02000000 - ldr r4, _08010B1C @ =0x00016084 - adds r2, r3, r4 - movs r1, 0 - strb r0, [r2] - ldr r0, _08010B20 @ =gUnknown_02024C0E - strb r1, [r0] - ldr r2, _08010B24 @ =gUnknown_02024D26 - strb r1, [r2] - ldr r3, _08010B28 @ =gUnknown_02024A64 - str r1, [r3] - movs r2, 0 - ldr r4, _08010B2C @ =gUnknown_02024D1A - strh r1, [r4] - ldr r1, _08010B18 @ =0x02000000 - ldr r3, _08010B30 @ =0x00017130 - adds r0, r1, r3 - strb r2, [r0] - ldr r4, _08010B34 @ =0x00017160 - adds r0, r1, r4 - strb r2, [r0] - ldr r1, _08010B38 @ =gUnknown_02024D1E - movs r2, 0 - adds r0, r1, 0x7 -_08010994: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08010994 - movs r5, 0 - ldr r0, _08010B3C @ =gUnknown_02024D18 - strh r5, [r0] - movs r0, 0 - ldr r1, _08010B40 @ =gBattleMoveDamage - str r0, [r1] - ldr r2, _08010B44 @ =gUnknown_02024DE8 - strh r0, [r2] - ldr r4, _08010B18 @ =0x02000000 - ldr r3, _08010B48 @ =0x00016002 - adds r0, r4, r3 - strb r5, [r0] - ldr r1, _08010B4C @ =0x000160a1 - adds r0, r4, r1 - strb r5, [r0] - ldr r2, _08010B50 @ =gUnknown_03004324 - strb r5, [r2] - ldr r3, _08010B54 @ =gUnknown_02024C0C - strb r5, [r3] - subs r1, 0x29 - adds r0, r4, r1 - strb r5, [r0] - ldr r2, _08010B58 @ =0x00016086 - adds r0, r4, r2 - strb r5, [r0] - ldr r3, _08010B5C @ =0x00016087 - adds r0, r4, r3 - strb r5, [r0] - ldr r0, _08010B60 @ =gEnemyParty - movs r1, 0xB - bl GetMonData - ldr r2, _08010B64 @ =gBaseStats - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - adds r1, r2 - ldrb r1, [r1, 0x8] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08010B68 @ =0x000004fb - bl __divsi3 - ldr r2, _08010B6C @ =0x00016089 - adds r1, r4, r2 - strb r0, [r1] - ldr r3, _08010B70 @ =0x00016088 - adds r1, r4, r3 - movs r0, 0x3 - strb r0, [r1] - ldr r1, _08010B74 @ =0x0001601b - adds r0, r4, r1 - strb r5, [r0] - subs r2, 0x33 - adds r1, r4, r2 - movs r0, 0x1 - strb r0, [r1] - movs r2, 0 - movs r1, 0 -_08010A12: - ldr r3, _08010B78 @ =0x000160ac - adds r0, r2, r3 - adds r0, r4 - strb r1, [r0] - adds r3, 0x20 - adds r0, r2, r3 - adds r0, r4 - strb r1, [r0] - adds r3, 0x1C - adds r0, r2, r3 - adds r0, r4 - strb r1, [r0] - adds r3, 0x8 - adds r0, r2, r3 - adds r0, r4 - strb r1, [r0] - adds r3, 0x10 - adds r0, r2, r3 - adds r0, r4 - strb r1, [r0] - adds r3, 0x8 - adds r0, r2, r3 - adds r0, r4 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x7 - ble _08010A12 - ldr r4, _08010B18 @ =0x02000000 - ldr r1, _08010B7C @ =0x000160c8 - adds r0, r4, r1 - movs r2, 0 - movs r1, 0x6 - strb r1, [r0] - subs r3, 0x3F - adds r0, r4, r3 - strb r1, [r0] - ldr r1, _08010B80 @ =0x00016113 - adds r0, r4, r1 - strb r2, [r0] - ldr r3, _08010B84 @ =gUnknown_030042E0 - movs r1, 0 - movs r2, 0xA - adds r0, r3, 0 - adds r0, 0x40 -_08010A6A: - strb r1, [r0] - subs r0, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _08010A6A - movs r1, 0 - strb r1, [r3, 0x13] - strb r1, [r3] - strb r1, [r3, 0x1] - strb r1, [r3, 0x2] - strb r1, [r3, 0x3] - strb r1, [r3, 0x4] - ldrb r2, [r3, 0x5] - movs r0, 0x2 - negs r0, r0 - ands r0, r2 - movs r2, 0x3 - negs r2, r2 - ands r0, r2 - strb r0, [r3, 0x5] - strh r1, [r3, 0x20] - strh r1, [r3, 0x22] - strh r1, [r3, 0x24] - strh r1, [r3, 0x6] - strh r1, [r3, 0x26] - strh r1, [r3, 0x28] - movs r2, 0 - adds r5, r3, 0 - adds r5, 0x8 - movs r4, 0 - adds r1, r3, 0 - adds r1, 0x14 -_08010AAA: - adds r0, r2, r5 - strb r4, [r0] - strb r4, [r1] - strb r4, [r1, 0x16] - adds r1, 0x1 - adds r2, 0x1 - cmp r2, 0x9 - ble _08010AAA - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08010AC8: .4byte gUnknown_02024C4C -_08010ACC: .4byte gUnknown_02024C44 -_08010AD0: .4byte gUnknown_02024C3C -_08010AD4: .4byte gUnknown_02024C34 -_08010AD8: .4byte gUnknown_02024CA8 -_08010ADC: .4byte gUnknown_02024C2C -_08010AE0: .4byte gUnknown_02024C54 -_08010AE4: .4byte gUnknown_02024C98 -_08010AE8: .4byte gUnknown_02024C70 -_08010AEC: .4byte gUnknown_02024C5C -_08010AF0: .4byte 0x02017100 -_08010AF4: .4byte gUnknown_02024C80 -_08010AF8: .4byte gUnknown_02024C7A -_08010AFC: .4byte gPlayerMonIndex -_08010B00: .4byte gEnemyMonIndex -_08010B04: .4byte gBattleWeather -_08010B08: .4byte gUnknown_02024DBC -_08010B0C: .4byte gUnknown_02024C6C -_08010B10: .4byte gBattleTypeFlags -_08010B14: .4byte gSaveBlock2 -_08010B18: .4byte 0x02000000 -_08010B1C: .4byte 0x00016084 -_08010B20: .4byte gUnknown_02024C0E -_08010B24: .4byte gUnknown_02024D26 -_08010B28: .4byte gUnknown_02024A64 -_08010B2C: .4byte gUnknown_02024D1A -_08010B30: .4byte 0x00017130 -_08010B34: .4byte 0x00017160 -_08010B38: .4byte gUnknown_02024D1E -_08010B3C: .4byte gUnknown_02024D18 -_08010B40: .4byte gBattleMoveDamage -_08010B44: .4byte gUnknown_02024DE8 -_08010B48: .4byte 0x00016002 -_08010B4C: .4byte 0x000160a1 -_08010B50: .4byte gUnknown_03004324 -_08010B54: .4byte gUnknown_02024C0C -_08010B58: .4byte 0x00016086 -_08010B5C: .4byte 0x00016087 -_08010B60: .4byte gEnemyParty -_08010B64: .4byte gBaseStats -_08010B68: .4byte 0x000004fb -_08010B6C: .4byte 0x00016089 -_08010B70: .4byte 0x00016088 -_08010B74: .4byte 0x0001601b -_08010B78: .4byte 0x000160ac -_08010B7C: .4byte 0x000160c8 -_08010B80: .4byte 0x00016113 -_08010B84: .4byte gUnknown_030042E0 - thumb_func_end sub_8010874 - - thumb_func_start sub_8010B88 -sub_8010B88: @ 8010B88 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - ldr r4, _08010CEC @ =gUnknown_02024CA8 - ldr r5, _08010CF0 @ =gUnknown_02024A60 - ldrb r1, [r5] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - mov r1, sp - adds r0, r4 - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldm r0!, {r2,r3,r6} - stm r1!, {r2,r3,r6} - ldr r0, [r0] - str r0, [r1] - ldr r2, _08010CF4 @ =gBattleMoves - ldr r3, _08010CF8 @ =gUnknown_02024BE6 - ldrh r1, [r3] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - mov r10, r4 - adds r7, r5, 0 - ldr r1, _08010CFC @ =gBattleMons - mov r8, r1 - ldr r2, _08010D00 @ =gUnknown_02024C98 - mov r12, r2 - cmp r0, 0x7F - beq _08010C66 - movs r5, 0 - adds r4, r7, 0 - movs r3, 0x58 - mov r2, r8 - adds r2, 0x18 - movs r1, 0x6 -_08010BDC: - ldrb r0, [r4] - muls r0, r3 - adds r0, r5, r0 - adds r0, r2 - strb r1, [r0] - adds r5, 0x1 - cmp r5, 0x7 - ble _08010BDC - movs r5, 0 - ldr r3, _08010D04 @ =gUnknown_02024A68 - ldrb r3, [r3] - cmp r5, r3 - bge _08010C52 - ldr r6, _08010D08 @ =gUnknown_02024AD0 - mov r9, r6 - ldr r3, _08010CEC @ =gUnknown_02024CA8 - ldr r4, _08010D00 @ =gUnknown_02024C98 -_08010BFE: - movs r0, 0x58 - muls r0, r5 - add r0, r9 - str r0, [sp, 0x20] - ldr r1, [r0] - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _08010C24 - ldrb r0, [r3, 0x14] - ldr r2, _08010CF0 @ =gUnknown_02024A60 - ldrb r2, [r2] - cmp r0, r2 - bne _08010C24 - ldr r0, _08010D0C @ =0xfbffffff - ands r1, r0 - ldr r6, [sp, 0x20] - str r1, [r6] -_08010C24: - ldr r1, [r4] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _08010C44 - ldrb r0, [r3, 0x15] - ldr r2, _08010CF0 @ =gUnknown_02024A60 - ldrb r2, [r2] - cmp r0, r2 - bne _08010C44 - movs r0, 0x19 - negs r0, r0 - ands r1, r0 - str r1, [r4] - movs r0, 0 - strb r0, [r3, 0x15] -_08010C44: - adds r3, 0x1C - adds r4, 0x4 - adds r5, 0x1 - ldr r6, _08010D04 @ =gUnknown_02024A68 - ldrb r6, [r6] - cmp r5, r6 - blt _08010BFE -_08010C52: - ldr r1, _08010CF8 @ =gUnknown_02024BE6 - ldrh r0, [r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r2, _08010CF4 @ =gBattleMoves - adds r1, r2 - ldrb r0, [r1] - cmp r0, 0x7F - bne _08010D18 -_08010C66: - ldrb r1, [r7] - movs r0, 0x58 - adds r2, r1, 0 - muls r2, r0 - mov r0, r8 - adds r0, 0x50 - adds r2, r0 - ldr r0, [r2] - ldr r1, _08010D10 @ =0x15100007 - ands r0, r1 - str r0, [r2] - ldrb r1, [r7] - lsls r1, 2 - add r1, r12 - ldr r0, [r1] - ldr r2, _08010D14 @ =0x0003043f - ands r0, r2 - str r0, [r1] - movs r5, 0 - ldr r3, _08010D04 @ =gUnknown_02024A68 - ldrb r3, [r3] - cmp r5, r3 - bge _08010D30 - movs r6, 0 -_08010C96: - ldrb r0, [r7] - bl battle_side_get_owner - adds r4, r0, 0 - lsls r0, r5, 24 - lsrs r0, 24 - bl battle_side_get_owner - lsls r4, 24 - lsls r0, 24 - cmp r4, r0 - beq _08010CD6 - ldr r1, _08010D00 @ =gUnknown_02024C98 - lsls r0, r5, 2 - adds r2, r0, r1 - ldr r1, [r2] - movs r0, 0x18 - ands r0, r1 - cmp r0, 0 - beq _08010CD6 - ldr r0, _08010CEC @ =gUnknown_02024CA8 - adds r0, r6, r0 - ldrb r0, [r0, 0x15] - ldrb r3, [r7] - cmp r0, r3 - bne _08010CD6 - movs r0, 0x19 - negs r0, r0 - ands r1, r0 - movs r0, 0x10 - orrs r1, r0 - str r1, [r2] -_08010CD6: - adds r6, 0x1C - adds r5, 0x1 - ldr r0, _08010D04 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r5, r0 - blt _08010C96 - ldr r6, _08010CEC @ =gUnknown_02024CA8 - mov r10, r6 - ldr r7, _08010CF0 @ =gUnknown_02024A60 - b _08010D30 - .align 2, 0 -_08010CEC: .4byte gUnknown_02024CA8 -_08010CF0: .4byte gUnknown_02024A60 -_08010CF4: .4byte gBattleMoves -_08010CF8: .4byte gUnknown_02024BE6 -_08010CFC: .4byte gBattleMons -_08010D00: .4byte gUnknown_02024C98 -_08010D04: .4byte gUnknown_02024A68 -_08010D08: .4byte gUnknown_02024AD0 -_08010D0C: .4byte 0xfbffffff -_08010D10: .4byte 0x15100007 -_08010D14: .4byte 0x0003043f -_08010D18: - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - mov r1, r8 - adds r1, 0x50 - adds r0, r1 - movs r1, 0 - str r1, [r0] - ldrb r0, [r7] - lsls r0, 2 - add r0, r12 - str r1, [r0] -_08010D30: - movs r5, 0 - ldr r6, _08010EFC @ =0x02000000 - ldr r0, _08010F00 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r5, r0 - bge _08010D92 - ldr r1, _08010F04 @ =gUnknown_02024AD0 - mov r9, r1 - ldr r2, _08010F08 @ =gBitTable - mov r8, r2 - ldr r4, _08010F0C @ =gUnknown_02024A60 - mov r12, r6 -_08010D48: - movs r0, 0x58 - muls r0, r5 - mov r1, r9 - adds r3, r0, r1 - ldrb r0, [r4] - lsls r0, 2 - add r0, r8 - ldr r0, [r0] - lsls r2, r0, 16 - ldr r1, [r3] - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - beq _08010D68 - bics r1, r2 - str r1, [r3] -_08010D68: - ldr r1, [r3] - movs r0, 0xE0 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _08010D88 - ldr r2, _08010F10 @ =0x00016020 - adds r0, r5, r2 - add r0, r12 - ldrb r0, [r0] - ldrb r2, [r4] - cmp r0, r2 - bne _08010D88 - ldr r0, _08010F14 @ =0xffff1fff - ands r1, r0 - str r1, [r3] -_08010D88: - adds r5, 0x1 - ldr r3, _08010F00 @ =gUnknown_02024A68 - ldrb r3, [r3] - cmp r5, r3 - blt _08010D48 -_08010D92: - ldrb r0, [r7] - ldr r1, _08010F18 @ =gUnknown_02024E60 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldrb r0, [r7] - ldr r2, _08010F1C @ =gUnknown_02024E64 - adds r0, r2 - strb r1, [r0] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - mov r3, r10 - adds r1, r0, r3 - movs r5, 0 - movs r2, 0 -_08010DB4: - adds r0, r1, r5 - strb r2, [r0] - adds r5, 0x1 - cmp r5, 0x1B - bls _08010DB4 - ldr r1, _08010F20 @ =gUnknown_02024BE6 - ldrh r0, [r1] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 2 - ldr r2, _08010F24 @ =gBattleMoves - adds r1, r2 - ldrb r0, [r1] - cmp r0, 0x7F - bne _08010E2C - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r10 - mov r1, sp - ldrb r1, [r1, 0xA] - strb r1, [r0, 0xA] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r10 - mov r1, sp - ldrb r1, [r1, 0x15] - strb r1, [r0, 0x15] - ldrb r0, [r7] - lsls r1, r0, 3 - subs r1, r0 - lsls r1, 2 - add r1, r10 - mov r0, sp - ldrb r2, [r0, 0xF] - lsls r2, 28 - movs r4, 0xF - lsrs r2, 28 - ldrb r3, [r1, 0xF] - movs r0, 0x10 - negs r0, r0 - ands r0, r3 - orrs r0, r2 - strb r0, [r1, 0xF] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r10 - mov r1, sp - ldrb r1, [r1, 0xF] - lsrs r1, 4 - lsls r1, 4 - ldrb r2, [r0, 0xF] - ands r4, r2 - orrs r4, r1 - strb r4, [r0, 0xF] -_08010E2C: - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - add r0, r10 - movs r3, 0 - movs r1, 0x2 - strb r1, [r0, 0x16] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _08010F28 @ =gUnknown_02024C34 - adds r0, r1 - movs r2, 0 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _08010F2C @ =gUnknown_02024C3C - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _08010F30 @ =gUnknown_02024C44 - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _08010F34 @ =gUnknown_02024C4C - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _08010F38 @ =gUnknown_02024C2C - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - ldr r1, _08010F3C @ =gUnknown_02024C5C - adds r0, r1 - movs r1, 0xFF - strb r1, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _08010F40 @ =0x000160ac - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 1 - adds r1, 0x1 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x53 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x1 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x1 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x1 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 1 - subs r1, 0x1B - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 1 - adds r1, 0x1 - adds r0, r1 - adds r0, r6 - strb r2, [r0] - ldr r2, _08010F44 @ =0x00017100 - adds r1, r6, r2 - ldrb r0, [r7] - lsls r0, 2 - adds r0, r1 - str r3, [r0] - ldr r6, _08010F20 @ =gUnknown_02024BE6 - strh r3, [r6] - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08010EFC: .4byte 0x02000000 -_08010F00: .4byte gUnknown_02024A68 -_08010F04: .4byte gUnknown_02024AD0 -_08010F08: .4byte gBitTable -_08010F0C: .4byte gUnknown_02024A60 -_08010F10: .4byte 0x00016020 -_08010F14: .4byte 0xffff1fff -_08010F18: .4byte gUnknown_02024E60 -_08010F1C: .4byte gUnknown_02024E64 -_08010F20: .4byte gUnknown_02024BE6 -_08010F24: .4byte gBattleMoves -_08010F28: .4byte gUnknown_02024C34 -_08010F2C: .4byte gUnknown_02024C3C -_08010F30: .4byte gUnknown_02024C44 -_08010F34: .4byte gUnknown_02024C4C -_08010F38: .4byte gUnknown_02024C2C -_08010F3C: .4byte gUnknown_02024C5C -_08010F40: .4byte 0x000160ac -_08010F44: .4byte 0x00017100 - thumb_func_end sub_8010B88 - - thumb_func_start sub_8010F48 -sub_8010F48: @ 8010F48 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - movs r4, 0 - ldr r7, _08011268 @ =gUnknown_02024A60 - ldr r0, _0801126C @ =gUnknown_02024C98 - mov r9, r0 - ldr r1, _08011270 @ =gUnknown_02024A68 - mov r8, r1 - ldr r2, _08011274 @ =0x02000000 - mov r12, r2 - ldr r6, _08011278 @ =gUnknown_02024D28 - adds r5, r7, 0 - movs r3, 0x58 - ldr r2, _0801127C @ =gBattleMons - adds r2, 0x18 - movs r1, 0x6 -_08010F70: - ldrb r0, [r5] - muls r0, r3 - adds r0, r4, r0 - adds r0, r2 - strb r1, [r0] - adds r4, 0x1 - cmp r4, 0x7 - ble _08010F70 - ldrb r1, [r7] - movs r0, 0x58 - muls r0, r1 - ldr r2, _0801127C @ =gBattleMons - adds r2, 0x50 - adds r0, r2 - movs r1, 0 - str r1, [r0] - ldrb r0, [r7] - lsls r0, 2 - add r0, r9 - str r1, [r0] - movs r4, 0 - mov r0, r8 - ldrb r0, [r0] - cmp r4, r0 - bge _08011012 - adds r3, r2, 0 - movs r5, 0 - ldr r1, _08011280 @ =gBitTable - mov r10, r1 - ldr r2, _08011274 @ =0x02000000 - mov r9, r2 -_08010FAE: - ldr r1, [r3] - movs r0, 0x80 - lsls r0, 19 - ands r0, r1 - cmp r0, 0 - beq _08010FCC - ldr r2, _08011284 @ =gUnknown_02024CA8 - adds r0, r5, r2 - ldrb r0, [r0, 0x14] - ldrb r2, [r7] - cmp r0, r2 - bne _08010FCC - ldr r0, _08011288 @ =0xfbffffff - ands r1, r0 - str r1, [r3] -_08010FCC: - ldrb r0, [r7] - lsls r0, 2 - add r0, r10 - ldr r0, [r0] - lsls r2, r0, 16 - ldr r1, [r3] - adds r0, r1, 0 - ands r0, r2 - cmp r0, 0 - beq _08010FE4 - bics r1, r2 - str r1, [r3] -_08010FE4: - ldr r1, [r3] - movs r0, 0xE0 - lsls r0, 8 - ands r0, r1 - cmp r0, 0 - beq _08011004 - ldr r2, _0801128C @ =0x00016020 - adds r0, r4, r2 - add r0, r9 - ldrb r0, [r0] - ldrb r2, [r7] - cmp r0, r2 - bne _08011004 - ldr r0, _08011290 @ =0xffff1fff - ands r1, r0 - str r1, [r3] -_08011004: - adds r3, 0x58 - adds r5, 0x1C - adds r4, 0x1 - mov r0, r8 - ldrb r0, [r0] - cmp r4, r0 - blt _08010FAE -_08011012: - ldrb r0, [r7] - ldr r1, _08011294 @ =gUnknown_02024E60 - adds r0, r1 - movs r1, 0 - strb r1, [r0] - ldrb r0, [r7] - ldr r2, _08011298 @ =gUnknown_02024E64 - adds r0, r2 - strb r1, [r0] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r2, _08011284 @ =gUnknown_02024CA8 - adds r1, r0, r2 - movs r4, 0 - movs r2, 0 -_08011034: - adds r0, r1, r4 - strb r2, [r0] - adds r4, 0x1 - cmp r4, 0x1B - bls _08011034 - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r0, 0x2 - negs r0, r0 - mov r9, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r0, 0x3 - negs r0, r0 - mov r8, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r0, 0x9 - negs r0, r0 - mov r10, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r5, 0x21 - negs r5, r5 - adds r0, r5, 0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r4, 0x41 - negs r4, r4 - adds r0, r4, 0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1] - movs r3, 0x7F - adds r0, r3, 0 - ands r0, r2 - strb r0, [r1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1, 0x1] - mov r0, r9 - ands r0, r2 - strb r0, [r1, 0x1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1, 0x1] - mov r0, r8 - ands r0, r2 - strb r0, [r1, 0x1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1, 0x1] - movs r0, 0x5 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldrb r1, [r7] - lsls r1, 4 - adds r1, r6 - ldrb r2, [r1, 0x1] - movs r0, 0x19 - negs r0, r0 - ands r0, r2 - strb r0, [r1, 0x1] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x1] - ands r5, r1 - strb r5, [r0, 0x1] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x1] - ands r4, r1 - strb r4, [r0, 0x1] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x1] - ands r3, r1 - strb r3, [r0, 0x1] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x2] - mov r2, r9 - ands r2, r1 - strb r2, [r0, 0x2] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x2] - mov r2, r8 - ands r2, r1 - strb r2, [r0, 0x2] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x2] - movs r2, 0x5 - negs r2, r2 - ands r2, r1 - strb r2, [r0, 0x2] - ldrb r0, [r7] - lsls r0, 4 - adds r0, r6 - ldrb r1, [r0, 0x2] - mov r2, r10 - ands r2, r1 - strb r2, [r0, 0x2] - ldrb r1, [r7] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - ldr r1, _08011284 @ =gUnknown_02024CA8 - adds r0, r1 - movs r3, 0 - movs r1, 0x2 - strb r1, [r0, 0x16] - ldrb r0, [r7] - lsls r0, 1 - ldr r2, _0801129C @ =gUnknown_02024C34 - adds r0, r2 - movs r2, 0 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _080112A0 @ =gUnknown_02024C3C - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _080112A4 @ =gUnknown_02024C44 - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _080112A8 @ =gUnknown_02024C4C - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _080112AC @ =gUnknown_02024C2C - adds r0, r1 - strh r3, [r0] - ldrb r0, [r7] - ldr r1, _080112B0 @ =gUnknown_02024C5C - adds r0, r1 - movs r1, 0xFF - strb r1, [r0] - ldrb r0, [r7] - lsls r0, 1 - ldr r1, _080112B4 @ =0x000160e8 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 1 - adds r1, 0x1 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 1 - subs r1, 0x3D - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 1 - adds r1, 0x1 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x53 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x1 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x1 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldrb r0, [r7] - lsls r0, 2 - adds r1, 0x1 - adds r0, r1 - add r0, r12 - strb r2, [r0] - ldr r1, _080112B8 @ =0x00017100 - add r1, r12 - ldrb r0, [r7] - lsls r0, 2 - adds r0, r1 - str r3, [r0] - ldrb r0, [r7] - movs r3, 0x58 - adds r1, r0, 0 - muls r1, r3 - ldr r2, _0801127C @ =gBattleMons - adds r1, r2 - ldrh r2, [r1] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - ldr r2, _080112BC @ =gBaseStats - adds r0, r2 - ldrb r0, [r0, 0x6] - adds r1, 0x21 - strb r0, [r1] - ldrb r0, [r7] - adds r1, r0, 0 - muls r1, r3 - ldr r0, _0801127C @ =gBattleMons - adds r1, r0 - ldrh r2, [r1] - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - ldr r2, _080112BC @ =gBaseStats - adds r0, r2 - ldrb r0, [r0, 0x7] - adds r1, 0x22 - strb 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 -_08011268: .4byte gUnknown_02024A60 -_0801126C: .4byte gUnknown_02024C98 -_08011270: .4byte gUnknown_02024A68 -_08011274: .4byte 0x02000000 -_08011278: .4byte gUnknown_02024D28 -_0801127C: .4byte gBattleMons -_08011280: .4byte gBitTable -_08011284: .4byte gUnknown_02024CA8 -_08011288: .4byte 0xfbffffff -_0801128C: .4byte 0x00016020 -_08011290: .4byte 0xffff1fff -_08011294: .4byte gUnknown_02024E60 -_08011298: .4byte gUnknown_02024E64 -_0801129C: .4byte gUnknown_02024C34 -_080112A0: .4byte gUnknown_02024C3C -_080112A4: .4byte gUnknown_02024C44 -_080112A8: .4byte gUnknown_02024C4C -_080112AC: .4byte gUnknown_02024C2C -_080112B0: .4byte gUnknown_02024C5C -_080112B4: .4byte 0x000160e8 -_080112B8: .4byte 0x00017100 -_080112BC: .4byte gBaseStats - thumb_func_end sub_8010F48 - - thumb_func_start bc_8012FAC -bc_8012FAC: @ 80112C0 - push {r4,r5,lr} - ldr r5, _080112D0 @ =gUnknown_02024D1E - ldrb r0, [r5] - cmp r0, 0 - beq _080112D4 - cmp r0, 0x1 - beq _080112F8 - b _0801132E - .align 2, 0 -_080112D0: .4byte gUnknown_02024D1E -_080112D4: - ldr r4, _080112F4 @ =gUnknown_02024A60 - ldrb r0, [r5, 0x1] - strb r0, [r4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl dp01_build_cmdbuf_x00_a_b_0 - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - b _0801132E - .align 2, 0 -_080112F4: .4byte gUnknown_02024A60 -_080112F8: - ldr r0, _0801131C @ =gUnknown_02024A64 - ldr r2, [r0] - cmp r2, 0 - bne _0801132E - ldrb r0, [r5, 0x1] - adds r0, 0x1 - strb r0, [r5, 0x1] - ldr r1, _08011320 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bne _0801132C - ldr r1, _08011324 @ =gUnknown_030042D4 - ldr r0, _08011328 @ =bc_load_battlefield - str r0, [r1] - b _0801132E - .align 2, 0 -_0801131C: .4byte gUnknown_02024A64 -_08011320: .4byte gUnknown_02024A68 -_08011324: .4byte gUnknown_030042D4 -_08011328: .4byte bc_load_battlefield -_0801132C: - strb r2, [r5] -_0801132E: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end bc_8012FAC - - thumb_func_start bc_load_battlefield -bc_load_battlefield: @ 8011334 - push {r4,r5,lr} - ldr r0, _0801136C @ =gUnknown_02024A64 - ldr r5, [r0] - cmp r5, 0 - bne _08011364 - movs r0, 0 - bl battle_get_side_with_given_state - ldr r4, _08011370 @ =gUnknown_02024A60 - strb r0, [r4] - ldr r0, _08011374 @ =gBattleTerrain - ldrb r1, [r0] - movs r0, 0 - bl dp01_build_cmdbuf_x2E_a - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution - ldr r1, _08011378 @ =gUnknown_030042D4 - ldr r0, _0801137C @ =sub_8011384 - str r0, [r1] - ldr r0, _08011380 @ =gUnknown_02024D1E - strb r5, [r0] - strb r5, [r0, 0x1] -_08011364: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0801136C: .4byte gUnknown_02024A64 -_08011370: .4byte gUnknown_02024A60 -_08011374: .4byte gBattleTerrain -_08011378: .4byte gUnknown_030042D4 -_0801137C: .4byte sub_8011384 -_08011380: .4byte gUnknown_02024D1E - thumb_func_end bc_load_battlefield - - thumb_func_start sub_8011384 -sub_8011384: @ 8011384 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - ldr r0, _080113E0 @ =gUnknown_02024A64 - ldr r1, [r0] - cmp r1, 0 - beq _08011396 - b _080115DA -_08011396: - ldr r2, _080113E4 @ =gUnknown_02024A60 - strb r1, [r2] - ldr r0, _080113E8 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r1, r0 - bcc _080113A4 - b _080115D4 -_080113A4: - movs r7, 0x58 - ldr r0, _080113EC @ =gBattleMons - mov r9, r0 - mov r8, r2 -_080113AC: - ldr r0, _080113F0 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080113F4 - ldr r4, _080113E4 @ =gUnknown_02024A60 - ldrb r0, [r4] - bl battle_side_get_owner - lsls r0, 24 - cmp r0, 0 - bne _080113F4 - ldrb r0, [r4] - muls r0, r7 - mov r1, r9 - adds r3, r0, r1 - movs r2, 0 - movs r1, 0 -_080113D2: - adds r0, r3, r2 - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x57 - bls _080113D2 - b _080114BE - .align 2, 0 -_080113E0: .4byte gUnknown_02024A64 -_080113E4: .4byte gUnknown_02024A60 -_080113E8: .4byte gUnknown_02024A68 -_080113EC: .4byte gBattleMons -_080113F0: .4byte gBattleTypeFlags -_080113F4: - mov r2, r8 - ldrb r0, [r2] - muls r0, r7 - mov r1, r9 - adds r3, r0, r1 - movs r2, 0 - ldr r6, _08011530 @ =gBaseStats - ldr r5, _08011534 @ =gUnknown_02024260 - ldr r4, _08011538 @ =gUnknown_02024A60 -_08011406: - adds r0, r3, r2 - ldrb r1, [r4] - lsls r1, 9 - adds r1, 0x4 - adds r1, r2, r1 - adds r1, r5 - ldrb r1, [r1] - strb r1, [r0] - adds r2, 0x1 - cmp r2, 0x57 - bls _08011406 - mov r2, r8 - ldrb r0, [r2] - adds r2, r0, 0 - muls r2, r7 - add r2, r9 - ldrh r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0, 0x6] - adds r2, 0x21 - strb r0, [r2] - mov r1, r8 - ldrb r0, [r1] - adds r2, r0, 0 - muls r2, r7 - add r2, r9 - ldrh r1, [r2] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0, 0x7] - adds r2, 0x22 - strb r0, [r2] - mov r2, r8 - ldrb r0, [r2] - adds r1, r0, 0 - muls r1, r7 - add r1, r9 - ldrh r0, [r1] - ldrb r1, [r1, 0x17] - lsrs r1, 7 - bl GetAbilityBySpecies - mov r2, r8 - ldrb r1, [r2] - muls r1, r7 - add r1, r9 - adds r1, 0x20 - strb r0, [r1] - ldrb r0, [r2] - bl battle_side_get_owner - lsls r0, 24 - lsrs r0, 23 - ldr r1, _0801153C @ =0x020160bc - adds r0, r1 - mov r2, r8 - ldrb r1, [r2] - muls r1, r7 - add r1, r9 - ldrh r1, [r1, 0x28] - strh r1, [r0] - movs r2, 0 - ldr r4, _08011538 @ =gUnknown_02024A60 - movs r5, 0x58 - ldr r1, _08011540 @ =gUnknown_02024A98 - adds r6, r4, 0 - movs r0, 0x18 - negs r0, r0 - adds r0, r1 - mov r12, r0 - movs r3, 0x6 -_0801149E: - ldrb r0, [r4] - muls r0, r5 - adds r0, r2, r0 - adds r0, r1 - strb r3, [r0] - adds r2, 0x1 - cmp r2, 0x7 - ble _0801149E - ldrb r0, [r6] - adds r1, r0, 0 - muls r1, r7 - mov r0, r12 - adds r0, 0x50 - adds r1, r0 - movs r0, 0 - str r0, [r1] -_080114BE: - ldr r4, _08011538 @ =gUnknown_02024A60 - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - cmp r0, 0 - bne _080114D8 - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_080114D8: - ldr r5, _08011544 @ =gBattleTypeFlags - ldrh r1, [r5] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _0801154C - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080114FE - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_080114FE: - ldrb r0, [r4] - bl battle_side_get_owner - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08011588 - ldrh r1, [r5] - ldr r2, _08011548 @ =0x00000902 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08011588 - ldrb r0, [r4] - muls r0, r7 - add r0, r9 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x2 - bl GetNationalPokedexFlag - b _08011588 - .align 2, 0 -_08011530: .4byte gBaseStats -_08011534: .4byte gUnknown_02024260 -_08011538: .4byte gUnknown_02024A60 -_0801153C: .4byte 0x020160bc -_08011540: .4byte gUnknown_02024A98 -_08011544: .4byte gBattleTypeFlags -_08011548: .4byte 0x00000902 -_0801154C: - ldrb r0, [r4] - bl battle_side_get_owner - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08011588 - ldrh r1, [r5] - ldr r2, _080115E8 @ =0x00000902 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08011588 - ldrb r0, [r4] - muls r0, r7 - add r0, r9 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x2 - bl GetNationalPokedexFlag - movs r0, 0 - bl dp01_build_cmdbuf_x04_4_4_4 - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_08011588: - ldr r0, _080115EC @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _080115BE - ldr r4, _080115F0 @ =gUnknown_02024A60 - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - beq _080115B2 - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _080115BE -_080115B2: - movs r0, 0 - bl dp01_build_cmdbuf_x07_7_7_7 - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_080115BE: - mov r1, r8 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldr r1, _080115F4 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcs _080115D4 - b _080113AC -_080115D4: - ldr r1, _080115F8 @ =gUnknown_030042D4 - ldr r0, _080115FC @ =bc_801333C - str r0, [r1] -_080115DA: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080115E8: .4byte 0x00000902 -_080115EC: .4byte gBattleTypeFlags -_080115F0: .4byte gUnknown_02024A60 -_080115F4: .4byte gUnknown_02024A68 -_080115F8: .4byte gUnknown_030042D4 -_080115FC: .4byte bc_801333C - thumb_func_end sub_8011384 - - thumb_func_start bc_801333C -bc_801333C: @ 8011600 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x30 - ldr r0, _08011658 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - beq _08011612 - b _0801178C -_08011612: - ldr r0, _0801165C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - bne _08011620 - b _0801172C -_08011620: - movs r7, 0 - add r0, sp, 0x4 - mov r8, r0 - mov r6, r8 - mov r5, sp -_0801162A: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _08011660 @ =gEnemyParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _08011650 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _08011668 -_08011650: - ldr r0, _08011664 @ =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _0801167A - .align 2, 0 -_08011658: .4byte gUnknown_02024A64 -_0801165C: .4byte gBattleTypeFlags -_08011660: .4byte gEnemyParty -_08011664: .4byte 0x0000ffff -_08011668: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_0801167A: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _0801162A - movs r0, 0x1 - bl battle_get_side_with_given_state - ldr r4, _080116D4 @ =gUnknown_02024A60 - strb r0, [r4] - movs r0, 0 - mov r1, sp - movs r2, 0x80 - bl dp01_build_cmdbuf_x30_TODO - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution - movs r7, 0 - mov r6, r8 - mov r5, sp -_080116A6: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _080116D8 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _080116CC - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _080116E0 -_080116CC: - ldr r0, _080116DC @ =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _080116F2 - .align 2, 0 -_080116D4: .4byte gUnknown_02024A60 -_080116D8: .4byte gPlayerParty -_080116DC: .4byte 0x0000ffff -_080116E0: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_080116F2: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _080116A6 - movs r0, 0 - bl battle_get_side_with_given_state - ldr r4, _08011720 @ =gUnknown_02024A60 - strb r0, [r4] - movs r0, 0 - mov r1, sp - movs r2, 0x80 - bl dp01_build_cmdbuf_x30_TODO - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution - ldr r1, _08011724 @ =gUnknown_030042D4 - ldr r0, _08011728 @ =bc_battle_begin_message - b _0801178A - .align 2, 0 -_08011720: .4byte gUnknown_02024A60 -_08011724: .4byte gUnknown_030042D4 -_08011728: .4byte bc_battle_begin_message -_0801172C: - movs r7, 0 - add r6, sp, 0x4 - mov r5, sp -_08011732: - movs r0, 0x64 - adds r1, r7, 0 - muls r1, r0 - ldr r0, _08011760 @ =gPlayerParty - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - cmp r0, 0 - beq _08011758 - adds r0, r4, 0 - movs r1, 0x41 - bl GetMonData - movs r1, 0xCE - lsls r1, 1 - cmp r0, r1 - bne _08011768 -_08011758: - ldr r0, _08011764 @ =0x0000ffff - strh r0, [r5] - movs r0, 0 - b _0801177A - .align 2, 0 -_08011760: .4byte gPlayerParty -_08011764: .4byte 0x0000ffff -_08011768: - adds r0, r4, 0 - movs r1, 0x39 - bl GetMonData - strh r0, [r5] - adds r0, r4, 0 - movs r1, 0x37 - bl GetMonData -_0801177A: - str r0, [r6] - adds r6, 0x8 - adds r5, 0x8 - adds r7, 0x1 - cmp r7, 0x5 - ble _08011732 - ldr r1, _08011798 @ =gUnknown_030042D4 - ldr r0, _0801179C @ =bc_8013568 -_0801178A: - str r0, [r1] -_0801178C: - add sp, 0x30 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011798: .4byte gUnknown_030042D4 -_0801179C: .4byte bc_8013568 - thumb_func_end bc_801333C - - thumb_func_start bc_battle_begin_message -bc_battle_begin_message: @ 80117A0 - push {lr} - ldr r0, _080117C8 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - bne _080117C2 - movs r0, 0x1 - bl battle_get_side_with_given_state - ldr r1, _080117CC @ =gUnknown_02024A60 - strb r0, [r1] - ldrb r1, [r1] - movs r0, 0 - bl b_std_message - ldr r1, _080117D0 @ =gUnknown_030042D4 - ldr r0, _080117D4 @ =sub_8011800 - str r0, [r1] -_080117C2: - pop {r0} - bx r0 - .align 2, 0 -_080117C8: .4byte gUnknown_02024A64 -_080117CC: .4byte gUnknown_02024A60 -_080117D0: .4byte gUnknown_030042D4 -_080117D4: .4byte sub_8011800 - thumb_func_end bc_battle_begin_message - - thumb_func_start bc_8013568 -bc_8013568: @ 80117D8 - push {lr} - ldr r0, _080117F4 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - bne _080117F0 - ldr r1, _080117F8 @ =gUnknown_030042D4 - ldr r0, _080117FC @ =sub_8011970 - str r0, [r1] - movs r0, 0 - movs r1, 0 - bl b_std_message -_080117F0: - pop {r0} - bx r0 - .align 2, 0 -_080117F4: .4byte gUnknown_02024A64 -_080117F8: .4byte gUnknown_030042D4 -_080117FC: .4byte sub_8011970 - thumb_func_end bc_8013568 - - thumb_func_start sub_8011800 -sub_8011800: @ 8011800 - push {lr} - ldr r0, _08011828 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - bne _08011822 - movs r0, 0x1 - bl battle_get_side_with_given_state - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x1 - bl b_std_message - ldr r1, _0801182C @ =gUnknown_030042D4 - ldr r0, _08011830 @ =sub_8011834 - str r0, [r1] -_08011822: - pop {r0} - bx r0 - .align 2, 0 -_08011828: .4byte gUnknown_02024A64 -_0801182C: .4byte gUnknown_030042D4 -_08011830: .4byte sub_8011834 - thumb_func_end sub_8011800 - - thumb_func_start sub_8011834 -sub_8011834: @ 8011834 - push {r4,lr} - ldr r0, _080118AC @ =gUnknown_02024A64 - ldr r1, [r0] - cmp r1, 0 - bne _080118A4 - ldr r2, _080118B0 @ =gUnknown_02024A60 - strb r1, [r2] - ldr r0, _080118B4 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r1, r0 - bcs _0801189E - adds r4, r2, 0 -_0801184C: - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08011866 - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_08011866: - ldr r0, _080118B8 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0801188C - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0801188C - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_0801188C: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _080118B4 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _0801184C -_0801189E: - ldr r1, _080118BC @ =gUnknown_030042D4 - ldr r0, _080118C0 @ =bc_801362C - str r0, [r1] -_080118A4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080118AC: .4byte gUnknown_02024A64 -_080118B0: .4byte gUnknown_02024A60 -_080118B4: .4byte gUnknown_02024A68 -_080118B8: .4byte gBattleTypeFlags -_080118BC: .4byte gUnknown_030042D4 -_080118C0: .4byte bc_801362C - thumb_func_end sub_8011834 - - thumb_func_start bc_801362C -bc_801362C: @ 80118C4 - push {r4,r5,lr} - ldr r0, _08011930 @ =gUnknown_02024A64 - ldr r1, [r0] - cmp r1, 0 - bne _0801192A - ldr r2, _08011934 @ =gUnknown_02024A60 - strb r1, [r2] - ldr r0, _08011938 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r1, r0 - bcs _08011924 - adds r4, r2, 0 - ldr r5, _0801193C @ =gBattleMons -_080118DE: - ldrb r0, [r4] - bl battle_side_get_owner - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08011912 - ldr r0, _08011940 @ =gBattleTypeFlags - ldrh r1, [r0] - ldr r2, _08011944 @ =0x00000902 - adds r0, r2, 0 - ands r0, r1 - cmp r0, 0 - bne _08011912 - ldrb r1, [r4] - movs r0, 0x58 - muls r0, r1 - adds r0, r5 - ldrh r0, [r0] - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x2 - bl GetNationalPokedexFlag -_08011912: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08011938 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _080118DE -_08011924: - ldr r1, _08011948 @ =gUnknown_030042D4 - ldr r0, _0801194C @ =sub_8011970 - str r0, [r1] -_0801192A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08011930: .4byte gUnknown_02024A64 -_08011934: .4byte gUnknown_02024A60 -_08011938: .4byte gUnknown_02024A68 -_0801193C: .4byte gBattleMons -_08011940: .4byte gBattleTypeFlags -_08011944: .4byte 0x00000902 -_08011948: .4byte gUnknown_030042D4 -_0801194C: .4byte sub_8011970 - thumb_func_end bc_801362C - - thumb_func_start unref_sub_8011950 -unref_sub_8011950: @ 8011950 - push {lr} - ldr r0, _08011964 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - bne _08011960 - ldr r1, _08011968 @ =gUnknown_030042D4 - ldr r0, _0801196C @ =sub_8011970 - str r0, [r1] -_08011960: - pop {r0} - bx r0 - .align 2, 0 -_08011964: .4byte gUnknown_02024A64 -_08011968: .4byte gUnknown_030042D4 -_0801196C: .4byte sub_8011970 - thumb_func_end unref_sub_8011950 - - thumb_func_start sub_8011970 -sub_8011970: @ 8011970 - push {lr} - ldr r0, _080119A4 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - bne _0801199E - ldr r0, _080119A8 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _08011998 - movs r0, 0 - bl battle_get_side_with_given_state - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x1 - bl b_std_message -_08011998: - ldr r1, _080119AC @ =gUnknown_030042D4 - ldr r0, _080119B0 @ =sub_80119B4 - str r0, [r1] -_0801199E: - pop {r0} - bx r0 - .align 2, 0 -_080119A4: .4byte gUnknown_02024A64 -_080119A8: .4byte gBattleTypeFlags -_080119AC: .4byte gUnknown_030042D4 -_080119B0: .4byte sub_80119B4 - thumb_func_end sub_8011970 - - thumb_func_start sub_80119B4 -sub_80119B4: @ 80119B4 - push {r4,lr} - ldr r0, _08011A40 @ =gUnknown_02024A64 - ldr r1, [r0] - cmp r1, 0 - bne _08011A38 - ldr r2, _08011A44 @ =gUnknown_02024A60 - strb r1, [r2] - ldr r0, _08011A48 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r1, r0 - bcs _08011A1C - adds r4, r2, 0 -_080119CC: - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - cmp r0, 0 - bne _080119E4 - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_080119E4: - ldr r0, _08011A4C @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _08011A0A - ldrb r0, [r4] - bl battle_get_per_side_status - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _08011A0A - movs r0, 0 - bl dp01_build_cmdbuf_x2F_2F_2F_2F - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_08011A0A: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08011A48 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _080119CC -_08011A1C: - ldr r1, _08011A50 @ =0x02000000 - ldr r2, _08011A54 @ =0x00016058 - adds r0, r1, r2 - movs r2, 0 - strb r2, [r0] - ldr r3, _08011A58 @ =0x000160f9 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _08011A5C @ =0x000160e6 - adds r1, r0 - strb r2, [r1] - ldr r1, _08011A60 @ =gUnknown_030042D4 - ldr r0, _08011A64 @ =sub_8011B00 - str r0, [r1] -_08011A38: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08011A40: .4byte gUnknown_02024A64 -_08011A44: .4byte gUnknown_02024A60 -_08011A48: .4byte gUnknown_02024A68 -_08011A4C: .4byte gBattleTypeFlags -_08011A50: .4byte 0x02000000 -_08011A54: .4byte 0x00016058 -_08011A58: .4byte 0x000160f9 -_08011A5C: .4byte 0x000160e6 -_08011A60: .4byte gUnknown_030042D4 -_08011A64: .4byte sub_8011B00 - thumb_func_end sub_80119B4 - - thumb_func_start unref_sub_8011A68 -unref_sub_8011A68: @ 8011A68 - push {r4,r5,lr} - ldr r0, _08011AD8 @ =gUnknown_02024A64 - ldr r1, [r0] - cmp r1, 0 - bne _08011AD2 - ldr r2, _08011ADC @ =gUnknown_02024A60 - strb r1, [r2] - ldr r0, _08011AE0 @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r1, r0 - bcs _08011AB6 - adds r4, r2, 0 - ldr r5, _08011AE4 @ =gUnknown_02024A6A -_08011A82: - ldrb r0, [r4] - bl battle_side_get_owner - lsls r0, 24 - cmp r0, 0 - bne _08011AA4 - ldrb r0, [r4] - lsls r0, 1 - adds r0, r5 - ldrb r1, [r0] - movs r0, 0 - movs r2, 0 - bl sub_800C704 - ldrb r0, [r4] - bl dp01_battle_side_mark_buffer_for_execution -_08011AA4: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - ldr r1, _08011AE0 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08011A82 -_08011AB6: - ldr r1, _08011AE8 @ =0x02000000 - ldr r2, _08011AEC @ =0x00016058 - adds r0, r1, r2 - movs r2, 0 - strb r2, [r0] - ldr r3, _08011AF0 @ =0x000160f9 - adds r0, r1, r3 - strb r2, [r0] - ldr r0, _08011AF4 @ =0x000160e6 - adds r1, r0 - strb r2, [r1] - ldr r1, _08011AF8 @ =gUnknown_030042D4 - ldr r0, _08011AFC @ =sub_8011B00 - str r0, [r1] -_08011AD2: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08011AD8: .4byte gUnknown_02024A64 -_08011ADC: .4byte gUnknown_02024A60 -_08011AE0: .4byte gUnknown_02024A68 -_08011AE4: .4byte gUnknown_02024A6A -_08011AE8: .4byte 0x02000000 -_08011AEC: .4byte 0x00016058 -_08011AF0: .4byte 0x000160f9 -_08011AF4: .4byte 0x000160e6 -_08011AF8: .4byte gUnknown_030042D4 -_08011AFC: .4byte sub_8011B00 - thumb_func_end unref_sub_8011A68 - - thumb_func_start sub_8011B00 -sub_8011B00: @ 8011B00 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x8 - movs r0, 0 - mov r9, r0 - ldr r0, _08011B44 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - beq _08011B18 - b _08011D6E -_08011B18: - ldr r0, _08011B48 @ =0x02000000 - ldr r1, _08011B4C @ =0x00016058 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _08011BA2 - movs r5, 0 - ldr r1, _08011B50 @ =gUnknown_02024A68 - adds r3, r1, 0 - ldrb r2, [r1] - cmp r5, r2 - bge _08011B3E - ldr r2, _08011B54 @ =gUnknown_02024A7A -_08011B32: - adds r0, r5, r2 - strb r5, [r0] - adds r5, 0x1 - ldrb r0, [r1] - cmp r5, r0 - blt _08011B32 -_08011B3E: - movs r5, 0 - b _08011B98 - .align 2, 0 -_08011B44: .4byte gUnknown_02024A64 -_08011B48: .4byte 0x02000000 -_08011B4C: .4byte 0x00016058 -_08011B50: .4byte gUnknown_02024A68 -_08011B54: .4byte gUnknown_02024A7A -_08011B58: - adds r4, r5, 0x1 - mov r8, r4 - ldrb r1, [r1] - cmp r8, r1 - bge _08011B96 - ldr r6, _08011BC8 @ =gUnknown_02024A7A - ldr r3, _08011BCC @ =gUnknown_02024A68 - lsls r7, r5, 24 -_08011B68: - adds r0, r5, r6 - ldrb r0, [r0] - adds r1, r4, r6 - ldrb r1, [r1] - movs r2, 0x1 - str r3, [sp, 0x4] - bl b_first_side - lsls r0, 24 - ldr r3, [sp, 0x4] - cmp r0, 0 - beq _08011B8C - lsls r1, r4, 24 - lsrs r1, 24 - lsrs r0, r7, 24 - bl sub_8012FBC - ldr r3, [sp, 0x4] -_08011B8C: - adds r4, 0x1 - ldr r0, _08011BCC @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r4, r0 - blt _08011B68 -_08011B96: - mov r5, r8 -_08011B98: - adds r1, r3, 0 - ldrb r0, [r3] - subs r0, 0x1 - cmp r5, r0 - blt _08011B58 -_08011BA2: - ldr r0, _08011BD0 @ =0x02000000 - ldr r1, _08011BD4 @ =0x000160e6 - adds r4, r0, r1 - ldrb r0, [r4] - cmp r0, 0 - bne _08011BD8 - str r0, [sp] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0xFF - bl sub_8018324 - lsls r0, 24 - cmp r0, 0 - beq _08011BD8 - movs r0, 0x1 - strb r0, [r4] - b _08011D6E - .align 2, 0 -_08011BC8: .4byte gUnknown_02024A7A -_08011BCC: .4byte gUnknown_02024A68 -_08011BD0: .4byte 0x02000000 -_08011BD4: .4byte 0x000160e6 -_08011BD8: - ldr r0, _08011D7C @ =0x02000000 - ldr r3, _08011D80 @ =0x00016058 - adds r2, r0, r3 - ldr r1, _08011D84 @ =gUnknown_02024A68 - ldrb r0, [r2] - ldrb r1, [r1] - cmp r0, r1 - bcs _08011C28 - ldr r5, _08011D88 @ =gUnknown_02024A7A - adds r4, r2, 0 -_08011BEC: - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0 - str r0, [sp] - movs r2, 0 - movs r3, 0 - bl sub_8018324 - lsls r0, 24 - cmp r0, 0 - beq _08011C0E - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 -_08011C0E: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - mov r1, r9 - cmp r1, 0 - beq _08011C1C - b _08011D6E -_08011C1C: - ldr r1, _08011D84 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08011BEC -_08011C28: - movs r0, 0 - str r0, [sp] - movs r0, 0x9 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_8018324 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _08011C42 - b _08011D6E -_08011C42: - str r0, [sp] - movs r0, 0xB - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl sub_8018324 - lsls r0, 24 - cmp r0, 0 - beq _08011C58 - b _08011D6E -_08011C58: - ldr r0, _08011D7C @ =0x02000000 - ldr r3, _08011D8C @ =0x000160f9 - adds r2, r0, r3 - ldr r0, _08011D84 @ =gUnknown_02024A68 - ldrb r1, [r2] - adds r3, r0, 0 - ldrb r0, [r3] - cmp r1, r0 - bcs _08011CA8 - ldr r5, _08011D88 @ =gUnknown_02024A7A - adds r4, r2, 0 -_08011C6E: - ldrb r0, [r4] - adds r0, r5 - ldrb r1, [r0] - movs r0, 0 - movs r2, 0 - str r3, [sp, 0x4] - bl sub_801A02C - lsls r0, 24 - ldr r3, [sp, 0x4] - cmp r0, 0 - beq _08011C90 - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 -_08011C90: - ldrb r0, [r4] - adds r0, 0x1 - strb r0, [r4] - mov r1, r9 - cmp r1, 0 - bne _08011D6E - ldr r1, _08011D84 @ =gUnknown_02024A68 - lsls r0, 24 - lsrs r0, 24 - ldrb r1, [r1] - cmp r0, r1 - bcc _08011C6E -_08011CA8: - ldrb r0, [r3] - cmp r0, 0 - beq _08011CB6 - adds r5, r0, 0 -_08011CB0: - subs r5, 0x1 - cmp r5, 0 - bne _08011CB0 -_08011CB6: - movs r5, 0 - ldr r0, _08011D7C @ =0x02000000 - mov r8, r5 - ldr r3, _08011D90 @ =gUnknown_02024C60 - ldr r1, _08011D94 @ =0x00016068 - adds r2, r0, r1 - movs r7, 0x6 - ldr r6, _08011D98 @ =gUnknown_02024C18 - movs r4, 0xFF -_08011CC8: - strb r7, [r2] - adds r1, r5, r6 - ldrb r0, [r1] - orrs r0, r4 - strb r0, [r1] - mov r0, r8 - strh r0, [r3] - adds r3, 0x2 - adds r2, 0x1 - adds r5, 0x1 - cmp r5, 0x3 - ble _08011CC8 - movs r0, 0 - bl sub_801365C - bl sub_801377C - ldr r0, _08011D7C @ =0x02000000 - ldr r1, _08011D9C @ =gUnknown_02024C0C - ldrb r1, [r1] - ldr r2, _08011DA0 @ =0x000160a6 - adds r0, r2 - strb r1, [r0] - ldr r1, _08011DA4 @ =gUnknown_030042D4 - ldr r0, _08011DA8 @ =sub_8012324 - str r0, [r1] - bl sub_80156DC - ldr r1, _08011DAC @ =gUnknown_02024D1E - movs r2, 0 - adds r0, r1, 0x7 -_08011D06: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08011D06 - movs r5, 0 - ldr r3, _08011D84 @ =gUnknown_02024A68 - ldr r2, _08011D7C @ =0x02000000 - ldr r6, _08011DB0 @ =gBattleMoveFlags - ldrb r0, [r3] - cmp r5, r0 - bge _08011D36 - ldr r0, _08011DB4 @ =gBattleMons - movs r4, 0x9 - negs r4, r4 - adds r1, r0, 0 - adds r1, 0x50 -_08011D26: - ldr r0, [r1] - ands r0, r4 - str r0, [r1] - adds r1, 0x58 - adds r5, 0x1 - ldrb r0, [r3] - cmp r5, r0 - blt _08011D26 -_08011D36: - movs r1, 0xB0 - lsls r1, 9 - adds r0, r2, r1 - movs r1, 0 - strb r1, [r0] - ldr r3, _08011DB8 @ =0x00016001 - adds r0, r2, r3 - strb r1, [r0] - ldr r3, _08011DBC @ =0x00016110 - adds r0, r2, r3 - strb r1, [r0] - adds r3, 0x1 - adds r0, r2, r3 - strb r1, [r0] - ldr r3, _08011DC0 @ =0x0001600c - adds r0, r2, r3 - strb r1, [r0] - adds r3, 0x4D - adds r0, r2, r3 - strb r1, [r0] - subs r3, 0x4B - adds r0, r2, r3 - strb r1, [r0] - strb r1, [r6] - bl Random - ldr r1, _08011DC4 @ =gUnknown_02024D1C - strh r0, [r1] -_08011D6E: - add sp, 0x8 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011D7C: .4byte 0x02000000 -_08011D80: .4byte 0x00016058 -_08011D84: .4byte gUnknown_02024A68 -_08011D88: .4byte gUnknown_02024A7A -_08011D8C: .4byte 0x000160f9 -_08011D90: .4byte gUnknown_02024C60 -_08011D94: .4byte 0x00016068 -_08011D98: .4byte gUnknown_02024C18 -_08011D9C: .4byte gUnknown_02024C0C -_08011DA0: .4byte 0x000160a6 -_08011DA4: .4byte gUnknown_030042D4 -_08011DA8: .4byte sub_8012324 -_08011DAC: .4byte gUnknown_02024D1E -_08011DB0: .4byte gBattleMoveFlags -_08011DB4: .4byte gBattleMons -_08011DB8: .4byte 0x00016001 -_08011DBC: .4byte 0x00016110 -_08011DC0: .4byte 0x0001600c -_08011DC4: .4byte gUnknown_02024D1C - thumb_func_end sub_8011B00 - - thumb_func_start bc_8013B1C -bc_8013B1C: @ 8011DC8 - push {r4-r6,lr} - ldr r0, _08011E60 @ =gUnknown_02024A64 - ldr r0, [r0] - cmp r0, 0 - bne _08011E5A - ldr r1, _08011E64 @ =gUnknown_030042D4 - ldr r0, _08011E68 @ =sub_8011E8C - str r0, [r1] - ldr r3, _08011E6C @ =gUnknown_02024A68 - ldr r1, _08011E70 @ =gUnknown_02024D1E - movs r2, 0 - adds r0, r1, 0x7 -_08011DE0: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08011DE0 - movs r4, 0 - ldrb r3, [r3] - cmp r4, r3 - bge _08011E32 - ldr r5, _08011E74 @ =gBattleMons - adds r6, r5, 0 - adds r6, 0x4C -_08011DF6: - movs r0, 0x58 - adds r2, r4, 0 - muls r2, r0 - adds r1, r5, 0 - adds r1, 0x50 - adds r1, r2, r1 - ldr r3, [r1] - subs r0, 0x61 - ands r3, r0 - str r3, [r1] - adds r2, r6 - ldr r0, [r2] - movs r1, 0x7 - ands r0, r1 - cmp r0, 0 - beq _08011E28 - movs r0, 0x80 - lsls r0, 5 - ands r3, r0 - cmp r3, 0 - beq _08011E28 - lsls r0, r4, 24 - lsrs r0, 24 - bl b_cancel_multi_turn_move_maybe -_08011E28: - adds r4, 0x1 - ldr r0, _08011E6C @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r4, r0 - blt _08011DF6 -_08011E32: - ldr r0, _08011E78 @ =0x02000000 - movs r2, 0xB0 - lsls r2, 9 - adds r1, r0, r2 - movs r2, 0 - strb r2, [r1] - ldr r3, _08011E7C @ =0x00016001 - adds r1, r0, r3 - strb r2, [r1] - ldr r3, _08011E80 @ =0x00016110 - adds r1, r0, r3 - strb r2, [r1] - adds r3, 0x1 - adds r1, r0, r3 - strb r2, [r1] - ldr r1, _08011E84 @ =0x0001600e - adds r0, r1 - strb r2, [r0] - ldr r0, _08011E88 @ =gBattleMoveFlags - strb r2, [r0] -_08011E5A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08011E60: .4byte gUnknown_02024A64 -_08011E64: .4byte gUnknown_030042D4 -_08011E68: .4byte sub_8011E8C -_08011E6C: .4byte gUnknown_02024A68 -_08011E70: .4byte gUnknown_02024D1E -_08011E74: .4byte gBattleMons -_08011E78: .4byte 0x02000000 -_08011E7C: .4byte 0x00016001 -_08011E80: .4byte 0x00016110 -_08011E84: .4byte 0x0001600e -_08011E88: .4byte gBattleMoveFlags - thumb_func_end bc_8013B1C - - thumb_func_start sub_8011E8C -sub_8011E8C: @ 8011E8C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - movs r0, 0x1 - bl sub_801365C - ldr r0, _08011F3C @ =gUnknown_02024D26 - ldrb r0, [r0] - cmp r0, 0 - bne _08011EBC - bl sub_8015DFC - lsls r0, 24 - cmp r0, 0 - beq _08011EB0 - b _08011FEE -_08011EB0: - bl sub_8016558 - lsls r0, 24 - cmp r0, 0 - beq _08011EBC - b _08011FEE -_08011EBC: - bl sub_80173A4 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08011ECA - b _08011FEE -_08011ECA: - ldr r5, _08011F40 @ =0x02000000 - ldr r2, _08011F44 @ =0x00016059 - adds r0, r5, r2 - strb r1, [r0] - bl sub_80170DC - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _08011EE0 - b _08011FEE -_08011EE0: - movs r0, 0 - bl sub_801365C - ldr r2, _08011F48 @ =gUnknown_02024C6C - ldr r0, [r2] - ldr r1, _08011F4C @ =0xfffffdff - ands r0, r1 - ldr r1, _08011F50 @ =0xfff7ffff - ands r0, r1 - ldr r1, _08011F54 @ =0xffbfffff - ands r0, r1 - ldr r1, _08011F58 @ =0xffefffff - ands r0, r1 - str r0, [r2] - ldr r3, _08011F5C @ =0x00016002 - adds r0, r5, r3 - strb r4, [r0] - ldr r1, _08011F60 @ =0x000160a1 - adds r0, r5, r1 - strb r4, [r0] - ldr r2, _08011F64 @ =0x0001600c - adds r0, r5, r2 - strb r4, [r0] - ldr r0, _08011F68 @ =gBattleMoveDamage - str r4, [r0] - ldr r0, _08011F6C @ =gBattleMoveFlags - strb r4, [r0] - ldr r1, _08011F70 @ =gUnknown_02024D1E - movs r2, 0 - adds r0, r1, 0x4 -_08011F1C: - strb r2, [r0] - subs r0, 0x1 - cmp r0, r1 - bge _08011F1C - ldr r0, _08011F3C @ =gUnknown_02024D26 - ldrb r0, [r0] - cmp r0, 0 - beq _08011F80 - ldr r1, _08011F74 @ =gUnknown_02024A7F - movs r0, 0xC - strb r0, [r1] - ldr r1, _08011F78 @ =gUnknown_030042D4 - ldr r0, _08011F7C @ =sub_80138F0 - str r0, [r1] - b _08011FEE - .align 2, 0 -_08011F3C: .4byte gUnknown_02024D26 -_08011F40: .4byte 0x02000000 -_08011F44: .4byte 0x00016059 -_08011F48: .4byte gUnknown_02024C6C -_08011F4C: .4byte 0xfffffdff -_08011F50: .4byte 0xfff7ffff -_08011F54: .4byte 0xffbfffff -_08011F58: .4byte 0xffefffff -_08011F5C: .4byte 0x00016002 -_08011F60: .4byte 0x000160a1 -_08011F64: .4byte 0x0001600c -_08011F68: .4byte gBattleMoveDamage -_08011F6C: .4byte gBattleMoveFlags -_08011F70: .4byte gUnknown_02024D1E -_08011F74: .4byte gUnknown_02024A7F -_08011F78: .4byte gUnknown_030042D4 -_08011F7C: .4byte sub_80138F0 -_08011F80: - ldr r1, _08011FFC @ =gUnknown_030042E0 - ldrb r0, [r1, 0x13] - cmp r0, 0xFE - bhi _08011F8C - adds r0, 0x1 - strb r0, [r1, 0x13] -_08011F8C: - movs r2, 0 - ldr r4, _08012000 @ =gUnknown_02024A68 - ldr r3, _08012004 @ =0x02000000 - mov r9, r3 - ldr r0, _08012008 @ =gUnknown_030042D4 - mov r10, r0 - ldr r1, _0801200C @ =gUnknown_02024C0C - mov r12, r1 - ldr r3, _08012010 @ =sub_8012324 - mov r8, r3 - ldrb r0, [r4] - cmp r2, r0 - bge _08011FC2 - ldr r7, _08012014 @ =gUnknown_02024C18 - movs r6, 0xFF - movs r5, 0 - ldr r3, _08012018 @ =gUnknown_02024C60 -_08011FAE: - adds r1, r2, r7 - ldrb r0, [r1] - orrs r0, r6 - strb r0, [r1] - strh r5, [r3] - adds r3, 0x2 - adds r2, 0x1 - ldrb r1, [r4] - cmp r2, r1 - blt _08011FAE -_08011FC2: - ldr r0, _08012004 @ =0x02000000 - movs r1, 0x6 - movs r2, 0x3 - ldr r3, _0801201C @ =0x0001606b - adds r0, r3 -_08011FCC: - strb r1, [r0] - subs r0, 0x1 - subs r2, 0x1 - cmp r2, 0 - bge _08011FCC - mov r0, r12 - ldrb r1, [r0] - ldr r0, _08012020 @ =0x000160a6 - add r0, r9 - strb r1, [r0] - mov r1, r8 - mov r2, r10 - str r1, [r2] - bl Random - ldr r1, _08012024 @ =gUnknown_02024D1C - strh r0, [r1] -_08011FEE: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08011FFC: .4byte gUnknown_030042E0 -_08012000: .4byte gUnknown_02024A68 -_08012004: .4byte 0x02000000 -_08012008: .4byte gUnknown_030042D4 -_0801200C: .4byte gUnknown_02024C0C -_08012010: .4byte sub_8012324 -_08012014: .4byte gUnknown_02024C18 -_08012018: .4byte gUnknown_02024C60 -_0801201C: .4byte 0x0001606b -_08012020: .4byte 0x000160a6 -_08012024: .4byte gUnknown_02024D1C - thumb_func_end sub_8011E8C - - thumb_func_start sub_8012028 -sub_8012028: @ 8012028 - push {r4-r7,lr} - sub sp, 0x4 - ldr r1, _0801204C @ =gBattleMons - ldr r0, _08012050 @ =gUnknown_02024A60 - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, r0, r1 - ldrh r0, [r1, 0x2E] - cmp r0, 0xAF - bne _08012058 - ldr r1, _08012054 @ =gEnigmaBerries - lsls r0, r2, 3 - subs r0, r2 - lsls r0, 2 - adds r0, r1 - ldrb r2, [r0, 0x7] - b _08012062 - .align 2, 0 -_0801204C: .4byte gBattleMons -_08012050: .4byte gUnknown_02024A60 -_08012054: .4byte gEnigmaBerries -_08012058: - ldrh r0, [r1, 0x2E] - bl ItemId_GetHoldEffect - lsls r0, 24 - lsrs r2, r0, 24 -_08012062: - ldr r1, _0801217C @ =gUnknown_02024C0B - ldr r3, _08012180 @ =gUnknown_02024A60 - ldrb r0, [r3] - strb r0, [r1] - cmp r2, 0x25 - bne _08012070 - b _080121F4 -_08012070: - ldr r0, _08012184 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0801207E - b _080121F4 -_0801207E: - ldr r1, _08012188 @ =gBattleMons - ldrb r2, [r3] - movs r0, 0x58 - muls r0, r2 - adds r0, r1 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x32 - bne _08012092 - b _080121F4 -_08012092: - adds r0, r2, 0 - bl battle_side_get_owner - lsls r0, 24 - lsrs r6, r0, 24 - movs r5, 0 - ldr r0, _0801218C @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r5, r0 - bge _08012126 - movs r7, 0 -_080120A8: - lsrs r4, r7, 24 - adds r0, r4, 0 - bl battle_side_get_owner - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - beq _080120CC - ldr r1, _08012188 @ =gBattleMons - movs r0, 0x58 - muls r0, r5 - adds r0, r1 - adds r2, r0, 0 - adds r2, 0x20 - ldrb r0, [r2] - cmp r0, 0x17 - bne _080120CC - b _080121FC -_080120CC: - adds r0, r4, 0 - bl battle_side_get_owner - lsls r0, 24 - lsrs r0, 24 - cmp r6, r0 - beq _08012116 - ldr r3, _08012188 @ =gBattleMons - ldr r0, _08012180 @ =gUnknown_02024A60 - ldrb r0, [r0] - movs r2, 0x58 - muls r0, r2 - adds r1, r0, r3 - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - cmp r0, 0x1A - beq _08012116 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08012116 - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x2 - beq _08012116 - adds r0, r5, 0 - muls r0, r2 - adds r0, r3 - adds r2, r0, 0 - adds r2, 0x20 - ldrb r0, [r2] - cmp r0, 0x47 - bne _08012116 - b _08012220 -_08012116: - movs r0, 0x80 - lsls r0, 17 - adds r7, r0 - adds r5, 0x1 - ldr r0, _0801218C @ =gUnknown_02024A68 - ldrb r0, [r0] - cmp r5, r0 - blt _080120A8 -_08012126: - ldr r4, _08012180 @ =gUnknown_02024A60 - ldrb r1, [r4] - movs r0, 0 - str r0, [sp] - movs r0, 0xF - movs r2, 0x2A - movs r3, 0 - bl sub_8018324 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _080121A0 - ldr r6, _08012188 @ =gBattleMons - ldrb r0, [r4] - movs r3, 0x58 - muls r0, r3 - adds r1, r0, r6 - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0x8 - beq _0801215E - adds r0, r1, 0 - adds r0, 0x22 - ldrb r0, [r0] - cmp r0, 0x8 - bne _080121A0 -_0801215E: - ldr r0, _08012190 @ =0x02000000 - subs r1, r5, 0x1 - ldr r2, _08012194 @ =0x00016003 - adds r0, r2 - strb r1, [r0] - ldr r2, _08012198 @ =byte_2024C06 - adds r0, r1, 0 - muls r0, r3 - adds r0, r6 - adds r0, 0x20 - ldrb r0, [r0] - strb r0, [r2] - ldr r1, _0801219C @ =gUnknown_02024D1E - movs r0, 0x2 - b _08012248 - .align 2, 0 -_0801217C: .4byte gUnknown_02024C0B -_08012180: .4byte gUnknown_02024A60 -_08012184: .4byte gBattleTypeFlags -_08012188: .4byte gBattleMons -_0801218C: .4byte gUnknown_02024A68 -_08012190: .4byte 0x02000000 -_08012194: .4byte 0x00016003 -_08012198: .4byte byte_2024C06 -_0801219C: .4byte gUnknown_02024D1E -_080121A0: - ldr r1, _080121D4 @ =gBattleMons - ldr r0, _080121D8 @ =gUnknown_02024A60 - ldrb r2, [r0] - movs r0, 0x58 - muls r0, r2 - adds r1, 0x50 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080121DC @ =0x0400e000 - ands r0, r1 - cmp r0, 0 - bne _080121CA - ldr r1, _080121E0 @ =gUnknown_02024C98 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - movs r1, 0x80 - lsls r1, 3 - ands r0, r1 - cmp r0, 0 - beq _080121E8 -_080121CA: - ldr r1, _080121E4 @ =gUnknown_02024D1E - movs r0, 0 - strb r0, [r1, 0x5] - movs r0, 0x1 - b _0801224A - .align 2, 0 -_080121D4: .4byte gBattleMons -_080121D8: .4byte gUnknown_02024A60 -_080121DC: .4byte 0x0400e000 -_080121E0: .4byte gUnknown_02024C98 -_080121E4: .4byte gUnknown_02024D1E -_080121E8: - ldr r0, _080121F8 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08012244 -_080121F4: - movs r0, 0 - b _0801224A - .align 2, 0 -_080121F8: .4byte gBattleTypeFlags -_080121FC: - ldr r0, _08012210 @ =0x02000000 - ldr r1, _08012214 @ =0x00016003 - adds r0, r1 - strb r5, [r0] - ldr r1, _08012218 @ =byte_2024C06 - ldrb r0, [r2] - strb r0, [r1] - ldr r1, _0801221C @ =gUnknown_02024D1E - movs r0, 0x2 - b _08012248 - .align 2, 0 -_08012210: .4byte 0x02000000 -_08012214: .4byte 0x00016003 -_08012218: .4byte byte_2024C06 -_0801221C: .4byte gUnknown_02024D1E -_08012220: - ldr r0, _08012234 @ =0x02000000 - ldr r1, _08012238 @ =0x00016003 - adds r0, r1 - strb r5, [r0] - ldr r1, _0801223C @ =byte_2024C06 - ldrb r0, [r2] - strb r0, [r1] - ldr r1, _08012240 @ =gUnknown_02024D1E - movs r0, 0x2 - b _08012248 - .align 2, 0 -_08012234: .4byte 0x02000000 -_08012238: .4byte 0x00016003 -_0801223C: .4byte byte_2024C06 -_08012240: .4byte gUnknown_02024D1E -_08012244: - ldr r1, _08012254 @ =gUnknown_02024D1E - movs r0, 0x1 -_08012248: - strb r0, [r1, 0x5] -_0801224A: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08012254: .4byte gUnknown_02024D1E - thumb_func_end sub_8012028 - - thumb_func_start sub_8012258 -sub_8012258: @ 8012258 - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r3, 0 - ldr r7, _080122E4 @ =gUnknown_02024A6A - ldr r4, _080122E8 @ =gUnknown_02038470 - ldr r1, _080122EC @ =0x02000000 - lsls r6, r5, 1 - ldr r2, _080122F0 @ =0x0001606c - adds r0, r5, r2 - adds r0, r6, r0 - adds r2, r0, r1 -_08012270: - adds r1, r3, r4 - ldrb r0, [r2] - strb r0, [r1] - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x2 - ble _08012270 - adds r0, r6, r7 - ldrb r0, [r0] - bl pokemon_order_func - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r7, _080122EC @ =0x02000000 - ldr r1, _080122F4 @ =0x00016068 - adds r0, r5, r1 - adds r0, r7 - ldrb r0, [r0] - bl pokemon_order_func - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl sub_8094C98 - ldr r0, _080122F8 @ =gBattleTypeFlags - ldrh r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080122FC - movs r3, 0 - ldr r2, _080122F0 @ =0x0001606c - movs r0, 0x2 - adds r1, r5, 0 - eors r1, r0 - adds r0, r5, r2 - adds r0, r6, r0 - adds r4, r0, r7 - ldr r5, _080122E8 @ =gUnknown_02038470 - lsls r0, r1, 1 - adds r0, r1 - adds r0, r2 - adds r2, r0, r7 -_080122CC: - adds r0, r3, r5 - ldrb r1, [r0] - strb r1, [r4] - ldrb r0, [r0] - strb r0, [r2] - adds r4, 0x1 - adds r2, 0x1 - adds r3, 0x1 - cmp r3, 0x2 - ble _080122CC - b _08012316 - .align 2, 0 -_080122E4: .4byte gUnknown_02024A6A -_080122E8: .4byte gUnknown_02038470 -_080122EC: .4byte 0x02000000 -_080122F0: .4byte 0x0001606c -_080122F4: .4byte 0x00016068 -_080122F8: .4byte gBattleTypeFlags -_080122FC: - movs r3, 0 - ldr r2, _0801231C @ =0x0001606c - adds r0, r5, r2 - adds r0, r6, r0 - adds r1, r0, r7 - ldr r2, _08012320 @ =gUnknown_02038470 -_08012308: - adds r0, r3, r2 - ldrb r0, [r0] - strb r0, [r1] - adds r1, 0x1 - adds r3, 0x1 - cmp r3, 0x2 - ble _08012308 -_08012316: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0801231C: .4byte 0x0001606c -_08012320: .4byte gUnknown_02038470 - thumb_func_end sub_8012258 - thumb_func_start sub_8012324 sub_8012324: @ 8012324 push {r4-r7,lr} diff --git a/asm/cable_club.s b/asm/cable_club.s index bd7a2bd5c..7e5d19c24 100644 --- a/asm/cable_club.s +++ b/asm/cable_club.s @@ -1515,7 +1515,7 @@ unref_sub_8083BB0: @ 8083BB0 bl CreateTask lsls r0, 24 lsrs r0, 24 - ldr r2, _08083BD8 @ =sub_80B9484 + ldr r2, _08083BD8 @ =Task_RecordMixing_Main adds r1, r4, 0 bl SetTaskFuncWithFollowupFunc bl ScriptContext1_Stop @@ -1524,7 +1524,7 @@ unref_sub_8083BB0: @ 8083BB0 bx r0 .align 2, 0 _08083BD4: .4byte sub_80839DC -_08083BD8: .4byte sub_80B9484 +_08083BD8: .4byte Task_RecordMixing_Main thumb_func_end unref_sub_8083BB0 thumb_func_start sub_8083BDC diff --git a/asm/daycare.s b/asm/daycare.s index 98e8a9ea4..a0ea9124a 100644 --- a/asm/daycare.s +++ b/asm/daycare.s @@ -6,446 +6,6 @@ .text - thumb_func_start sub_8041324 -sub_8041324: @ 8041324 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r9, r0 - mov r10, r1 - movs r7, 0 - movs r5, 0 - mov r6, r10 - adds r6, 0x74 - movs r0, 0x1 - mov r8, r0 -_0804133E: - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 4 - mov r1, r9 - adds r4, r1, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - beq _0804136E - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r4, 0 - movs r1, 0xC - bl GetBoxMonData - adds r1, r0, 0 - cmp r1, 0 - bne _0804136E - lsls r0, r5, 1 - adds r0, r6, r0 - b _08041374 -_0804136E: - lsls r0, r5, 1 - adds r0, r6, r0 - mov r1, r8 -_08041374: - strh r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bls _0804133E - mov r0, r10 - str r7, [r0, 0x70] - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_8041324 - - thumb_func_start daycare_empty_slot -daycare_empty_slot: @ 8041394 - push {r4,r5,lr} - adds r5, r0, 0 - movs r4, 0 -_0804139A: - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 4 - adds r0, r5, r0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - bne _080413B2 - lsls r0, r4, 24 - asrs r0, 24 - b _080413C0 -_080413B2: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bls _0804139A - movs r0, 0x1 - negs r0, r0 -_080413C0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end daycare_empty_slot - - thumb_func_start sub_80413C8 -sub_80413C8: @ 80413C8 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - adds r7, r0, 0 - mov r8, r1 - mov r0, r8 - bl daycare_empty_slot - lsls r0, 24 - lsrs r4, r0, 24 - mov r9, r4 - adds r0, r7, 0 - bl MonHasMail - lsls r0, 24 - cmp r0, 0 - beq _0804144A - lsls r0, r4, 24 - asrs r0, 24 - lsls r4, r0, 3 - subs r4, r0 - lsls r4, 3 - adds r5, r4, 0 - adds r5, 0xA0 - add r5, r8 - adds r6, r5, 0 - adds r6, 0x24 - ldr r1, _08041490 @ =gSaveBlock2 - adds r0, r6, 0 - bl StringCopy - adds r0, r6, 0 - movs r1, 0xFC - bl PadNameString - adds r6, 0x8 - adds r0, r7, 0 - adds r1, r6, 0 - bl pokemon_get_nick - adds r0, r7, 0 - movs r1, 0x40 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - add r4, r8 - ldr r2, _08041494 @ =gSaveBlock1 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - adds r4, 0xA0 - ldr r0, _08041498 @ =0x00002b4c - adds r1, r0 - ldm r1!, {r0,r2,r3} - stm r4!, {r0,r2,r3} - ldm r1!, {r0,r2,r3} - stm r4!, {r0,r2,r3} - ldm r1!, {r0,r2,r3} - stm r4!, {r0,r2,r3} - adds r0, r7, 0 - bl TakeMailFromMon -_0804144A: - mov r2, r9 - lsls r4, r2, 24 - asrs r4, 24 - lsls r5, r4, 2 - adds r4, r5, r4 - lsls r4, 4 - add r4, r8 - adds r0, r4, 0 - adds r1, r7, 0 - movs r2, 0x50 - bl memcpy - adds r0, r4, 0 - bl BoxMonRestorePP - movs r0, 0x88 - lsls r0, 1 - add r0, r8 - adds r0, r5 - movs r1, 0 - str r1, [r0] - adds r0, r7, 0 - bl ZeroMonData - bl party_compaction - bl CalculatePlayerPartyCount - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08041490: .4byte gSaveBlock2 -_08041494: .4byte gSaveBlock1 -_08041498: .4byte 0x00002b4c - thumb_func_end sub_80413C8 - - thumb_func_start daycare_send -daycare_send: @ 804149C - push {lr} - ldr r0, _080414B4 @ =gLastFieldPokeMenuOpened - ldrb r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080414B8 @ =gPlayerParty - adds r0, r1 - ldr r1, _080414BC @ =gSaveBlock1 + 0x2F9C - bl sub_80413C8 - pop {r0} - bx r0 - .align 2, 0 -_080414B4: .4byte gLastFieldPokeMenuOpened -_080414B8: .4byte gPlayerParty -_080414BC: .4byte gSaveBlock1 + 0x2F9C - thumb_func_end daycare_send - - thumb_func_start sub_80414C0 -sub_80414C0: @ 80414C0 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r5, 0 - adds r4, 0x50 - adds r0, r4, 0 - movs r1, 0xB - bl GetBoxMonData - cmp r0, 0 - beq _08041516 - adds r0, r5, 0 - movs r1, 0xB - bl GetBoxMonData - adds r6, r0, 0 - cmp r6, 0 - bne _08041516 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x50 - bl memcpy - adds r0, r4, 0 - bl ZeroBoxMonData - adds r0, r5, 0 - adds r0, 0xA0 - adds r4, 0x88 - adds r1, r4, 0 - movs r2, 0x38 - bl memcpy - movs r0, 0x88 - lsls r0, 1 - adds r2, r5, r0 - adds r0, 0x4 - adds r1, r5, r0 - ldr r0, [r1] - str r0, [r2] - str r6, [r1] - adds r0, r4, 0 - bl sub_80417F4 -_08041516: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80414C0 - - thumb_func_start sub_804151C -sub_804151C: @ 804151C - push {r4-r7,lr} - adds r4, r0, 0 - movs r5, 0 - ldr r7, _08041538 @ =0x0000ffff -_08041524: - adds r0, r4, 0 - bl TryIncrementMonLevel - lsls r0, 24 - cmp r0, 0 - beq _08041560 - movs r6, 0x1 - adds r5, 0x1 - b _0804154C - .align 2, 0 -_08041538: .4byte 0x0000ffff -_0804153C: - movs r6, 0 - cmp r0, r7 - bne _0804154C - ldr r0, _0804156C @ =word_2024E82 - ldrh r1, [r0] - adds r0, r4, 0 - bl DeleteFirstMoveAndGiveMoveToMon -_0804154C: - adds r0, r4, 0 - adds r1, r6, 0 - bl sub_803B7C8 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0 - bne _0804153C - cmp r5, 0x63 - ble _08041524 -_08041560: - adds r0, r4, 0 - bl CalculateMonStats - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804156C: .4byte word_2024E82 - thumb_func_end sub_804151C - - thumb_func_start sub_8041570 -sub_8041570: @ 8041570 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x68 - adds r5, r0, 0 - lsls r1, 24 - lsrs r4, r1, 24 - lsls r7, r4, 2 - adds r0, r7, r4 - lsls r0, 4 - adds r6, r5, r0 - ldr r1, _08041640 @ =gStringVar1 - adds r0, r6, 0 - bl pokemon_get_nick_ - adds r0, r6, 0 - movs r1, 0xB - bl GetBoxMonData - lsls r0, 16 - lsrs r0, 16 - mov r9, r0 - adds r0, r6, 0 - mov r1, sp - bl sub_803B4B4 - mov r0, sp - movs r1, 0x38 - bl GetMonData - cmp r0, 0x64 - beq _080415D8 - mov r0, sp - movs r1, 0x19 - bl GetMonData - movs r2, 0x88 - lsls r2, 1 - adds r1, r5, r2 - adds r1, r7 - ldr r1, [r1] - adds r0, r1 - str r0, [sp, 0x64] - add r2, sp, 0x64 - mov r0, sp - movs r1, 0x19 - bl SetMonData - mov r0, sp - bl sub_804151C -_080415D8: - ldr r0, _08041644 @ =gPlayerParty - movs r1, 0xFA - lsls r1, 1 - adds r1, r0 - mov r8, r1 - mov r0, r8 - mov r1, sp - movs r2, 0x64 - bl memcpy - lsls r0, r4, 3 - subs r0, r4 - lsls r1, r0, 3 - adds r0, r5, r1 - adds r0, 0xC0 - ldrh r0, [r0] - cmp r0, 0 - beq _08041610 - adds r4, r1, 0 - adds r4, 0xA0 - adds r4, r5, r4 - mov r0, r8 - adds r1, r4, 0 - bl GiveMailToMon2 - adds r0, r4, 0 - bl sub_80417F4 -_08041610: - bl party_compaction - adds r0, r6, 0 - bl ZeroBoxMonData - movs r2, 0x88 - lsls r2, 1 - adds r0, r5, r2 - adds r0, r7 - movs r1, 0 - str r1, [r0] - adds r0, r5, 0 - bl sub_80414C0 - bl CalculatePlayerPartyCount - mov r0, r9 - add sp, 0x68 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_08041640: .4byte gStringVar1 -_08041644: .4byte gPlayerParty - thumb_func_end sub_8041570 - - thumb_func_start sub_8041648 -sub_8041648: @ 8041648 - push {lr} - ldr r0, _0804165C @ =gSaveBlock1 + 0x2F9C - ldr r1, _08041660 @ =gSpecialVar_0x8004 - ldrb r1, [r1] - bl sub_8041570 - lsls r0, 16 - lsrs r0, 16 - pop {r1} - bx r1 - .align 2, 0 -_0804165C: .4byte gSaveBlock1 + 0x2F9C -_08041660: .4byte gSpecialVar_0x8004 - thumb_func_end sub_8041648 - - thumb_func_start sub_8041664 -sub_8041664: @ 8041664 - push {r4,r5,lr} - sub sp, 0x54 - adds r4, r0, 0 - adds r5, r1, 0 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x50 - bl memcpy - adds r0, r4, 0 - movs r1, 0x19 - bl GetBoxMonData - adds r0, r5 - str r0, [sp, 0x50] - add r2, sp, 0x50 - mov r0, sp - movs r1, 0x19 - bl SetBoxMonData - mov r0, sp - bl GetLevelFromBoxMonExp - lsls r0, 24 - lsrs r0, 24 - add sp, 0x54 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8041664 - thumb_func_start sub_80416A0 sub_80416A0: @ 80416A0 push {r4-r6,lr} @@ -470,7 +30,7 @@ sub_80416A0: @ 80416A0 add r5, r8 ldr r1, [r5] adds r0, r4, 0 - bl sub_8041664 + bl Daycare_GetLevelAfterSteps lsls r0, 24 lsrs r0, 24 subs r0, r6 @@ -500,7 +60,7 @@ sub_80416E8: @ 80416E8 adds r6, r0 ldr r1, _08041720 @ =gStringVar1 adds r0, r6, 0 - bl pokemon_get_nick_ + bl GetBoxMonNick ldr r0, _08041724 @ =gStringVar2 adds r1, r5, 0 movs r2, 0 @@ -532,7 +92,7 @@ sub_8041728: @ 8041728 adds r6, r0 ldr r1, _08041768 @ =gStringVar1 adds r0, r6, 0 - bl pokemon_get_nick_ + bl GetBoxMonNick movs r0, 0x64 adds r4, r5, 0 muls r4, r0 @@ -2065,7 +1625,7 @@ sub_80422C4: @ 80422C4 beq _080422FC ldr r1, _0804231C @ =gStringVar1 adds r0, r6, 0 - bl pokemon_get_nick_ + bl GetBoxMonNick adds r0, r6, 0 movs r1, 0x3 bl GetBoxMonData @@ -2090,7 +1650,7 @@ _080422FC: beq _08042314 ldr r1, _08042324 @ =gStringVar2 adds r0, r4, 0 - bl pokemon_get_nick_ + bl GetBoxMonNick _08042314: pop {r4-r6} pop {r0} @@ -2111,7 +1671,7 @@ sub_8042328: @ 8042328 ldr r4, _08042358 @ =gPlayerParty adds r0, r4 ldr r1, _0804235C @ =gStringVar1 - bl pokemon_get_nick_ + bl GetBoxMonNick ldrb r0, [r6] muls r0, r5 adds r0, r4 @@ -2154,7 +1714,7 @@ sp0B6_daycare: @ 8042370 _08042384: .4byte gSaveBlock1 + 0x2F9C _08042388: adds r0, r4, 0 - bl daycare_count_pokemon + bl Daycare_CountPokemon lsls r0, 24 lsrs r0, 24 cmp r0, 0 @@ -2558,7 +2118,7 @@ _08042648: adds r5, r1, r0 adds r0, r4, 0 adds r1, r5, 0 - bl pokemon_get_nick_ + bl GetBoxMonNick adds r0, r5, 0 adds r1, r4, 0 bl MonAppendGenderSymbol @@ -2618,7 +2178,7 @@ _080426C6: adds r1, r6, r3 adds r1, r2 ldr r1, [r1] - bl sub_8041664 + bl Daycare_GetLevelAfterSteps adds r1, r0, 0 lsls r1, 24 lsrs r1, 24 diff --git a/asm/easy_chat.s b/asm/easy_chat.s index df366f3b7..c34212a24 100644 --- a/asm/easy_chat.s +++ b/asm/easy_chat.s @@ -10831,366 +10831,4 @@ _080EB4AC: .4byte gEasyChatGroupWords _080EB4B0: .4byte 0x0000ffff thumb_func_end sub_80EB3FC - thumb_func_start ConvertEasyChatWordsToString -ConvertEasyChatWordsToString: @ 80EB4B4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - lsls r3, 16 - lsrs r3, 16 - mov r9, r3 - ldr r0, _080EB53C @ =0xffff0000 - adds r2, r0 - lsrs r7, r2, 16 - movs r0, 0 - cmp r0, r9 - bcs _080EB524 -_080EB4D6: - movs r6, 0 - adds r0, 0x1 - mov r8, r0 - cmp r6, r7 - bcs _080EB508 - ldr r2, _080EB540 @ =0x0000ffff -_080EB4E2: - ldrh r1, [r5] - adds r0, r4, 0 - str r2, [sp] - bl sub_80EB3FC - adds r4, r0, 0 - ldrh r0, [r5] - ldr r2, [sp] - cmp r0, r2 - beq _080EB4FC - movs r0, 0 - strb r0, [r4] - adds r4, 0x1 -_080EB4FC: - adds r5, 0x2 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r7 - bcc _080EB4E2 -_080EB508: - ldrh r1, [r5] - adds r5, 0x2 - adds r0, r4, 0 - bl sub_80EB3FC - adds r4, r0, 0 - movs r0, 0xFE - strb r0, [r4] - adds r4, 0x1 - mov r1, r8 - lsls r0, r1, 16 - lsrs r0, 16 - cmp r0, r9 - bcc _080EB4D6 -_080EB524: - subs r4, 0x1 - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080EB53C: .4byte 0xffff0000 -_080EB540: .4byte 0x0000ffff - thumb_func_end ConvertEasyChatWordsToString - - thumb_func_start sub_80EB544 -sub_80EB544: @ 80EB544 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 16 - lsls r3, 16 - lsrs r3, 16 - mov r10, r3 - ldr r0, _080EB5B0 @ =0xffff0000 - adds r2, r0 - lsrs r2, 16 - mov r8, r2 - movs r7, 0 - cmp r7, r10 - bcs _080EB5C8 -_080EB56A: - movs r6, 0 - adds r1, r7, 0x1 - mov r9, r1 - cmp r6, r8 - bcs _080EB59C - ldr r2, _080EB5B4 @ =0x0000ffff -_080EB576: - ldrh r1, [r5] - adds r0, r4, 0 - str r2, [sp] - bl sub_80EB3FC - adds r4, r0, 0 - ldrh r0, [r5] - ldr r2, [sp] - cmp r0, r2 - beq _080EB590 - movs r0, 0 - strb r0, [r4] - adds r4, 0x1 -_080EB590: - adds r5, 0x2 - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, r8 - bcc _080EB576 -_080EB59C: - ldrh r1, [r5] - adds r5, 0x2 - adds r0, r4, 0 - bl sub_80EB3FC - adds r4, r0, 0 - cmp r7, 0 - bne _080EB5B8 - movs r0, 0xFE - b _080EB5BA - .align 2, 0 -_080EB5B0: .4byte 0xffff0000 -_080EB5B4: .4byte 0x0000ffff -_080EB5B8: - movs r0, 0xFA -_080EB5BA: - strb r0, [r4] - adds r4, 0x1 - mov r1, r9 - lsls r0, r1, 16 - lsrs r7, r0, 16 - cmp r7, r10 - bcc _080EB56A -_080EB5C8: - subs r4, 0x1 - movs r0, 0xFF - strb r0, [r4] - adds r0, r4, 0 - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80EB544 - - thumb_func_start unref_sub_80EB5E0 -unref_sub_80EB5E0: @ 80EB5E0 - push {lr} - lsls r1, r0, 16 - lsrs r3, r1, 16 - ldr r0, _080EB5F0 @ =0x0000ffff - cmp r3, r0 - bne _080EB5F4 - movs r0, 0 - b _080EB67C - .align 2, 0 -_080EB5F0: .4byte 0x0000ffff -_080EB5F4: - lsrs r1, 25 - ldr r2, _080EB608 @ =0x000001ff - ands r2, r3 - cmp r1, 0x13 - bgt _080EB60C - cmp r1, 0x12 - bge _080EB620 - cmp r1, 0 - beq _080EB610 - b _080EB630 - .align 2, 0 -_080EB608: .4byte 0x000001ff -_080EB60C: - cmp r1, 0x15 - bne _080EB630 -_080EB610: - movs r0, 0xB - adds r1, r2, 0 - muls r1, r0 - ldr r0, _080EB61C @ =gSpeciesNames - adds r1, r0 - b _080EB660 - .align 2, 0 -_080EB61C: .4byte gSpeciesNames -_080EB620: - movs r0, 0xD - adds r1, r2, 0 - muls r1, r0 - ldr r0, _080EB62C @ =gMoveNames - adds r1, r0 - b _080EB660 - .align 2, 0 -_080EB62C: .4byte gMoveNames -_080EB630: - ldr r0, _080EB664 @ =gEasyChatGroupWords - lsls r1, 2 - adds r1, r0 - ldr r1, [r1] - subs r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, _080EB668 @ =0x0000ffff - cmp r2, r0 - beq _080EB660 - adds r3, r0, 0 -_080EB646: - ldrb r0, [r1] - adds r1, 0x1 - subs r2, 0x1 - cmp r0, 0xFF - beq _080EB658 -_080EB650: - ldrb r0, [r1] - adds r1, 0x1 - cmp r0, 0xFF - bne _080EB650 -_080EB658: - lsls r0, r2, 16 - lsrs r2, r0, 16 - cmp r2, r3 - bne _080EB646 -_080EB660: - movs r2, 0 - b _080EB674 - .align 2, 0 -_080EB664: .4byte gEasyChatGroupWords -_080EB668: .4byte 0x0000ffff -_080EB66C: - adds r1, 0x1 - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 -_080EB674: - ldrb r0, [r1] - cmp r0, 0xFF - bne _080EB66C - adds r0, r2, 0 -_080EB67C: - pop {r1} - bx r1 - thumb_func_end unref_sub_80EB5E0 - - thumb_func_start sub_80EB680 -sub_80EB680: @ 80EB680 - movs r0, 0 - bx lr - thumb_func_end sub_80EB680 - - thumb_func_start unref_sub_80EB684 -unref_sub_80EB684: @ 80EB684 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - adds r2, r0, 0 - lsls r1, 16 - lsrs r1, 16 - cmp r0, 0x7 - beq _080EB6B4 - cmp r0, 0x7 - bgt _080EB69E - cmp r0, 0x5 - beq _080EB6A4 - b _080EB6EE -_080EB69E: - cmp r2, 0x8 - beq _080EB6C4 - b _080EB6EE -_080EB6A4: - movs r2, 0x6 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080EB6B0 @ =gSaveBlock1 + 0x273C - b _080EB6CE - .align 2, 0 -_080EB6B0: .4byte gSaveBlock1 + 0x273C -_080EB6B4: - movs r2, 0x2 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080EB6C0 @ =gSaveBlock1 + 0x2754 - b _080EB6CE - .align 2, 0 -_080EB6C0: .4byte gSaveBlock1 + 0x2754 -_080EB6C4: - movs r2, 0x1 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080EB6F4 @ =gSaveBlock1 + 0x273A -_080EB6CE: - adds r1, r0, r1 - subs r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - ldr r0, _080EB6F8 @ =0x0000ffff - cmp r2, r0 - beq _080EB6EE - adds r4, r0, 0 - adds r3, r0, 0 -_080EB6E0: - strh r4, [r1] - adds r1, 0x2 - subs r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, r3 - bne _080EB6E0 -_080EB6EE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080EB6F4: .4byte gSaveBlock1 + 0x273A -_080EB6F8: .4byte 0x0000ffff - thumb_func_end unref_sub_80EB684 - - thumb_func_start sub_80EB6FC -sub_80EB6FC: @ 80EB6FC - push {lr} - adds r2, r0, 0 - lsls r1, 16 - ldr r0, _080EB724 @ =0xffff0000 - adds r1, r0 - lsrs r0, r1, 16 - ldr r1, _080EB728 @ =0x0000ffff - cmp r0, r1 - beq _080EB71E - adds r3, r1, 0 -_080EB710: - strh r3, [r2] - adds r2, 0x2 - subs r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - cmp r0, r1 - bne _080EB710 -_080EB71E: - pop {r0} - bx r0 - .align 2, 0 -_080EB724: .4byte 0xffff0000 -_080EB728: .4byte 0x0000ffff - thumb_func_end sub_80EB6FC - .align 2, 0 @ Don't pad with nop. diff --git a/asm/egg_hatch.s b/asm/egg_hatch.s index aa16203dc..101f9e5c3 100644 --- a/asm/egg_hatch.s +++ b/asm/egg_hatch.s @@ -52,7 +52,7 @@ AddHatchedMonToParty: @ 80429EC bl GetNationalPokedexFlag ldr r1, _08042AA4 @ =gStringVar1 adds r0, r5, 0 - bl pokemon_get_nick + bl GetMonNick mov r2, sp adds r2, 0xE movs r0, 0x4 @@ -110,7 +110,7 @@ sub_8042ABC: @ 8042ABC lsls r0, 4 adds r0, r5, r0 mov r1, sp - bl pokemon_get_nick_ + bl GetBoxMonNick lsls r0, r4, 3 subs r0, r4 lsls r1, r0, 3 @@ -857,7 +857,7 @@ _08043124: ldr r1, _08043150 @ =gPlayerParty adds r0, r1 ldr r1, _08043154 @ =gStringVar1 - bl pokemon_get_nick + bl GetMonNick ldr r4, _08043158 @ =gStringVar4 ldr r1, _0804315C @ =gOtherText_HatchedFromEgg adds r0, r4, 0 @@ -898,7 +898,7 @@ _08043180: ldr r1, _080431A8 @ =gPlayerParty adds r0, r1 ldr r1, _080431AC @ =gStringVar1 - bl pokemon_get_nick + bl GetMonNick ldr r4, _080431B0 @ =gStringVar4 ldr r1, _080431B4 @ =gOtherText_NickHatchPrompt adds r0, r4, 0 @@ -957,7 +957,7 @@ _080431DA: adds r0, r6 ldr r1, _08043280 @ =gStringVar3 mov r10, r1 - bl pokemon_get_nick + bl GetMonNick mov r2, r9 ldr r0, [r2] ldrb r0, [r0, 0x4] diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s index d54b57fed..c8c402217 100644 --- a/asm/field_map_obj.s +++ b/asm/field_map_obj.s @@ -6,5982 +6,7 @@ .text - thumb_func_start sub_805C930 -sub_805C930: @ 805C930 - push {r4-r6,lr} - adds r6, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805C964 - ldr r5, _0805C960 @ =gUnknown_0837520C - bl Random - movs r4, 0x3 - adds r1, r4, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r5 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r6, 0 - bl sub_8064820 - strh r4, [r6, 0x30] - movs r0, 0x1 - b _0805C966 - .align 2, 0 -_0805C960: .4byte gUnknown_0837520C -_0805C964: - movs r0, 0 -_0805C966: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805C930 - - thumb_func_start sub_805C96C -sub_805C96C: @ 805C96C - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805C980 - movs r0, 0 - b _0805C986 -_0805C980: - movs r0, 0x4 - strh r0, [r4, 0x30] - movs r0, 0x1 -_0805C986: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805C96C - - thumb_func_start sub_805C98C -sub_805C98C: @ 805C98C - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r1, _0805C9D4 @ =gUnknown_08375240 - mov r0, sp - movs r2, 0x4 - bl memcpy - bl Random - movs r1, 0x3 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r4, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x5 - strh r0, [r6, 0x30] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_805FF20 - lsls r0, 24 - cmp r0, 0 - beq _0805C9CA - movs r0, 0x1 - strh r0, [r6, 0x30] -_0805C9CA: - movs r0, 0x1 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805C9D4: .4byte gUnknown_08375240 - thumb_func_end sub_805C98C - - thumb_func_start sub_805C9D8 -sub_805C9D8: @ 805C9D8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x6 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805C9D8 - - thumb_func_start sub_805CA08 -sub_805CA08: @ 805CA08 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805CA26 - ldrb r0, [r4] - movs r1, 0x3 - negs r1, r1 - ands r1, r0 - strb r1, [r4] - movs r0, 0x1 - strh r0, [r5, 0x30] -_0805CA26: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805CA08 - - thumb_func_start FieldObjectIsTrainerAndCloseToPlayer -FieldObjectIsTrainerAndCloseToPlayer: @ 805CA30 - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - movs r0, 0x80 - bl TestPlayerAvatarFlags - lsls r0, 24 - cmp r0, 0 - beq _0805CA9C - ldrb r0, [r5, 0x7] - cmp r0, 0x1 - beq _0805CA4C - cmp r0, 0x3 - bne _0805CA9C -_0805CA4C: - mov r7, sp - adds r7, 0x2 - mov r0, sp - adds r1, r7, 0 - bl PlayerGetDestCoords - ldrh r2, [r5, 0x10] - ldrh r4, [r5, 0x12] - ldrb r1, [r5, 0x1D] - subs r3, r2, r1 - subs r0, r4, r1 - lsls r0, 16 - lsrs r5, r0, 16 - adds r2, r1, r2 - lsls r2, 16 - lsrs r2, 16 - adds r1, r4 - lsls r1, 16 - lsrs r6, r1, 16 - mov r0, sp - lsls r3, 16 - asrs r3, 16 - movs r1, 0 - ldrsh r4, [r0, r1] - cmp r3, r4 - bgt _0805CA9C - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, r4 - blt _0805CA9C - lsls r0, r5, 16 - asrs r0, 16 - movs r2, 0 - ldrsh r1, [r7, r2] - cmp r0, r1 - bgt _0805CA9C - lsls r0, r6, 16 - asrs r0, 16 - cmp r0, r1 - bge _0805CAA0 -_0805CA9C: - movs r0, 0 - b _0805CAA2 -_0805CAA0: - movs r0, 0x1 -_0805CAA2: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end FieldObjectIsTrainerAndCloseToPlayer - - thumb_func_start sub_805CAAC -sub_805CAAC: @ 805CAAC - push {r4,lr} - lsls r0, 16 - lsrs r4, r0, 16 - lsls r1, 16 - lsrs r0, r1, 16 - lsls r2, 16 - lsls r3, 16 - cmp r2, r3 - ble _0805CACA - movs r2, 0x4 - lsls r0, r4, 16 - cmp r0, 0 - bge _0805CAD4 - movs r2, 0x3 - b _0805CAD4 -_0805CACA: - movs r2, 0x1 - lsls r0, 16 - cmp r0, 0 - bge _0805CAD4 - movs r2, 0x2 -_0805CAD4: - adds r0, r2, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805CAAC - - thumb_func_start sub_805CADC -sub_805CADC: @ 805CADC - push {lr} - movs r0, 0x1 - lsls r1, 16 - cmp r1, 0 - bge _0805CAE8 - movs r0, 0x2 -_0805CAE8: - pop {r1} - bx r1 - thumb_func_end sub_805CADC - - thumb_func_start sub_805CAEC -sub_805CAEC: @ 805CAEC - push {lr} - movs r1, 0x4 - lsls r0, 16 - cmp r0, 0 - bge _0805CAF8 - movs r1, 0x3 -_0805CAF8: - adds r0, r1, 0 - pop {r1} - bx r1 - thumb_func_end sub_805CAEC - - thumb_func_start sub_805CB00 -sub_805CB00: @ 805CB00 - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 16 - asrs r5, r1, 16 - lsls r2, 16 - asrs r6, r2, 16 - lsls r3, 16 - asrs r7, r3, 16 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805CB3C - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAEC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _0805CB56 - b _0805CB54 -_0805CB3C: - cmp r0, 0x4 - bne _0805CB56 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CADC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805CB56 -_0805CB54: - movs r0, 0x2 -_0805CB56: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CB00 - - thumb_func_start sub_805CB5C -sub_805CB5C: @ 805CB5C - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 16 - asrs r5, r1, 16 - lsls r2, 16 - asrs r6, r2, 16 - lsls r3, 16 - asrs r7, r3, 16 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805CB98 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAEC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0805CBB2 - b _0805CBB0 -_0805CB98: - cmp r0, 0x3 - bne _0805CBB2 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CADC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805CBB2 -_0805CBB0: - movs r0, 0x2 -_0805CBB2: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CB5C - - thumb_func_start sub_805CBB8 -sub_805CBB8: @ 805CBB8 - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 16 - asrs r5, r1, 16 - lsls r2, 16 - asrs r6, r2, 16 - lsls r3, 16 - asrs r7, r3, 16 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0805CBF4 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAEC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _0805CC0E - b _0805CC0C -_0805CBF4: - cmp r0, 0x4 - bne _0805CC0E - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CADC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0805CC0E -_0805CC0C: - movs r0, 0x1 -_0805CC0E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CBB8 - - thumb_func_start sub_805CC14 -sub_805CC14: @ 805CC14 - push {r4-r7,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 16 - asrs r5, r1, 16 - lsls r2, 16 - asrs r6, r2, 16 - lsls r3, 16 - asrs r7, r3, 16 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0805CC50 - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CAEC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0805CC6A - b _0805CC68 -_0805CC50: - cmp r0, 0x3 - bne _0805CC6A - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - adds r3, r7, 0 - bl sub_805CADC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0805CC6A -_0805CC68: - movs r0, 0x1 -_0805CC6A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CC14 - - thumb_func_start sub_805CC70 -sub_805CC70: @ 805CC70 - push {r4-r7,lr} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 16 - asrs r6, r1, 16 - lsls r2, 16 - asrs r5, r2, 16 - lsls r3, 16 - asrs r4, r3, 16 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bne _0805CCA6 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CADC - lsls r0, 24 - lsrs r0, 24 -_0805CCA6: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CC70 - - thumb_func_start sub_805CCAC -sub_805CCAC: @ 805CCAC - push {r4-r7,lr} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 16 - asrs r6, r1, 16 - lsls r2, 16 - asrs r5, r2, 16 - lsls r3, 16 - asrs r4, r3, 16 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bne _0805CCE2 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CADC - lsls r0, 24 - lsrs r0, 24 -_0805CCE2: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CCAC - - thumb_func_start sub_805CCE8 -sub_805CCE8: @ 805CCE8 - push {r4-r7,lr} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 16 - asrs r6, r1, 16 - lsls r2, 16 - asrs r5, r2, 16 - lsls r3, 16 - asrs r4, r3, 16 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805CD1E - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CAEC - lsls r0, 24 - lsrs r0, 24 -_0805CD1E: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CCE8 - - thumb_func_start sub_805CD24 -sub_805CD24: @ 805CD24 - push {r4-r7,lr} - lsls r0, 16 - asrs r7, r0, 16 - lsls r1, 16 - asrs r6, r1, 16 - lsls r2, 16 - asrs r5, r2, 16 - lsls r3, 16 - asrs r4, r3, 16 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CAAC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _0805CD5A - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - adds r3, r4, 0 - bl sub_805CAEC - lsls r0, 24 - lsrs r0, 24 -_0805CD5A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805CD24 - - thumb_func_start sub_805CD60 -sub_805CD60: @ 805CD60 - push {r4-r6,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r1, 24 - lsrs r6, r1, 24 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - bne _0805CD78 - movs r0, 0 - b _0805CDDC -_0805CD78: - mov r5, sp - adds r5, 0x2 - mov r0, sp - adds r1, r5, 0 - bl PlayerGetDestCoords - mov r2, sp - mov r0, sp - ldrh r0, [r0] - ldrh r1, [r4, 0x10] - subs r0, r1 - strh r0, [r2] - ldrh r0, [r5] - ldrh r1, [r4, 0x12] - subs r0, r1 - strh r0, [r5] - mov r0, sp - ldrh r3, [r5] - ldrh r2, [r0] - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bge _0805CDAC - negs r0, r0 - lsls r0, 16 - lsrs r2, r0, 16 -_0805CDAC: - lsls r0, r3, 16 - asrs r0, 16 - cmp r0, 0 - bge _0805CDBA - negs r0, r0 - lsls r0, 16 - lsrs r3, r0, 16 -_0805CDBA: - ldr r0, _0805CDE4 @ =gUnknown_08375244 - lsls r4, r6, 2 - adds r4, r0 - mov r0, sp - movs r6, 0 - ldrsh r0, [r0, r6] - movs r6, 0 - ldrsh r1, [r5, r6] - lsls r2, 16 - asrs r2, 16 - lsls r3, 16 - asrs r3, 16 - ldr r4, [r4] - bl _call_via_r4 - lsls r0, 24 - lsrs r0, 24 -_0805CDDC: - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0805CDE4: .4byte gUnknown_08375244 - thumb_func_end sub_805CD60 - - thumb_func_start sub_805CDE8 -sub_805CDE8: @ 805CDE8 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805CE04 @ =gMapObjects - adds r0, r2 - ldr r2, _0805CE08 @ =sub_805CE0C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805CE04: .4byte gMapObjects -_0805CE08: .4byte sub_805CE0C - thumb_func_end sub_805CDE8 - - thumb_func_start sub_805CE0C -sub_805CE0C: @ 805CE0C - push {r4,lr} - ldr r3, _0805CE28 @ =gUnknown_08375270 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805CE28: .4byte gUnknown_08375270 - thumb_func_end sub_805CE0C - - thumb_func_start sub_805CE2C -sub_805CE2C: @ 805CE2C - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805CE2C - - thumb_func_start sub_805CE40 -sub_805CE40: @ 805CE40 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805CE40 - - thumb_func_start sub_805CE6C -sub_805CE6C: @ 805CE6C - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805CEA2 - ldr r4, _0805CEAC @ =gUnknown_0837520C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805CEA2: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805CEAC: .4byte gUnknown_0837520C - thumb_func_end sub_805CE6C - - thumb_func_start sub_805CEB0 -sub_805CEB0: @ 805CEB0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805CECE - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805CED6 -_0805CECE: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805CED8 -_0805CED6: - movs r0, 0 -_0805CED8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805CEB0 - - thumb_func_start sub_805CEE0 -sub_805CEE0: @ 805CEE0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805CF24 @ =gUnknown_08375240 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r0, r4, 0 - movs r1, 0 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805CF10 - bl Random - movs r1, 0x3 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805CF10: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805CF24: .4byte gUnknown_08375240 - thumb_func_end sub_805CEE0 - - thumb_func_start sub_805CF28 -sub_805CF28: @ 805CF28 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805CF44 @ =gMapObjects - adds r0, r2 - ldr r2, _0805CF48 @ =sub_805CF4C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805CF44: .4byte gMapObjects -_0805CF48: .4byte sub_805CF4C - thumb_func_end sub_805CF28 - - thumb_func_start sub_805CF4C -sub_805CF4C: @ 805CF4C - push {r4,lr} - ldr r3, _0805CF68 @ =gUnknown_08375284 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805CF68: .4byte gUnknown_08375284 - thumb_func_end sub_805CF4C - - thumb_func_start sub_805CF6C -sub_805CF6C: @ 805CF6C - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805CF6C - - thumb_func_start sub_805CF80 -sub_805CF80: @ 805CF80 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805CF80 - - thumb_func_start sub_805CFAC -sub_805CFAC: @ 805CFAC - push {r4-r6,lr} - adds r6, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805CFE0 - ldr r5, _0805CFDC @ =gUnknown_0837520C - bl Random - movs r4, 0x3 - adds r1, r4, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r5 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r6, 0 - bl sub_8064820 - strh r4, [r6, 0x30] - movs r0, 0x1 - b _0805CFE2 - .align 2, 0 -_0805CFDC: .4byte gUnknown_0837520C -_0805CFE0: - movs r0, 0 -_0805CFE2: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805CFAC - - thumb_func_start sub_805CFE8 -sub_805CFE8: @ 805CFE8 - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805CFFC - movs r0, 0 - b _0805D002 -_0805CFFC: - movs r0, 0x4 - strh r0, [r4, 0x30] - movs r0, 0x1 -_0805D002: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805CFE8 - - thumb_func_start sub_805D008 -sub_805D008: @ 805D008 - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r1, _0805D050 @ =gUnknown_083752A0 - mov r0, sp - movs r2, 0x2 - bl memcpy - bl Random - movs r7, 0x1 - adds r1, r7, 0 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r4, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x5 - strh r0, [r6, 0x30] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_805FF20 - lsls r0, 24 - cmp r0, 0 - beq _0805D046 - strh r7, [r6, 0x30] -_0805D046: - movs r0, 0x1 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805D050: .4byte gUnknown_083752A0 - thumb_func_end sub_805D008 - - thumb_func_start sub_805D054 -sub_805D054: @ 805D054 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x6 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D054 - - thumb_func_start sub_805D084 -sub_805D084: @ 805D084 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D0A2 - ldrb r0, [r4] - movs r1, 0x3 - negs r1, r1 - ands r1, r0 - strb r1, [r4] - movs r0, 0x1 - strh r0, [r5, 0x30] -_0805D0A2: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D084 - - thumb_func_start sub_805D0AC -sub_805D0AC: @ 805D0AC - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805D0C8 @ =gMapObjects - adds r0, r2 - ldr r2, _0805D0CC @ =sub_805D0D0 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805D0C8: .4byte gMapObjects -_0805D0CC: .4byte sub_805D0D0 - thumb_func_end sub_805D0AC - - thumb_func_start sub_805D0D0 -sub_805D0D0: @ 805D0D0 - push {r4,lr} - ldr r3, _0805D0EC @ =gUnknown_083752A4 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D0EC: .4byte gUnknown_083752A4 - thumb_func_end sub_805D0D0 - - thumb_func_start sub_805D0F0 -sub_805D0F0: @ 805D0F0 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D0F0 - - thumb_func_start sub_805D104 -sub_805D104: @ 805D104 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D104 - - thumb_func_start sub_805D130 -sub_805D130: @ 805D130 - push {r4-r6,lr} - adds r6, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D164 - ldr r5, _0805D160 @ =gUnknown_0837520C - bl Random - movs r4, 0x3 - adds r1, r4, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r5 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r6, 0 - bl sub_8064820 - strh r4, [r6, 0x30] - movs r0, 0x1 - b _0805D166 - .align 2, 0 -_0805D160: .4byte gUnknown_0837520C -_0805D164: - movs r0, 0 -_0805D166: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805D130 - - thumb_func_start sub_805D16C -sub_805D16C: @ 805D16C - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805D180 - movs r0, 0 - b _0805D186 -_0805D180: - movs r0, 0x4 - strh r0, [r4, 0x30] - movs r0, 0x1 -_0805D186: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D16C - - thumb_func_start sub_805D18C -sub_805D18C: @ 805D18C - push {r4-r7,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - ldr r1, _0805D1D4 @ =gUnknown_083752C0 - mov r0, sp - movs r2, 0x2 - bl memcpy - bl Random - movs r7, 0x1 - adds r1, r7, 0 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r4, [r0] - adds r0, r5, 0 - adds r1, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x5 - strh r0, [r6, 0x30] - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_805FF20 - lsls r0, 24 - cmp r0, 0 - beq _0805D1CA - strh r7, [r6, 0x30] -_0805D1CA: - movs r0, 0x1 - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805D1D4: .4byte gUnknown_083752C0 - thumb_func_end sub_805D18C - - thumb_func_start sub_805D1D8 -sub_805D1D8: @ 805D1D8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x6 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D1D8 - - thumb_func_start sub_805D208 -sub_805D208: @ 805D208 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D226 - ldrb r0, [r4] - movs r1, 0x3 - negs r1, r1 - ands r1, r0 - strb r1, [r4] - movs r0, 0x1 - strh r0, [r5, 0x30] -_0805D226: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D208 - - thumb_func_start sub_805D230 -sub_805D230: @ 805D230 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805D24C @ =gMapObjects - adds r0, r2 - ldr r2, _0805D250 @ =sub_805D254 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805D24C: .4byte gMapObjects -_0805D250: .4byte sub_805D254 - thumb_func_end sub_805D230 - - thumb_func_start sub_805D254 -sub_805D254: @ 805D254 - push {r4,lr} - ldr r3, _0805D270 @ =gUnknown_083752C4 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D270: .4byte gUnknown_083752C4 - thumb_func_end sub_805D254 - - thumb_func_start sub_805D274 -sub_805D274: @ 805D274 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D274 - - thumb_func_start sub_805D2A0 -sub_805D2A0: @ 805D2A0 - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - bne _0805D2B2 - movs r0, 0 - b _0805D2B8 -_0805D2B2: - movs r0, 0x2 - strh r0, [r4, 0x30] - movs r0, 0x1 -_0805D2B8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D2A0 - - thumb_func_start sub_805D2C0 -sub_805D2C0: @ 805D2C0 - ldrb r2, [r0] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - movs r0, 0 - bx lr - thumb_func_end sub_805D2C0 - - thumb_func_start FieldObjectCB_BerryTree -FieldObjectCB_BerryTree: @ 805D2D0 - push {r4,r5,lr} - adds r4, r0, 0 - movs r0, 0x2E - ldrsh r1, [r4, r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0805D30C @ =gMapObjects - adds r5, r0, r1 - ldrh r1, [r4, 0x3C] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0805D2FC - adds r0, r5, 0 - adds r1, r4, 0 - bl get_berry_tree_graphics - ldrh r1, [r4, 0x3C] - movs r0, 0x1 - orrs r0, r1 - strh r0, [r4, 0x3C] -_0805D2FC: - ldr r2, _0805D310 @ =sub_805D314 - adds r0, r5, 0 - adds r1, r4, 0 - bl meta_step - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0805D30C: .4byte gMapObjects -_0805D310: .4byte sub_805D314 - thumb_func_end FieldObjectCB_BerryTree - - thumb_func_start sub_805D314 -sub_805D314: @ 805D314 - push {r4,lr} - ldr r3, _0805D330 @ =gUnknown_083752D0 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D330: .4byte gUnknown_083752D0 - thumb_func_end sub_805D314 - - thumb_func_start do_berry_tree_growth_sparkle_1 -do_berry_tree_growth_sparkle_1: @ 805D334 - push {r4-r7,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x1] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r6, r5, 0 - adds r6, 0x3E - ldrb r0, [r6] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r6] - ldrb r0, [r4, 0x1D] - bl GetStageByBerryTreeId - lsls r0, 24 - lsrs r7, r0, 24 - cmp r7, 0 - bne _0805D3A4 - ldrh r1, [r5, 0x3C] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0805D39A - subs r6, 0x14 - ldrb r0, [r6] - cmp r0, 0x4 - bne _0805D39A - ldr r1, _0805D3A0 @ =gUnknown_0202FF84 - movs r2, 0x10 - ldrsh r0, [r4, r2] - str r0, [r1] - movs r2, 0x12 - ldrsh r0, [r4, r2] - str r0, [r1, 0x4] - adds r0, r5, 0 - adds r0, 0x43 - ldrb r0, [r0] - subs r0, 0x1 - str r0, [r1, 0x8] - ldrb r0, [r5, 0x5] - lsls r0, 28 - lsrs r0, 30 - str r0, [r1, 0xC] - movs r0, 0x17 - bl FieldEffectStart - strb r7, [r6] -_0805D39A: - movs r0, 0 - b _0805D3E6 - .align 2, 0 -_0805D3A0: .4byte gUnknown_0202FF84 -_0805D3A4: - ldrb r1, [r4, 0x1] - movs r0, 0x21 - negs r0, r0 - ands r0, r1 - strb r0, [r4, 0x1] - ldrb r1, [r6] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - subs r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r5, 0 - adds r0, 0x2A - ldrb r0, [r0] - cmp r0, r7 - bne _0805D3E0 - adds r0, r4, 0 - adds r1, r5, 0 - bl get_berry_tree_graphics - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x39 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - b _0805D3E6 -_0805D3E0: - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 -_0805D3E6: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end do_berry_tree_growth_sparkle_1 - - thumb_func_start sub_805D3EC -sub_805D3EC: @ 805D3EC - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - bne _0805D3FE - movs r0, 0 - b _0805D404 -_0805D3FE: - movs r0, 0 - strh r0, [r4, 0x30] - movs r0, 0x1 -_0805D404: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D3EC - - thumb_func_start do_berry_tree_growth_sparkle_2 -do_berry_tree_growth_sparkle_2: @ 805D40C - push {r4,lr} - ldrb r2, [r0] - movs r3, 0x2 - orrs r2, r3 - strb r2, [r0] - movs r3, 0 - movs r2, 0x3 - strh r2, [r1, 0x30] - strh r3, [r1, 0x32] - ldrh r3, [r1, 0x3C] - movs r2, 0x2 - orrs r2, r3 - strh r2, [r1, 0x3C] - ldr r3, _0805D454 @ =gUnknown_0202FF84 - movs r4, 0x10 - ldrsh r2, [r0, r4] - str r2, [r3] - movs r2, 0x12 - ldrsh r0, [r0, r2] - str r0, [r3, 0x4] - adds r0, r1, 0 - adds r0, 0x43 - ldrb r0, [r0] - subs r0, 0x1 - str r0, [r3, 0x8] - ldrb r0, [r1, 0x5] - lsls r0, 28 - lsrs r0, 30 - str r0, [r3, 0xC] - movs r0, 0x17 - bl FieldEffectStart - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D454: .4byte gUnknown_0202FF84 - thumb_func_end do_berry_tree_growth_sparkle_2 - - thumb_func_start sub_805D458 -sub_805D458: @ 805D458 - push {r4,lr} - adds r3, r0, 0 - adds r4, r1, 0 - ldrh r1, [r4, 0x32] - adds r1, 0x1 - strh r1, [r4, 0x32] - movs r0, 0x2 - ands r1, r0 - lsls r1, 16 - lsrs r1, 17 - lsls r1, 5 - ldrb r2, [r3, 0x1] - subs r0, 0x23 - ands r0, r2 - orrs r0, r1 - strb r0, [r3, 0x1] - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r1, 0x32 - ldrsh r0, [r4, r1] - cmp r0, 0x40 - bgt _0805D490 - movs r0, 0 - b _0805D4A2 -_0805D490: - adds r0, r3, 0 - adds r1, r4, 0 - bl get_berry_tree_graphics - movs r0, 0x4 - strh r0, [r4, 0x30] - movs r0, 0 - strh r0, [r4, 0x32] - movs r0, 0x1 -_0805D4A2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D458 - - thumb_func_start sub_805D4A8 -sub_805D4A8: @ 805D4A8 - push {r4,lr} - adds r4, r1, 0 - ldrh r2, [r4, 0x32] - adds r2, 0x1 - strh r2, [r4, 0x32] - movs r1, 0x2 - ands r2, r1 - lsls r2, 16 - lsrs r2, 17 - lsls r2, 5 - ldrb r3, [r0, 0x1] - subs r1, 0x23 - ands r1, r3 - orrs r1, r2 - strb r1, [r0, 0x1] - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r1, 0x32 - ldrsh r0, [r4, r1] - cmp r0, 0x40 - bgt _0805D4DE - movs r0, 0 - b _0805D4EC -_0805D4DE: - movs r0, 0 - strh r0, [r4, 0x30] - ldrh r1, [r4, 0x3C] - subs r0, 0x3 - ands r0, r1 - strh r0, [r4, 0x3C] - movs r0, 0x1 -_0805D4EC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D4A8 - - thumb_func_start sub_805D4F4 -sub_805D4F4: @ 805D4F4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805D510 @ =gMapObjects - adds r0, r2 - ldr r2, _0805D514 @ =sub_805D518 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805D510: .4byte gMapObjects -_0805D514: .4byte sub_805D518 - thumb_func_end sub_805D4F4 - - thumb_func_start sub_805D518 -sub_805D518: @ 805D518 - push {r4,lr} - ldr r3, _0805D534 @ =gUnknown_083752E4 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D534: .4byte gUnknown_083752E4 - thumb_func_end sub_805D518 - - thumb_func_start sub_805D538 -sub_805D538: @ 805D538 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D538 - - thumb_func_start sub_805D54C -sub_805D54C: @ 805D54C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D54C - - thumb_func_start sub_805D578 -sub_805D578: @ 805D578 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D5AE - ldr r4, _0805D5B8 @ =gUnknown_0837520C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805D5AE: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805D5B8: .4byte gUnknown_0837520C - thumb_func_end sub_805D578 - - thumb_func_start sub_805D5BC -sub_805D5BC: @ 805D5BC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805D5DA - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805D5E2 -_0805D5DA: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805D5E4 -_0805D5E2: - movs r0, 0 -_0805D5E4: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D5BC - - thumb_func_start sub_805D5EC -sub_805D5EC: @ 805D5EC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805D630 @ =gUnknown_083752A0 - mov r0, sp - movs r2, 0x2 - bl memcpy - adds r0, r4, 0 - movs r1, 0x1 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805D61C - bl Random - movs r1, 0x1 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805D61C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805D630: .4byte gUnknown_083752A0 - thumb_func_end sub_805D5EC - - thumb_func_start sub_805D634 -sub_805D634: @ 805D634 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805D650 @ =gMapObjects - adds r0, r2 - ldr r2, _0805D654 @ =sub_805D658 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805D650: .4byte gMapObjects -_0805D654: .4byte sub_805D658 - thumb_func_end sub_805D634 - - thumb_func_start sub_805D658 -sub_805D658: @ 805D658 - push {r4,lr} - ldr r3, _0805D674 @ =gUnknown_083752F8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D674: .4byte gUnknown_083752F8 - thumb_func_end sub_805D658 - - thumb_func_start sub_805D678 -sub_805D678: @ 805D678 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D678 - - thumb_func_start sub_805D68C -sub_805D68C: @ 805D68C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D68C - - thumb_func_start sub_805D6B8 -sub_805D6B8: @ 805D6B8 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D6EE - ldr r4, _0805D6F8 @ =gUnknown_0837520C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805D6EE: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805D6F8: .4byte gUnknown_0837520C - thumb_func_end sub_805D6B8 - - thumb_func_start sub_805D6FC -sub_805D6FC: @ 805D6FC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805D71A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805D722 -_0805D71A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805D724 -_0805D722: - movs r0, 0 -_0805D724: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D6FC - - thumb_func_start sub_805D72C -sub_805D72C: @ 805D72C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805D770 @ =gUnknown_083752C0 - mov r0, sp - movs r2, 0x2 - bl memcpy - adds r0, r4, 0 - movs r1, 0x2 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805D75C - bl Random - movs r1, 0x1 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805D75C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805D770: .4byte gUnknown_083752C0 - thumb_func_end sub_805D72C - - thumb_func_start sub_805D774 -sub_805D774: @ 805D774 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805D790 @ =gMapObjects - adds r0, r2 - ldr r2, _0805D794 @ =sub_805D798 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805D790: .4byte gMapObjects -_0805D794: .4byte sub_805D798 - thumb_func_end sub_805D774 - - thumb_func_start sub_805D798 -sub_805D798: @ 805D798 - push {r4,lr} - ldr r3, _0805D7B4 @ =gUnknown_0837530C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D7B4: .4byte gUnknown_0837530C - thumb_func_end sub_805D798 - - thumb_func_start sub_805D7B8 -sub_805D7B8: @ 805D7B8 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D7B8 - - thumb_func_start sub_805D7CC -sub_805D7CC: @ 805D7CC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D7CC - - thumb_func_start sub_805D7F8 -sub_805D7F8: @ 805D7F8 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D82E - ldr r4, _0805D838 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805D82E: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805D838: .4byte gUnknown_0837521C - thumb_func_end sub_805D7F8 - - thumb_func_start sub_805D83C -sub_805D83C: @ 805D83C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805D85A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805D862 -_0805D85A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805D864 -_0805D862: - movs r0, 0 -_0805D864: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D83C - - thumb_func_start sub_805D86C -sub_805D86C: @ 805D86C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805D8B0 @ =gUnknown_08375320 - mov r0, sp - movs r2, 0x2 - bl memcpy - adds r0, r4, 0 - movs r1, 0x3 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805D89C - bl Random - movs r1, 0x1 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805D89C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805D8B0: .4byte gUnknown_08375320 - thumb_func_end sub_805D86C - - thumb_func_start sub_805D8B4 -sub_805D8B4: @ 805D8B4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805D8D0 @ =gMapObjects - adds r0, r2 - ldr r2, _0805D8D4 @ =sub_805D8D8 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805D8D0: .4byte gMapObjects -_0805D8D4: .4byte sub_805D8D8 - thumb_func_end sub_805D8B4 - - thumb_func_start sub_805D8D8 -sub_805D8D8: @ 805D8D8 - push {r4,lr} - ldr r3, _0805D8F4 @ =gUnknown_08375324 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805D8F4: .4byte gUnknown_08375324 - thumb_func_end sub_805D8D8 - - thumb_func_start sub_805D8F8 -sub_805D8F8: @ 805D8F8 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805D8F8 - - thumb_func_start sub_805D90C -sub_805D90C: @ 805D90C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D90C - - thumb_func_start sub_805D938 -sub_805D938: @ 805D938 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805D96E - ldr r4, _0805D978 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805D96E: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805D978: .4byte gUnknown_0837521C - thumb_func_end sub_805D938 - - thumb_func_start sub_805D97C -sub_805D97C: @ 805D97C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805D99A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805D9A2 -_0805D99A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805D9A4 -_0805D9A2: - movs r0, 0 -_0805D9A4: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805D97C - - thumb_func_start sub_805D9AC -sub_805D9AC: @ 805D9AC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805D9F0 @ =gUnknown_08375338 - mov r0, sp - movs r2, 0x2 - bl memcpy - adds r0, r4, 0 - movs r1, 0x4 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805D9DC - bl Random - movs r1, 0x1 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805D9DC: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805D9F0: .4byte gUnknown_08375338 - thumb_func_end sub_805D9AC - - thumb_func_start sub_805D9F4 -sub_805D9F4: @ 805D9F4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805DA10 @ =gMapObjects - adds r0, r2 - ldr r2, _0805DA14 @ =sub_805DA18 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805DA10: .4byte gMapObjects -_0805DA14: .4byte sub_805DA18 - thumb_func_end sub_805D9F4 - - thumb_func_start sub_805DA18 -sub_805DA18: @ 805DA18 - push {r4,lr} - ldr r3, _0805DA34 @ =gUnknown_0837533C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805DA34: .4byte gUnknown_0837533C - thumb_func_end sub_805DA18 - - thumb_func_start sub_805DA38 -sub_805DA38: @ 805DA38 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805DA38 - - thumb_func_start sub_805DA4C -sub_805DA4C: @ 805DA4C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DA4C - - thumb_func_start sub_805DA78 -sub_805DA78: @ 805DA78 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805DAAE - ldr r4, _0805DAB8 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805DAAE: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805DAB8: .4byte gUnknown_0837521C - thumb_func_end sub_805DA78 - - thumb_func_start sub_805DABC -sub_805DABC: @ 805DABC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805DADA - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805DAE2 -_0805DADA: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805DAE4 -_0805DAE2: - movs r0, 0 -_0805DAE4: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DABC - - thumb_func_start sub_805DAEC -sub_805DAEC: @ 805DAEC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805DB30 @ =gUnknown_08375350 - mov r0, sp - movs r2, 0x2 - bl memcpy - adds r0, r4, 0 - movs r1, 0x5 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805DB1C - bl Random - movs r1, 0x1 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805DB1C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805DB30: .4byte gUnknown_08375350 - thumb_func_end sub_805DAEC - - thumb_func_start sub_805DB34 -sub_805DB34: @ 805DB34 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805DB50 @ =gMapObjects - adds r0, r2 - ldr r2, _0805DB54 @ =sub_805DB58 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805DB50: .4byte gMapObjects -_0805DB54: .4byte sub_805DB58 - thumb_func_end sub_805DB34 - - thumb_func_start sub_805DB58 -sub_805DB58: @ 805DB58 - push {r4,lr} - ldr r3, _0805DB74 @ =gUnknown_08375354 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805DB74: .4byte gUnknown_08375354 - thumb_func_end sub_805DB58 - - thumb_func_start sub_805DB78 -sub_805DB78: @ 805DB78 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805DB78 - - thumb_func_start sub_805DB8C -sub_805DB8C: @ 805DB8C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DB8C - - thumb_func_start sub_805DBB8 -sub_805DBB8: @ 805DBB8 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805DBEE - ldr r4, _0805DBF8 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805DBEE: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805DBF8: .4byte gUnknown_0837521C - thumb_func_end sub_805DBB8 - - thumb_func_start sub_805DBFC -sub_805DBFC: @ 805DBFC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805DC1A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805DC22 -_0805DC1A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805DC24 -_0805DC22: - movs r0, 0 -_0805DC24: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DBFC - - thumb_func_start sub_805DC2C -sub_805DC2C: @ 805DC2C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805DC70 @ =gUnknown_08375368 - mov r0, sp - movs r2, 0x2 - bl memcpy - adds r0, r4, 0 - movs r1, 0x6 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805DC5C - bl Random - movs r1, 0x1 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805DC5C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805DC70: .4byte gUnknown_08375368 - thumb_func_end sub_805DC2C - - thumb_func_start sub_805DC74 -sub_805DC74: @ 805DC74 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805DC90 @ =gMapObjects - adds r0, r2 - ldr r2, _0805DC94 @ =sub_805DC98 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805DC90: .4byte gMapObjects -_0805DC94: .4byte sub_805DC98 - thumb_func_end sub_805DC74 - - thumb_func_start sub_805DC98 -sub_805DC98: @ 805DC98 - push {r4,lr} - ldr r3, _0805DCB4 @ =gUnknown_0837536C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805DCB4: .4byte gUnknown_0837536C - thumb_func_end sub_805DC98 - - thumb_func_start sub_805DCB8 -sub_805DCB8: @ 805DCB8 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805DCB8 - - thumb_func_start sub_805DCCC -sub_805DCCC: @ 805DCCC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DCCC - - thumb_func_start sub_805DCF8 -sub_805DCF8: @ 805DCF8 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805DD2E - ldr r4, _0805DD38 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805DD2E: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805DD38: .4byte gUnknown_0837521C - thumb_func_end sub_805DCF8 - - thumb_func_start sub_805DD3C -sub_805DD3C: @ 805DD3C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805DD5A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805DD62 -_0805DD5A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805DD64 -_0805DD62: - movs r0, 0 -_0805DD64: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DD3C - - thumb_func_start sub_805DD6C -sub_805DD6C: @ 805DD6C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805DDB0 @ =gUnknown_08375380 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r0, r4, 0 - movs r1, 0x7 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805DD9C - bl Random - movs r1, 0x3 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805DD9C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805DDB0: .4byte gUnknown_08375380 - thumb_func_end sub_805DD6C - - thumb_func_start sub_805DDB4 -sub_805DDB4: @ 805DDB4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805DDD0 @ =gMapObjects - adds r0, r2 - ldr r2, _0805DDD4 @ =sub_805DDD8 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805DDD0: .4byte gMapObjects -_0805DDD4: .4byte sub_805DDD8 - thumb_func_end sub_805DDB4 - - thumb_func_start sub_805DDD8 -sub_805DDD8: @ 805DDD8 - push {r4,lr} - ldr r3, _0805DDF4 @ =gUnknown_08375384 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805DDF4: .4byte gUnknown_08375384 - thumb_func_end sub_805DDD8 - - thumb_func_start sub_805DDF8 -sub_805DDF8: @ 805DDF8 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805DDF8 - - thumb_func_start sub_805DE0C -sub_805DE0C: @ 805DE0C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DE0C - - thumb_func_start sub_805DE38 -sub_805DE38: @ 805DE38 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805DE6E - ldr r4, _0805DE78 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805DE6E: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805DE78: .4byte gUnknown_0837521C - thumb_func_end sub_805DE38 - - thumb_func_start sub_805DE7C -sub_805DE7C: @ 805DE7C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805DE9A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805DEA2 -_0805DE9A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805DEA4 -_0805DEA2: - movs r0, 0 -_0805DEA4: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DE7C - - thumb_func_start sub_805DEAC -sub_805DEAC: @ 805DEAC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805DEF0 @ =gUnknown_08375398 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r0, r4, 0 - movs r1, 0x8 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805DEDC - bl Random - movs r1, 0x3 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805DEDC: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805DEF0: .4byte gUnknown_08375398 - thumb_func_end sub_805DEAC - - thumb_func_start sub_805DEF4 -sub_805DEF4: @ 805DEF4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805DF10 @ =gMapObjects - adds r0, r2 - ldr r2, _0805DF14 @ =sub_805DF18 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805DF10: .4byte gMapObjects -_0805DF14: .4byte sub_805DF18 - thumb_func_end sub_805DEF4 - - thumb_func_start sub_805DF18 -sub_805DF18: @ 805DF18 - push {r4,lr} - ldr r3, _0805DF34 @ =gUnknown_0837539C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805DF34: .4byte gUnknown_0837539C - thumb_func_end sub_805DF18 - - thumb_func_start sub_805DF38 -sub_805DF38: @ 805DF38 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805DF38 - - thumb_func_start sub_805DF4C -sub_805DF4C: @ 805DF4C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DF4C - - thumb_func_start sub_805DF78 -sub_805DF78: @ 805DF78 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805DFAE - ldr r4, _0805DFB8 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805DFAE: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805DFB8: .4byte gUnknown_0837521C - thumb_func_end sub_805DF78 - - thumb_func_start sub_805DFBC -sub_805DFBC: @ 805DFBC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805DFDA - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805DFE2 -_0805DFDA: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805DFE4 -_0805DFE2: - movs r0, 0 -_0805DFE4: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805DFBC - - thumb_func_start sub_805DFEC -sub_805DFEC: @ 805DFEC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E030 @ =gUnknown_083753B0 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r0, r4, 0 - movs r1, 0x9 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E01C - bl Random - movs r1, 0x3 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805E01C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E030: .4byte gUnknown_083753B0 - thumb_func_end sub_805DFEC - - thumb_func_start sub_805E034 -sub_805E034: @ 805E034 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E050 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E054 @ =sub_805E058 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E050: .4byte gMapObjects -_0805E054: .4byte sub_805E058 - thumb_func_end sub_805E034 - - thumb_func_start sub_805E058 -sub_805E058: @ 805E058 - push {r4,lr} - ldr r3, _0805E074 @ =gUnknown_083753B4 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E074: .4byte gUnknown_083753B4 - thumb_func_end sub_805E058 - - thumb_func_start sub_805E078 -sub_805E078: @ 805E078 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805E078 - - thumb_func_start sub_805E08C -sub_805E08C: @ 805E08C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E08C - - thumb_func_start sub_805E0B8 -sub_805E0B8: @ 805E0B8 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805E0EE - ldr r4, _0805E0F8 @ =gUnknown_0837521C - bl Random - movs r5, 0x3 - adds r1, r5, 0 - ands r1, r0 - lsls r1, 1 - adds r1, r4 - movs r0, 0 - ldrsh r1, [r1, r0] - adds r0, r7, 0 - bl sub_8064820 - ldrb r1, [r6] - movs r0, 0x3 - negs r0, r0 - ands r0, r1 - strb r0, [r6] - strh r5, [r7, 0x30] -_0805E0EE: - movs r0, 0 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805E0F8: .4byte gUnknown_0837521C - thumb_func_end sub_805E0B8 - - thumb_func_start sub_805E0FC -sub_805E0FC: @ 805E0FC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805E11A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805E122 -_0805E11A: - movs r0, 0x4 - strh r0, [r5, 0x30] - movs r0, 0x1 - b _0805E124 -_0805E122: - movs r0, 0 -_0805E124: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E0FC - - thumb_func_start sub_805E12C -sub_805E12C: @ 805E12C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E170 @ =gUnknown_083753C8 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r0, r4, 0 - movs r1, 0xA - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E15C - bl Random - movs r1, 0x3 - ands r1, r0 - mov r2, sp - adds r0, r2, r1 - ldrb r1, [r0] -_0805E15C: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x30] - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E170: .4byte gUnknown_083753C8 - thumb_func_end sub_805E12C - - thumb_func_start sub_805E174 -sub_805E174: @ 805E174 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E190 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E194 @ =sub_805E198 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E190: .4byte gMapObjects -_0805E194: .4byte sub_805E198 - thumb_func_end sub_805E174 - - thumb_func_start sub_805E198 -sub_805E198: @ 805E198 - push {r4,lr} - ldr r3, _0805E1B4 @ =gUnknown_083753CC - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E1B4: .4byte gUnknown_083753CC - thumb_func_end sub_805E198 - - thumb_func_start sub_805E1B8 -sub_805E1B8: @ 805E1B8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E1B8 - - thumb_func_start sub_805E1E4 -sub_805E1E4: @ 805E1E4 - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805E1FE - adds r0, r4, 0 - movs r1, 0x30 - bl sub_8064820 - movs r0, 0x2 - strh r0, [r4, 0x30] -_0805E1FE: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805E1E4 - - thumb_func_start sub_805E208 -sub_805E208: @ 805E208 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805E226 - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805E22A -_0805E226: - movs r0, 0x3 - strh r0, [r5, 0x30] -_0805E22A: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E208 - - thumb_func_start sub_805E234 -sub_805E234: @ 805E234 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E274 @ =gUnknown_083753DC - mov r0, sp - movs r2, 0x5 - bl memcpy - adds r0, r4, 0 - movs r1, 0 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E260 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - add r0, sp - ldrb r1, [r0] -_0805E260: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0 - strh r0, [r5, 0x30] - movs r0, 0x1 - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E274: .4byte gUnknown_083753DC - thumb_func_end sub_805E234 - - thumb_func_start sub_805E278 -sub_805E278: @ 805E278 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E294 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E298 @ =sub_805E29C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E294: .4byte gMapObjects -_0805E298: .4byte sub_805E29C - thumb_func_end sub_805E278 - - thumb_func_start sub_805E29C -sub_805E29C: @ 805E29C - push {r4,lr} - ldr r3, _0805E2B8 @ =gUnknown_083753E4 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E2B8: .4byte gUnknown_083753E4 - thumb_func_end sub_805E29C - - thumb_func_start sub_805E2BC -sub_805E2BC: @ 805E2BC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E2BC - - thumb_func_start sub_805E2E8 -sub_805E2E8: @ 805E2E8 - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805E302 - adds r0, r4, 0 - movs r1, 0x30 - bl sub_8064820 - movs r0, 0x2 - strh r0, [r4, 0x30] -_0805E302: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805E2E8 - - thumb_func_start sub_805E30C -sub_805E30C: @ 805E30C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - bne _0805E32A - adds r0, r4, 0 - bl FieldObjectIsTrainerAndCloseToPlayer - lsls r0, 24 - cmp r0, 0 - beq _0805E32E -_0805E32A: - movs r0, 0x3 - strh r0, [r5, 0x30] -_0805E32E: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E30C - - thumb_func_start sub_805E338 -sub_805E338: @ 805E338 - push {r4,r5,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E378 @ =gUnknown_083753F4 - mov r0, sp - movs r2, 0x5 - bl memcpy - adds r0, r4, 0 - movs r1, 0 - bl sub_805CD60 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _0805E364 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - add r0, sp - ldrb r1, [r0] -_0805E364: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0 - strh r0, [r5, 0x30] - movs r0, 0x1 - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E378: .4byte gUnknown_083753F4 - thumb_func_end sub_805E338 - - thumb_func_start sub_805E37C -sub_805E37C: @ 805E37C - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E398 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E39C @ =sub_805E3A0 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E398: .4byte gMapObjects -_0805E39C: .4byte sub_805E3A0 - thumb_func_end sub_805E37C - - thumb_func_start sub_805E3A0 -sub_805E3A0: @ 805E3A0 - push {r4,lr} - ldr r3, _0805E3BC @ =gUnknown_083753FC - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E3BC: .4byte gUnknown_083753FC - thumb_func_end sub_805E3A0 - - thumb_func_start sub_805E3C0 -sub_805E3C0: @ 805E3C0 - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805E3C0 - - thumb_func_start sub_805E3D4 -sub_805E3D4: @ 805E3D4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, _0805E408 @ =gUnknown_0836DC09 - ldrb r1, [r4, 0x6] - adds r1, r0 - ldrb r1, [r1] - adds r0, r4, 0 - adds r0, 0x21 - ldrb r0, [r0] - cmp r0, 0 - beq _0805E3F6 - adds r0, r1, 0 - bl GetOppositeDirection - lsls r0, 24 - lsrs r1, r0, 24 -_0805E3F6: - adds r0, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x2 - strh r0, [r5, 0x30] - movs r0, 0x1 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E408: .4byte gUnknown_0836DC09 - thumb_func_end sub_805E3D4 - - thumb_func_start sub_805E40C -sub_805E40C: @ 805E40C - push {r4-r7,lr} - adds r4, r0, 0 - adds r7, r1, 0 - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0 - beq _0805E43C - ldr r1, [r4, 0xC] - ldr r0, [r4, 0x10] - cmp r1, r0 - bne _0805E43C - movs r0, 0 - strb r0, [r2] - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetOppositeDirection - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldObjectSetDirection -_0805E43C: - ldrb r1, [r4, 0x18] - lsrs r1, 4 - adds r0, r4, 0 - bl sub_805FF20 - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - lsls r0, 24 - lsrs r6, r0, 24 - cmp r5, 0x1 - bne _0805E492 - adds r1, r4, 0 - adds r1, 0x21 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetOppositeDirection - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldObjectSetDirection - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - lsls r0, 24 - lsrs r6, r0, 24 - ldrb r1, [r4, 0x18] - lsrs r1, 4 - adds r0, r4, 0 - bl sub_805FF20 - lsls r0, 24 - lsrs r5, r0, 24 -_0805E492: - cmp r5, 0 - beq _0805E4A4 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetStepInPlaceDelay16AnimId - lsls r0, 24 - lsrs r6, r0, 24 -_0805E4A4: - adds r0, r4, 0 - adds r1, r7, 0 - adds r2, r6, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x3 - strh r0, [r7, 0x30] - movs r0, 0x1 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_805E40C - - thumb_func_start sub_805E4C4 -sub_805E4C4: @ 805E4C4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805E4E2 - ldrb r0, [r4] - movs r1, 0x3 - negs r1, r1 - ands r1, r0 - strb r1, [r4] - movs r0, 0x1 - strh r0, [r5, 0x30] -_0805E4E2: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E4C4 - - thumb_func_start sub_805E4EC -sub_805E4EC: @ 805E4EC - push {r4,lr} - adds r4, r1, 0 - bl npc_reset - movs r0, 0x1 - strh r0, [r4, 0x30] - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805E4EC - - thumb_func_start MoveFieldObjectInNextDirectionInSequence -MoveFieldObjectInNextDirectionInSequence: @ 805E500 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r0, 0 - mov r8, r1 - adds r7, r2, 0 - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x3 - bne _0805E522 - ldr r1, [r4, 0xC] - ldr r0, [r4, 0x10] - cmp r1, r0 - bne _0805E522 - movs r0, 0 - strb r0, [r2] -_0805E522: - adds r5, r4, 0 - adds r5, 0x21 - ldrb r0, [r5] - adds r0, r7, r0 - ldrb r1, [r0] - adds r0, r4, 0 - bl FieldObjectSetDirection - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - lsls r0, 24 - lsrs r6, r0, 24 - ldrb r1, [r4, 0x18] - lsrs r1, 4 - adds r0, r4, 0 - bl sub_805FF20 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0805E57C - ldrb r0, [r5] - adds r0, 0x1 - strb r0, [r5] - ldrb r0, [r5] - adds r0, r7, r0 - ldrb r1, [r0] - adds r0, r4, 0 - bl FieldObjectSetDirection - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetGoSpeed0AnimId - lsls r0, 24 - lsrs r6, r0, 24 - ldrb r1, [r4, 0x18] - lsrs r1, 4 - adds r0, r4, 0 - bl sub_805FF20 - lsls r0, 24 - lsrs r0, 24 -_0805E57C: - cmp r0, 0 - beq _0805E58E - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetStepInPlaceDelay16AnimId - lsls r0, 24 - lsrs r6, r0, 24 -_0805E58E: - adds r0, r4, 0 - mov r1, r8 - adds r2, r6, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r4] - movs r0, 0x2 - mov r1, r8 - strh r0, [r1, 0x30] - movs r0, 0x1 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end MoveFieldObjectInNextDirectionInSequence - - thumb_func_start sub_805E5B4 -sub_805E5B4: @ 805E5B4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805E5D2 - ldrb r0, [r4] - movs r1, 0x3 - negs r1, r1 - ands r1, r0 - strb r1, [r4] - movs r0, 0x1 - strh r0, [r5, 0x30] -_0805E5D2: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805E5B4 - - thumb_func_start sub_805E5DC -sub_805E5DC: @ 805E5DC - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E5F8 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E5FC @ =sub_805E600 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E5F8: .4byte gMapObjects -_0805E5FC: .4byte sub_805E600 - thumb_func_end sub_805E5DC - - thumb_func_start sub_805E600 -sub_805E600: @ 805E600 - push {r4,lr} - ldr r3, _0805E61C @ =gUnknown_0837540C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E61C: .4byte gUnknown_0837540C - thumb_func_end sub_805E600 - - thumb_func_start sub_805E620 -sub_805E620: @ 805E620 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E664 @ =gUnknown_08375418 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805E64C - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E64C - movs r0, 0x3 - strb r0, [r2] -_0805E64C: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E664: .4byte gUnknown_08375418 - thumb_func_end sub_805E620 - - thumb_func_start sub_805E668 -sub_805E668: @ 805E668 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E684 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E688 @ =sub_805E68C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E684: .4byte gMapObjects -_0805E688: .4byte sub_805E68C - thumb_func_end sub_805E668 - - thumb_func_start sub_805E68C -sub_805E68C: @ 805E68C - push {r4,lr} - ldr r3, _0805E6A8 @ =gUnknown_0837541C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E6A8: .4byte gUnknown_0837541C - thumb_func_end sub_805E68C - - thumb_func_start sub_805E6AC -sub_805E6AC: @ 805E6AC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E6F0 @ =gUnknown_08375428 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805E6D8 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E6D8 - movs r0, 0x2 - strb r0, [r2] -_0805E6D8: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E6F0: .4byte gUnknown_08375428 - thumb_func_end sub_805E6AC - - thumb_func_start sub_805E6F4 -sub_805E6F4: @ 805E6F4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E710 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E714 @ =sub_805E718 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E710: .4byte gMapObjects -_0805E714: .4byte sub_805E718 - thumb_func_end sub_805E6F4 - - thumb_func_start sub_805E718 -sub_805E718: @ 805E718 - push {r4,lr} - ldr r3, _0805E734 @ =gUnknown_0837542C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E734: .4byte gUnknown_0837542C - thumb_func_end sub_805E718 - - thumb_func_start sub_805E738 -sub_805E738: @ 805E738 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E77C @ =gUnknown_08375438 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805E764 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E764 - movs r0, 0x2 - strb r0, [r2] -_0805E764: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E77C: .4byte gUnknown_08375438 - thumb_func_end sub_805E738 - - thumb_func_start sub_805E780 -sub_805E780: @ 805E780 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E79C @ =gMapObjects - adds r0, r2 - ldr r2, _0805E7A0 @ =sub_805E7A4 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E79C: .4byte gMapObjects -_0805E7A0: .4byte sub_805E7A4 - thumb_func_end sub_805E780 - - thumb_func_start sub_805E7A4 -sub_805E7A4: @ 805E7A4 - push {r4,lr} - ldr r3, _0805E7C0 @ =gUnknown_0837543C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E7C0: .4byte gUnknown_0837543C - thumb_func_end sub_805E7A4 - - thumb_func_start sub_805E7C4 -sub_805E7C4: @ 805E7C4 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E808 @ =gUnknown_08375448 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805E7F0 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E7F0 - movs r0, 0x3 - strb r0, [r2] -_0805E7F0: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E808: .4byte gUnknown_08375448 - thumb_func_end sub_805E7C4 - - thumb_func_start sub_805E80C -sub_805E80C: @ 805E80C - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E828 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E82C @ =sub_805E830 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E828: .4byte gMapObjects -_0805E82C: .4byte sub_805E830 - thumb_func_end sub_805E80C - - thumb_func_start sub_805E830 -sub_805E830: @ 805E830 - push {r4,lr} - ldr r3, _0805E84C @ =gUnknown_0837544C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E84C: .4byte gUnknown_0837544C - thumb_func_end sub_805E830 - - thumb_func_start sub_805E850 -sub_805E850: @ 805E850 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E894 @ =gUnknown_08375458 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805E87C - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E87C - movs r0, 0x3 - strb r0, [r2] -_0805E87C: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E894: .4byte gUnknown_08375458 - thumb_func_end sub_805E850 - - thumb_func_start sub_805E898 -sub_805E898: @ 805E898 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E8B4 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E8B8 @ =sub_805E8BC - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E8B4: .4byte gMapObjects -_0805E8B8: .4byte sub_805E8BC - thumb_func_end sub_805E898 - - thumb_func_start sub_805E8BC -sub_805E8BC: @ 805E8BC - push {r4,lr} - ldr r3, _0805E8D8 @ =gUnknown_0837545C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E8D8: .4byte gUnknown_0837545C - thumb_func_end sub_805E8BC - - thumb_func_start sub_805E8DC -sub_805E8DC: @ 805E8DC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E920 @ =gUnknown_08375468 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805E908 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E908 - movs r0, 0x2 - strb r0, [r2] -_0805E908: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E920: .4byte gUnknown_08375468 - thumb_func_end sub_805E8DC - - thumb_func_start sub_805E924 -sub_805E924: @ 805E924 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E940 @ =gMapObjects - adds r0, r2 - ldr r2, _0805E944 @ =sub_805E948 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E940: .4byte gMapObjects -_0805E944: .4byte sub_805E948 - thumb_func_end sub_805E924 - - thumb_func_start sub_805E948 -sub_805E948: @ 805E948 - push {r4,lr} - ldr r3, _0805E964 @ =gUnknown_0837546C - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E964: .4byte gUnknown_0837546C - thumb_func_end sub_805E948 - - thumb_func_start sub_805E968 -sub_805E968: @ 805E968 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805E9AC @ =gUnknown_08375240 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805E994 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805E994 - movs r0, 0x2 - strb r0, [r2] -_0805E994: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805E9AC: .4byte gUnknown_08375240 - thumb_func_end sub_805E968 - - thumb_func_start sub_805E9B0 -sub_805E9B0: @ 805E9B0 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805E9CC @ =gMapObjects - adds r0, r2 - ldr r2, _0805E9D0 @ =sub_805E9D4 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805E9CC: .4byte gMapObjects -_0805E9D0: .4byte sub_805E9D4 - thumb_func_end sub_805E9B0 - - thumb_func_start sub_805E9D4 -sub_805E9D4: @ 805E9D4 - push {r4,lr} - ldr r3, _0805E9F0 @ =gUnknown_08375478 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805E9F0: .4byte gUnknown_08375478 - thumb_func_end sub_805E9D4 - - thumb_func_start sub_805E9F4 -sub_805E9F4: @ 805E9F4 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EA38 @ =gUnknown_08375484 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805EA20 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EA20 - movs r0, 0x3 - strb r0, [r2] -_0805EA20: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EA38: .4byte gUnknown_08375484 - thumb_func_end sub_805E9F4 - - thumb_func_start sub_805EA3C -sub_805EA3C: @ 805EA3C - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EA58 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EA5C @ =sub_805EA60 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EA58: .4byte gMapObjects -_0805EA5C: .4byte sub_805EA60 - thumb_func_end sub_805EA3C - - thumb_func_start sub_805EA60 -sub_805EA60: @ 805EA60 - push {r4,lr} - ldr r3, _0805EA7C @ =gUnknown_08375488 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EA7C: .4byte gUnknown_08375488 - thumb_func_end sub_805EA60 - - thumb_func_start sub_805EA80 -sub_805EA80: @ 805EA80 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EAC4 @ =gUnknown_08375494 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805EAAC - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EAAC - movs r0, 0x3 - strb r0, [r2] -_0805EAAC: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EAC4: .4byte gUnknown_08375494 - thumb_func_end sub_805EA80 - - thumb_func_start sub_805EAC8 -sub_805EAC8: @ 805EAC8 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EAE4 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EAE8 @ =sub_805EAEC - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EAE4: .4byte gMapObjects -_0805EAE8: .4byte sub_805EAEC - thumb_func_end sub_805EAC8 - - thumb_func_start sub_805EAEC -sub_805EAEC: @ 805EAEC - push {r4,lr} - ldr r3, _0805EB08 @ =gUnknown_08375498 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EB08: .4byte gUnknown_08375498 - thumb_func_end sub_805EAEC - - thumb_func_start sub_805EB0C -sub_805EB0C: @ 805EB0C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EB50 @ =gUnknown_083754A4 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805EB38 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EB38 - movs r0, 0x2 - strb r0, [r2] -_0805EB38: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EB50: .4byte gUnknown_083754A4 - thumb_func_end sub_805EB0C - - thumb_func_start sub_805EB54 -sub_805EB54: @ 805EB54 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EB70 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EB74 @ =sub_805EB78 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EB70: .4byte gMapObjects -_0805EB74: .4byte sub_805EB78 - thumb_func_end sub_805EB54 - - thumb_func_start sub_805EB78 -sub_805EB78: @ 805EB78 - push {r4,lr} - ldr r3, _0805EB94 @ =gUnknown_083754A8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EB94: .4byte gUnknown_083754A8 - thumb_func_end sub_805EB78 - - thumb_func_start sub_805EB98 -sub_805EB98: @ 805EB98 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EBDC @ =gUnknown_083754B4 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805EBC4 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EBC4 - movs r0, 0x2 - strb r0, [r2] -_0805EBC4: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EBDC: .4byte gUnknown_083754B4 - thumb_func_end sub_805EB98 - - thumb_func_start sub_805EBE0 -sub_805EBE0: @ 805EBE0 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EBFC @ =gMapObjects - adds r0, r2 - ldr r2, _0805EC00 @ =sub_805EC04 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EBFC: .4byte gMapObjects -_0805EC00: .4byte sub_805EC04 - thumb_func_end sub_805EBE0 - - thumb_func_start sub_805EC04 -sub_805EC04: @ 805EC04 - push {r4,lr} - ldr r3, _0805EC20 @ =gUnknown_083754B8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EC20: .4byte gUnknown_083754B8 - thumb_func_end sub_805EC04 - - thumb_func_start sub_805EC24 -sub_805EC24: @ 805EC24 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EC68 @ =gUnknown_083754C4 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805EC50 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EC50 - movs r0, 0x3 - strb r0, [r2] -_0805EC50: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EC68: .4byte gUnknown_083754C4 - thumb_func_end sub_805EC24 - - thumb_func_start sub_805EC6C -sub_805EC6C: @ 805EC6C - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EC88 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EC8C @ =sub_805EC90 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EC88: .4byte gMapObjects -_0805EC8C: .4byte sub_805EC90 - thumb_func_end sub_805EC6C - - thumb_func_start sub_805EC90 -sub_805EC90: @ 805EC90 - push {r4,lr} - ldr r3, _0805ECAC @ =gUnknown_083754C8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805ECAC: .4byte gUnknown_083754C8 - thumb_func_end sub_805EC90 - - thumb_func_start sub_805ECB0 -sub_805ECB0: @ 805ECB0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805ECF4 @ =gUnknown_083754D4 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805ECDC - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805ECDC - movs r0, 0x3 - strb r0, [r2] -_0805ECDC: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805ECF4: .4byte gUnknown_083754D4 - thumb_func_end sub_805ECB0 - - thumb_func_start sub_805ECF8 -sub_805ECF8: @ 805ECF8 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805ED14 @ =gMapObjects - adds r0, r2 - ldr r2, _0805ED18 @ =sub_805ED1C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805ED14: .4byte gMapObjects -_0805ED18: .4byte sub_805ED1C - thumb_func_end sub_805ECF8 - - thumb_func_start sub_805ED1C -sub_805ED1C: @ 805ED1C - push {r4,lr} - ldr r3, _0805ED38 @ =gUnknown_083754D8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805ED38: .4byte gUnknown_083754D8 - thumb_func_end sub_805ED1C - - thumb_func_start sub_805ED3C -sub_805ED3C: @ 805ED3C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805ED80 @ =gUnknown_083754E4 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805ED68 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805ED68 - movs r0, 0x2 - strb r0, [r2] -_0805ED68: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805ED80: .4byte gUnknown_083754E4 - thumb_func_end sub_805ED3C - - thumb_func_start sub_805ED84 -sub_805ED84: @ 805ED84 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EDA0 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EDA4 @ =sub_805EDA8 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EDA0: .4byte gMapObjects -_0805EDA4: .4byte sub_805EDA8 - thumb_func_end sub_805ED84 - - thumb_func_start sub_805EDA8 -sub_805EDA8: @ 805EDA8 - push {r4,lr} - ldr r3, _0805EDC4 @ =gUnknown_083754E8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EDC4: .4byte gUnknown_083754E8 - thumb_func_end sub_805EDA8 - - thumb_func_start sub_805EDC8 -sub_805EDC8: @ 805EDC8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EE0C @ =gUnknown_083754F4 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x1 - bne _0805EDF4 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EDF4 - movs r0, 0x2 - strb r0, [r2] -_0805EDF4: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EE0C: .4byte gUnknown_083754F4 - thumb_func_end sub_805EDC8 - - thumb_func_start sub_805EE10 -sub_805EE10: @ 805EE10 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EE2C @ =gMapObjects - adds r0, r2 - ldr r2, _0805EE30 @ =sub_805EE34 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EE2C: .4byte gMapObjects -_0805EE30: .4byte sub_805EE34 - thumb_func_end sub_805EE10 - - thumb_func_start sub_805EE34 -sub_805EE34: @ 805EE34 - push {r4,lr} - ldr r3, _0805EE50 @ =gUnknown_083754F8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EE50: .4byte gUnknown_083754F8 - thumb_func_end sub_805EE34 - - thumb_func_start sub_805EE54 -sub_805EE54: @ 805EE54 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EE98 @ =gUnknown_08375504 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805EE80 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EE80 - movs r0, 0x3 - strb r0, [r2] -_0805EE80: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EE98: .4byte gUnknown_08375504 - thumb_func_end sub_805EE54 - - thumb_func_start sub_805EE9C -sub_805EE9C: @ 805EE9C - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EEB8 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EEBC @ =sub_805EEC0 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EEB8: .4byte gMapObjects -_0805EEBC: .4byte sub_805EEC0 - thumb_func_end sub_805EE9C - - thumb_func_start sub_805EEC0 -sub_805EEC0: @ 805EEC0 - push {r4,lr} - ldr r3, _0805EEDC @ =gUnknown_08375508 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EEDC: .4byte gUnknown_08375508 - thumb_func_end sub_805EEC0 - - thumb_func_start sub_805EEE0 -sub_805EEE0: @ 805EEE0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EF24 @ =gUnknown_08375514 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805EF0C - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EF0C - movs r0, 0x3 - strb r0, [r2] -_0805EF0C: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EF24: .4byte gUnknown_08375514 - thumb_func_end sub_805EEE0 - - thumb_func_start sub_805EF28 -sub_805EF28: @ 805EF28 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EF44 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EF48 @ =sub_805EF4C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EF44: .4byte gMapObjects -_0805EF48: .4byte sub_805EF4C - thumb_func_end sub_805EF28 - - thumb_func_start sub_805EF4C -sub_805EF4C: @ 805EF4C - push {r4,lr} - ldr r3, _0805EF68 @ =gUnknown_08375518 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EF68: .4byte gUnknown_08375518 - thumb_func_end sub_805EF4C - - thumb_func_start sub_805EF6C -sub_805EF6C: @ 805EF6C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805EFB0 @ =gUnknown_08375524 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805EF98 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805EF98 - movs r0, 0x3 - strb r0, [r2] -_0805EF98: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805EFB0: .4byte gUnknown_08375524 - thumb_func_end sub_805EF6C - - thumb_func_start sub_805EFB4 -sub_805EFB4: @ 805EFB4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805EFD0 @ =gMapObjects - adds r0, r2 - ldr r2, _0805EFD4 @ =sub_805EFD8 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805EFD0: .4byte gMapObjects -_0805EFD4: .4byte sub_805EFD8 - thumb_func_end sub_805EFB4 - - thumb_func_start sub_805EFD8 -sub_805EFD8: @ 805EFD8 - push {r4,lr} - ldr r3, _0805EFF4 @ =gUnknown_08375528 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805EFF4: .4byte gUnknown_08375528 - thumb_func_end sub_805EFD8 - - thumb_func_start sub_805EFF8 -sub_805EFF8: @ 805EFF8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805F03C @ =gUnknown_08375534 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805F024 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805F024 - movs r0, 0x3 - strb r0, [r2] -_0805F024: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F03C: .4byte gUnknown_08375534 - thumb_func_end sub_805EFF8 - - thumb_func_start sub_805F040 -sub_805F040: @ 805F040 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F05C @ =gMapObjects - adds r0, r2 - ldr r2, _0805F060 @ =sub_805F064 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F05C: .4byte gMapObjects -_0805F060: .4byte sub_805F064 - thumb_func_end sub_805F040 - - thumb_func_start sub_805F064 -sub_805F064: @ 805F064 - push {r4,lr} - ldr r3, _0805F080 @ =gUnknown_08375538 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F080: .4byte gUnknown_08375538 - thumb_func_end sub_805F064 - - thumb_func_start sub_805F084 -sub_805F084: @ 805F084 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805F0C8 @ =gUnknown_08375544 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805F0B0 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805F0B0 - movs r0, 0x3 - strb r0, [r2] -_0805F0B0: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F0C8: .4byte gUnknown_08375544 - thumb_func_end sub_805F084 - - thumb_func_start sub_805F0CC -sub_805F0CC: @ 805F0CC - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F0E8 @ =gMapObjects - adds r0, r2 - ldr r2, _0805F0EC @ =sub_805F0F0 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F0E8: .4byte gMapObjects -_0805F0EC: .4byte sub_805F0F0 - thumb_func_end sub_805F0CC - - thumb_func_start sub_805F0F0 -sub_805F0F0: @ 805F0F0 - push {r4,lr} - ldr r3, _0805F10C @ =gUnknown_08375548 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F10C: .4byte gUnknown_08375548 - thumb_func_end sub_805F0F0 - - thumb_func_start sub_805F110 -sub_805F110: @ 805F110 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805F154 @ =gUnknown_08375554 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805F13C - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805F13C - movs r0, 0x3 - strb r0, [r2] -_0805F13C: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F154: .4byte gUnknown_08375554 - thumb_func_end sub_805F110 - - thumb_func_start sub_805F158 -sub_805F158: @ 805F158 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F174 @ =gMapObjects - adds r0, r2 - ldr r2, _0805F178 @ =sub_805F17C - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F174: .4byte gMapObjects -_0805F178: .4byte sub_805F17C - thumb_func_end sub_805F158 - - thumb_func_start sub_805F17C -sub_805F17C: @ 805F17C - push {r4,lr} - ldr r3, _0805F198 @ =gUnknown_08375558 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F198: .4byte gUnknown_08375558 - thumb_func_end sub_805F17C - - thumb_func_start sub_805F19C -sub_805F19C: @ 805F19C - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805F1E0 @ =gUnknown_08375564 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805F1C8 - movs r0, 0xE - ldrsh r1, [r4, r0] - movs r3, 0x12 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805F1C8 - movs r0, 0x3 - strb r0, [r2] -_0805F1C8: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F1E0: .4byte gUnknown_08375564 - thumb_func_end sub_805F19C - - thumb_func_start sub_805F1E4 -sub_805F1E4: @ 805F1E4 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F200 @ =gMapObjects - adds r0, r2 - ldr r2, _0805F204 @ =sub_805F208 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F200: .4byte gMapObjects -_0805F204: .4byte sub_805F208 - thumb_func_end sub_805F1E4 - - thumb_func_start sub_805F208 -sub_805F208: @ 805F208 - push {r4,lr} - ldr r3, _0805F224 @ =gUnknown_08375568 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F224: .4byte gUnknown_08375568 - thumb_func_end sub_805F208 - - thumb_func_start sub_805F228 -sub_805F228: @ 805F228 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805F26C @ =gUnknown_08375574 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805F254 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805F254 - movs r0, 0x3 - strb r0, [r2] -_0805F254: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F26C: .4byte gUnknown_08375574 - thumb_func_end sub_805F228 - - thumb_func_start sub_805F270 -sub_805F270: @ 805F270 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F28C @ =gMapObjects - adds r0, r2 - ldr r2, _0805F290 @ =sub_805F294 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F28C: .4byte gMapObjects -_0805F290: .4byte sub_805F294 - thumb_func_end sub_805F270 - - thumb_func_start sub_805F294 -sub_805F294: @ 805F294 - push {r4,lr} - ldr r3, _0805F2B0 @ =gUnknown_08375578 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F2B0: .4byte gUnknown_08375578 - thumb_func_end sub_805F294 - - thumb_func_start sub_805F2B4 -sub_805F2B4: @ 805F2B4 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _0805F2F8 @ =gUnknown_08375584 - mov r0, sp - movs r2, 0x4 - bl memcpy - adds r2, r4, 0 - adds r2, 0x21 - ldrb r0, [r2] - cmp r0, 0x2 - bne _0805F2E0 - movs r0, 0xC - ldrsh r1, [r4, r0] - movs r3, 0x10 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0805F2E0 - movs r0, 0x3 - strb r0, [r2] -_0805F2E0: - adds r0, r4, 0 - adds r1, r5, 0 - mov r2, sp - bl MoveFieldObjectInNextDirectionInSequence - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0805F2F8: .4byte gUnknown_08375584 - thumb_func_end sub_805F2B4 - - thumb_func_start sub_805F2FC -sub_805F2FC: @ 805F2FC - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F318 @ =gMapObjects - adds r0, r2 - ldr r2, _0805F31C @ =sub_805F320 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F318: .4byte gMapObjects -_0805F31C: .4byte sub_805F320 - thumb_func_end sub_805F2FC - - thumb_func_start sub_805F320 -sub_805F320: @ 805F320 - push {r4,lr} - ldr r3, _0805F33C @ =gUnknown_08375588 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F33C: .4byte gUnknown_08375588 - thumb_func_end sub_805F320 - - thumb_func_start mss_npc_reset_oampriv3_1_unk2_unk3 -mss_npc_reset_oampriv3_1_unk2_unk3: @ 805F340 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - adds r4, 0x21 - ldrb r0, [r4] - cmp r0, 0 - bne _0805F358 - bl player_get_direction_lower_nybble - strb r0, [r4] -_0805F358: - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end mss_npc_reset_oampriv3_1_unk2_unk3 - - thumb_func_start sub_805F364 -sub_805F364: @ 805F364 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - ldr r2, _0805F388 @ =gMapObjects - ldr r3, _0805F38C @ =gPlayerAvatar - ldrb r1, [r3, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1C] - cmp r0, 0xFF - beq _0805F384 - ldrb r0, [r3, 0x3] - cmp r0, 0x2 - bne _0805F390 -_0805F384: - movs r0, 0 - b _0805F3B8 - .align 2, 0 -_0805F388: .4byte gMapObjects -_0805F38C: .4byte gPlayerAvatar -_0805F390: - ldr r5, _0805F3C0 @ =gUnknown_08375594 - bl player_get_x22 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 22 - adds r4, r5 - bl player_get_direction_upper_nybble - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r4, [r4] - adds r0, r6, 0 - adds r1, r7, 0 - movs r3, 0 - bl _call_via_r4 - lsls r0, 24 - lsrs r0, 24 -_0805F3B8: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F3C0: .4byte gUnknown_08375594 - thumb_func_end sub_805F364 - - thumb_func_start sub_805F3C4 -sub_805F3C4: @ 805F3C4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805F3E2 - ldrb r0, [r4] - movs r1, 0x3 - negs r1, r1 - ands r1, r0 - strb r1, [r4] - movs r0, 0x1 - strh r0, [r5, 0x30] -_0805F3E2: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805F3C4 - +.ifndef NONMATCHING thumb_func_start sub_805F3EC sub_805F3EC: @ 805F3EC movs r0, 0 @@ -6112,6 +137,7 @@ _0805F4D2: .align 2, 0 _0805F4EC: .4byte gUnknown_0836DC09 thumb_func_end sub_805F438 +.endif thumb_func_start sub_805F4F0 sub_805F4F0: @ 805F4F0 @@ -6600,8770 +626,3 @@ _0805F8C0: .align 2, 0 _0805F8DC: .4byte gUnknown_0836DC09 thumb_func_end oac_hopping - - thumb_func_start sub_805F8E0 -sub_805F8E0: @ 805F8E0 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805F8FC @ =gMapObjects - adds r0, r2 - ldr r2, _0805F900 @ =sub_805F904 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805F8FC: .4byte gMapObjects -_0805F900: .4byte sub_805F904 - thumb_func_end sub_805F8E0 - - thumb_func_start sub_805F904 -sub_805F904: @ 805F904 - push {r4,lr} - ldr r3, _0805F920 @ =gUnknown_083755C0 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805F920: .4byte gUnknown_083755C0 - thumb_func_end sub_805F904 - - thumb_func_start mss_08062EA4 -mss_08062EA4: @ 805F924 - push {r4-r7,lr} - adds r6, r0, 0 - adds r7, r1, 0 - ldr r2, _0805F948 @ =gMapObjects - ldr r3, _0805F94C @ =gPlayerAvatar - ldrb r1, [r3, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x1C] - cmp r0, 0xFF - beq _0805F944 - ldrb r0, [r3, 0x3] - cmp r0, 0x2 - bne _0805F950 -_0805F944: - movs r0, 0 - b _0805F978 - .align 2, 0 -_0805F948: .4byte gMapObjects -_0805F94C: .4byte gPlayerAvatar -_0805F950: - ldr r5, _0805F980 @ =gUnknown_08375594 - bl player_get_x22 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 22 - adds r4, r5 - bl player_get_direction_upper_nybble - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0805F984 @ =MetatileBehavior_IsPokeGrass - ldr r4, [r4] - adds r0, r6, 0 - adds r1, r7, 0 - bl _call_via_r4 - lsls r0, 24 - lsrs r0, 24 -_0805F978: - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0805F980: .4byte gUnknown_08375594 -_0805F984: .4byte MetatileBehavior_IsPokeGrass - thumb_func_end mss_08062EA4 - - thumb_func_start FieldObjectCB_TreeDisguise -FieldObjectCB_TreeDisguise: @ 805F988 - push {r4-r6,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _0805F9EC @ =gMapObjects - adds r4, r1, r0 - adds r6, r4, 0 - adds r6, 0x21 - ldrb r0, [r6] - cmp r0, 0 - beq _0805F9B0 - cmp r0, 0x1 - bne _0805F9D0 - movs r1, 0x3C - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _0805F9D0 -_0805F9B0: - ldr r1, _0805F9F0 @ =gUnknown_0202FF84 - adds r2, r1, 0x4 - adds r3, r1, 0 - adds r3, 0x8 - adds r0, r4, 0 - bl FieldObjectGetLocalIdAndMap - movs r0, 0x1C - bl FieldEffectStart - strb r0, [r4, 0x1A] - movs r0, 0x1 - strb r0, [r6] - ldrh r0, [r5, 0x3C] - adds r0, 0x1 - strh r0, [r5, 0x3C] -_0805F9D0: - movs r0, 0x2E - ldrsh r1, [r5, r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0805F9EC @ =gMapObjects - adds r0, r1 - ldr r2, _0805F9F4 @ =sub_805F9F8 - adds r1, r5, 0 - bl meta_step - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0805F9EC: .4byte gMapObjects -_0805F9F0: .4byte gUnknown_0202FF84 -_0805F9F4: .4byte sub_805F9F8 - thumb_func_end FieldObjectCB_TreeDisguise - - thumb_func_start sub_805F9F8 -sub_805F9F8: @ 805F9F8 - push {lr} - bl npc_reset - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_805F9F8 - - thumb_func_start FieldObjectCB_MountainDisguise -FieldObjectCB_MountainDisguise: @ 805FA04 - push {r4-r6,lr} - adds r5, r0, 0 - movs r1, 0x2E - ldrsh r0, [r5, r1] - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _0805FA68 @ =gMapObjects - adds r4, r1, r0 - adds r6, r4, 0 - adds r6, 0x21 - ldrb r0, [r6] - cmp r0, 0 - beq _0805FA2C - cmp r0, 0x1 - bne _0805FA4C - movs r1, 0x3C - ldrsh r0, [r5, r1] - cmp r0, 0 - bne _0805FA4C -_0805FA2C: - ldr r1, _0805FA6C @ =gUnknown_0202FF84 - adds r2, r1, 0x4 - adds r3, r1, 0 - adds r3, 0x8 - adds r0, r4, 0 - bl FieldObjectGetLocalIdAndMap - movs r0, 0x1D - bl FieldEffectStart - strb r0, [r4, 0x1A] - movs r0, 0x1 - strb r0, [r6] - ldrh r0, [r5, 0x3C] - adds r0, 0x1 - strh r0, [r5, 0x3C] -_0805FA4C: - movs r0, 0x2E - ldrsh r1, [r5, r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0805FA68 @ =gMapObjects - adds r0, r1 - ldr r2, _0805FA70 @ =sub_805F9F8 - adds r1, r5, 0 - bl meta_step - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0805FA68: .4byte gMapObjects -_0805FA6C: .4byte gUnknown_0202FF84 -_0805FA70: .4byte sub_805F9F8 - thumb_func_end FieldObjectCB_MountainDisguise - - thumb_func_start FieldObjectCB_Hidden1 -FieldObjectCB_Hidden1: @ 805FA74 - push {r4,lr} - adds r3, r0, 0 - movs r1, 0x3C - ldrsh r0, [r3, r1] - ldr r4, _0805FAD0 @ =gMapObjects - cmp r0, 0 - bne _0805FAB4 - movs r0, 0x2E - ldrsh r1, [r3, r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldrb r1, [r0, 0x3] - movs r2, 0x4 - orrs r1, r2 - strb r1, [r0, 0x3] - adds r2, r3, 0 - adds r2, 0x42 - ldrb r1, [r2] - movs r0, 0x3F - ands r0, r1 - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldrb r0, [r3, 0x5] - movs r1, 0xC - orrs r0, r1 - strb r0, [r3, 0x5] - ldrh r0, [r3, 0x3C] - adds r0, 0x1 - strh r0, [r3, 0x3C] -_0805FAB4: - movs r0, 0x2E - ldrsh r1, [r3, r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - ldr r2, _0805FAD4 @ =sub_805FAD8 - adds r1, r3, 0 - bl meta_step - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0805FAD0: .4byte gMapObjects -_0805FAD4: .4byte sub_805FAD8 - thumb_func_end FieldObjectCB_Hidden1 - - thumb_func_start sub_805FAD8 -sub_805FAD8: @ 805FAD8 - push {r4,lr} - ldr r3, _0805FAF4 @ =gUnknown_083755CC - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805FAF4: .4byte gUnknown_083755CC - thumb_func_end sub_805FAD8 - - thumb_func_start sub_805FAF8 -sub_805FAF8: @ 805FAF8 - push {lr} - bl npc_reset - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_805FAF8 - - thumb_func_start sub_805FB04 -sub_805FB04: @ 805FB04 - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - beq _0805FB16 - movs r0, 0 - strh r0, [r4, 0x30] -_0805FB16: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805FB04 - - thumb_func_start sub_805FB20 -sub_805FB20: @ 805FB20 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805FB3C @ =gMapObjects - adds r0, r2 - ldr r2, _0805FB40 @ =sub_805FB44 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805FB3C: .4byte gMapObjects -_0805FB40: .4byte sub_805FB44 - thumb_func_end sub_805FB20 - - thumb_func_start sub_805FB44 -sub_805FB44: @ 805FB44 - push {r4,lr} - ldr r3, _0805FB60 @ =gUnknown_083755D0 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805FB60: .4byte gUnknown_083755D0 - thumb_func_end sub_805FB44 - - thumb_func_start sub_805FB64 -sub_805FB64: @ 805FB64 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetStepInPlaceDelay16AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805FB64 - - thumb_func_start sub_805FB90 -sub_805FB90: @ 805FB90 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805FBAC @ =gMapObjects - adds r0, r2 - ldr r2, _0805FBB0 @ =sub_805FBB4 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805FBAC: .4byte gMapObjects -_0805FBB0: .4byte sub_805FBB4 - thumb_func_end sub_805FB90 - - thumb_func_start sub_805FBB4 -sub_805FBB4: @ 805FBB4 - push {r4,lr} - ldr r3, _0805FBD0 @ =gUnknown_083755D8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805FBD0: .4byte gUnknown_083755D8 - thumb_func_end sub_805FBB4 - - thumb_func_start sub_805FBD4 -sub_805FBD4: @ 805FBD4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetStepInPlaceDelay8AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805FBD4 - - thumb_func_start sub_805FC00 -sub_805FC00: @ 805FC00 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805FC1C @ =gMapObjects - adds r0, r2 - ldr r2, _0805FC20 @ =sub_805FC24 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805FC1C: .4byte gMapObjects -_0805FC20: .4byte sub_805FC24 - thumb_func_end sub_805FC00 - - thumb_func_start sub_805FC24 -sub_805FC24: @ 805FC24 - push {r4,lr} - ldr r3, _0805FC40 @ =gUnknown_083755E0 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805FC40: .4byte gUnknown_083755E0 - thumb_func_end sub_805FC24 - - thumb_func_start sub_805FC44 -sub_805FC44: @ 805FC44 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetStepInPlaceDelay4AnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805FC44 - - thumb_func_start sub_805FC70 -sub_805FC70: @ 805FC70 - push {lr} - adds r1, r0, 0 - movs r0, 0x2E - ldrsh r2, [r1, r0] - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - ldr r2, _0805FC8C @ =gMapObjects - adds r0, r2 - ldr r2, _0805FC90 @ =sub_805FC94 - bl meta_step - pop {r0} - bx r0 - .align 2, 0 -_0805FC8C: .4byte gMapObjects -_0805FC90: .4byte sub_805FC94 - thumb_func_end sub_805FC70 - - thumb_func_start sub_805FC94 -sub_805FC94: @ 805FC94 - push {r4,lr} - ldr r3, _0805FCB0 @ =gUnknown_083755E8 - movs r4, 0x30 - ldrsh r2, [r1, r4] - lsls r2, 2 - adds r2, r3 - ldr r2, [r2] - bl _call_via_r2 - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0805FCB0: .4byte gUnknown_083755E8 - thumb_func_end sub_805FC94 - - thumb_func_start sub_805FCB4 -sub_805FCB4: @ 805FCB4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl npc_reset - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl GetFaceDirectionAnimId - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectSetRegularAnim - ldrb r0, [r4, 0x1] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r4, 0x1] - movs r0, 0x1 - strh r0, [r5, 0x30] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_805FCB4 - - thumb_func_start sub_805FCE8 -sub_805FCE8: @ 805FCE8 - push {r4,lr} - adds r4, r1, 0 - bl FieldObjectExecRegularAnim - lsls r0, 24 - cmp r0, 0 - bne _0805FCFA - movs r0, 0 - b _0805FD00 -_0805FCFA: - movs r0, 0x2 - strh r0, [r4, 0x30] - movs r0, 0x1 -_0805FD00: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_805FCE8 - - thumb_func_start sub_805FD08 -sub_805FD08: @ 805FD08 - ldrb r2, [r0] - movs r1, 0x3 - negs r1, r1 - ands r1, r2 - strb r1, [r0] - movs r0, 0 - bx lr - thumb_func_end sub_805FD08 - - thumb_func_start npc_reset -npc_reset: @ 805FD18 - ldrb r3, [r0] - movs r2, 0x3 - negs r2, r2 - ands r2, r3 - movs r3, 0x41 - negs r3, r3 - ands r2, r3 - movs r3, 0x7F - ands r2, r3 - strb r2, [r0] - movs r2, 0xFF - strb r2, [r0, 0x1C] - movs r0, 0 - strh r0, [r1, 0x30] - bx lr - thumb_func_end npc_reset - - thumb_func_start FieldObjectDirectionToImageAnimId -FieldObjectDirectionToImageAnimId: @ 805FD38 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FD44 @ =gUnknown_083755F4 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FD44: .4byte gUnknown_083755F4 - thumb_func_end FieldObjectDirectionToImageAnimId - - thumb_func_start get_go_image_anim_num -get_go_image_anim_num: @ 805FD48 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FD54 @ =gUnknown_083755FD - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FD54: .4byte gUnknown_083755FD - thumb_func_end get_go_image_anim_num - - thumb_func_start get_go_fast_image_anim_num -get_go_fast_image_anim_num: @ 805FD58 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FD64 @ =gUnknown_08375606 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FD64: .4byte gUnknown_08375606 - thumb_func_end get_go_fast_image_anim_num - - thumb_func_start get_go_faster_image_anim_num -get_go_faster_image_anim_num: @ 805FD68 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FD74 @ =gUnknown_0837560F - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FD74: .4byte gUnknown_0837560F - thumb_func_end get_go_faster_image_anim_num - - thumb_func_start sub_805FD78 -sub_805FD78: @ 805FD78 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FD84 @ =gUnknown_08375618 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FD84: .4byte gUnknown_08375618 - thumb_func_end sub_805FD78 - - thumb_func_start sub_805FD88 -sub_805FD88: @ 805FD88 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FD94 @ =gUnknown_08375621 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FD94: .4byte gUnknown_08375621 - thumb_func_end sub_805FD88 - - thumb_func_start sub_805FD98 -sub_805FD98: @ 805FD98 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FDA4 @ =gUnknown_0837562A - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FDA4: .4byte gUnknown_0837562A - thumb_func_end sub_805FD98 - - thumb_func_start unref_sub_805FDA8 -unref_sub_805FDA8: @ 805FDA8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FDB4 @ =gUnknown_08375633 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FDB4: .4byte gUnknown_08375633 - thumb_func_end unref_sub_805FDA8 - - thumb_func_start sub_805FDB8 -sub_805FDB8: @ 805FDB8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FDC4 @ =gUnknown_0837563C - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FDC4: .4byte gUnknown_0837563C - thumb_func_end sub_805FDB8 - - thumb_func_start sub_805FDC8 -sub_805FDC8: @ 805FDC8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FDD4 @ =gUnknown_08375645 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FDD4: .4byte gUnknown_08375645 - thumb_func_end sub_805FDC8 - - thumb_func_start sub_805FDD8 -sub_805FDD8: @ 805FDD8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FDE4 @ =gUnknown_0837564E - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FDE4: .4byte gUnknown_0837564E - thumb_func_end sub_805FDD8 - - thumb_func_start sub_805FDE8 -sub_805FDE8: @ 805FDE8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FDF4 @ =gUnknown_08375657 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FDF4: .4byte gUnknown_08375657 - thumb_func_end sub_805FDE8 - - thumb_func_start sub_805FDF8 -sub_805FDF8: @ 805FDF8 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FE04 @ =gUnknown_08375660 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FE04: .4byte gUnknown_08375660 - thumb_func_end sub_805FDF8 - - thumb_func_start sub_805FE08 -sub_805FE08: @ 805FE08 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FE14 @ =gUnknown_08375669 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FE14: .4byte gUnknown_08375669 - thumb_func_end sub_805FE08 - - thumb_func_start get_run_image_anim_num -get_run_image_anim_num: @ 805FE18 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FE24 @ =gUnknown_08375672 - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FE24: .4byte gUnknown_08375672 - thumb_func_end get_run_image_anim_num - - thumb_func_start sub_805FE28 -sub_805FE28: @ 805FE28 - push {r4,lr} - adds r3, r1, 0 - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r0, 0x1] - lsls r0, 27 - lsrs r4, r0, 31 - cmp r4, 0 - bne _0805FE5E - adds r0, r3, 0 - adds r0, 0x2A - strb r2, [r0] - adds r0, 0x1 - ldrb r2, [r0] - adds r1, r0, 0 - cmp r2, 0x1 - bne _0805FE50 - movs r0, 0x2 - strb r0, [r1] - b _0805FE56 -_0805FE50: - cmp r2, 0x3 - bne _0805FE56 - strb r4, [r1] -_0805FE56: - ldrb r1, [r1] - adds r0, r3, 0 - bl SeekSpriteAnim -_0805FE5E: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_805FE28 - - thumb_func_start sub_805FE64 -sub_805FE64: @ 805FE64 - push {lr} - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r0, 0x1] - lsls r0, 27 - cmp r0, 0 - blt _0805FE8C - adds r0, r1, 0 - adds r0, 0x2A - strb r2, [r0] - movs r2, 0x3 - adds r0, 0x1 - ldrb r0, [r0] - cmp r0, 0x1 - bhi _0805FE84 - movs r2, 0x1 -_0805FE84: - adds r0, r1, 0 - adds r1, r2, 0 - bl SeekSpriteAnim -_0805FE8C: - pop {r0} - bx r0 - thumb_func_end sub_805FE64 - - thumb_func_start sub_805FE90 -sub_805FE90: @ 805FE90 - push {lr} - lsls r1, 16 - lsrs r1, 16 - lsls r3, 16 - lsrs r3, 16 - lsls r0, 16 - asrs r0, 16 - lsls r2, 16 - asrs r2, 16 - cmp r0, r2 - ble _0805FEAA - movs r0, 0x3 - b _0805FEC0 -_0805FEAA: - cmp r0, r2 - bge _0805FEB2 - movs r0, 0x4 - b _0805FEC0 -_0805FEB2: - lsls r1, 16 - lsls r0, r3, 16 - cmp r1, r0 - bgt _0805FEBE - movs r0, 0x1 - b _0805FEC0 -_0805FEBE: - movs r0, 0x2 -_0805FEC0: - pop {r1} - bx r1 - thumb_func_end sub_805FE90 - - thumb_func_start npc_set_running_behaviour_etc -npc_set_running_behaviour_etc: @ 805FEC4 - push {r4,lr} - mov r12, r0 - lsls r1, 24 - lsrs r1, 24 - movs r3, 0 - strb r1, [r0, 0x6] - adds r0, 0x21 - strb r3, [r0] - adds r0, 0x1 - strb r3, [r0] - ldr r4, _0805FF08 @ =gSprites - mov r0, r12 - ldrb r2, [r0, 0x4] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r2, r4, 0 - adds r2, 0x1C - adds r0, r2 - ldr r2, _0805FF0C @ =gUnknown_0836DA88 - lsls r1, 2 - adds r1, r2 - ldr r1, [r1] - str r1, [r0] - mov r0, r12 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - strh r3, [r0, 0x30] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0805FF08: .4byte gSprites -_0805FF0C: .4byte gUnknown_0836DA88 - thumb_func_end npc_set_running_behaviour_etc - - thumb_func_start npc_running_behaviour_by_direction -npc_running_behaviour_by_direction: @ 805FF10 - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0805FF1C @ =gUnknown_0837567B - adds r0, r1 - ldrb r0, [r0] - bx lr - .align 2, 0 -_0805FF1C: .4byte gUnknown_0837567B - thumb_func_end npc_running_behaviour_by_direction - - thumb_func_start sub_805FF20 -sub_805FF20: @ 805FF20 - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - lsls r5, r1, 24 - lsrs r5, 24 - ldrh r1, [r6, 0x10] - mov r0, sp - strh r1, [r0] - ldrh r0, [r6, 0x12] - mov r4, sp - adds r4, 0x2 - strh r0, [r4] - adds r0, r5, 0 - mov r1, sp - adds r2, r4, 0 - bl MoveCoords - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r4, r0] - adds r0, r6, 0 - adds r3, r5, 0 - bl npc_block_way - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_805FF20 - - thumb_func_start npc_block_way -npc_block_way: @ 805FF60 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r6, r0, 0 - lsls r1, 16 - lsls r2, 16 - lsls r3, 24 - lsrs r7, r3, 24 - mov r8, r7 - lsrs r0, r1, 16 - mov r9, r0 - asrs r5, r1, 16 - lsrs r0, r2, 16 - mov r10, r0 - asrs r4, r2, 16 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl IsCoordOutsideFieldObjectMovementRect - lsls r0, 24 - cmp r0, 0 - beq _0805FF96 - movs r0, 0x1 - b _08060016 -_0805FF96: - adds r0, r5, 0 - adds r1, r4, 0 - bl MapGridIsImpassableAt - lsls r0, 24 - cmp r0, 0 - bne _0805FFD8 - adds r0, r5, 0 - adds r1, r4, 0 - bl GetMapBorderIdAt - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _0805FFD8 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - adds r3, r7, 0 - bl IsMetatileDirectionallyImpassable - lsls r0, 24 - cmp r0, 0 - bne _0805FFD8 - ldrb r0, [r6, 0x1] - lsrs r0, 7 - cmp r0, 0 - beq _0805FFDC - mov r0, r8 - bl CanCameraMoveInDirection - cmp r0, 0 - bne _0805FFDC -_0805FFD8: - movs r0, 0x2 - b _08060016 -_0805FFDC: - ldrb r0, [r6, 0xB] - lsls r0, 28 - lsrs r0, 28 - mov r2, r9 - lsls r1, r2, 16 - asrs r5, r1, 16 - mov r2, r10 - lsls r1, r2, 16 - asrs r4, r1, 16 - adds r1, r5, 0 - adds r2, r4, 0 - bl IsZCoordMismatchAt - lsls r0, 24 - cmp r0, 0 - beq _08060000 - movs r0, 0x3 - b _08060016 -_08060000: - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl CheckForCollisionBetweenFieldObjects - lsls r0, 24 - cmp r0, 0 - bne _08060014 - movs r0, 0 - b _08060016 -_08060014: - movs r0, 0x4 -_08060016: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end npc_block_way - - thumb_func_start sub_8060024 -sub_8060024: @ 8060024 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r7, r0, 0 - lsls r1, 16 - lsls r2, 16 - lsls r3, 24 - lsrs r3, 24 - mov r8, r3 - lsrs r0, r1, 16 - mov r9, r0 - asrs r6, r1, 16 - lsrs r0, r2, 16 - mov r10, r0 - asrs r5, r2, 16 - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl IsCoordOutsideFieldObjectMovementRect - lsls r0, 24 - lsrs r0, 24 - negs r1, r0 - orrs r1, r0 - lsrs r4, r1, 31 - adds r0, r6, 0 - adds r1, r5, 0 - bl MapGridIsImpassableAt - lsls r0, 24 - cmp r0, 0 - bne _0806009C - adds r0, r6, 0 - adds r1, r5, 0 - bl GetMapBorderIdAt - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _0806009C - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - mov r3, r8 - bl IsMetatileDirectionallyImpassable - lsls r0, 24 - cmp r0, 0 - bne _0806009C - ldrb r0, [r7, 0x1] - lsrs r0, 7 - cmp r0, 0 - beq _080600A0 - mov r0, r8 - bl CanCameraMoveInDirection - cmp r0, 0 - bne _080600A0 -_0806009C: - movs r0, 0x2 - orrs r4, r0 -_080600A0: - ldrb r0, [r7, 0xB] - lsls r0, 28 - lsrs r0, 28 - mov r2, r9 - lsls r1, r2, 16 - asrs r6, r1, 16 - mov r2, r10 - lsls r1, r2, 16 - asrs r5, r1, 16 - adds r1, r6, 0 - adds r2, r5, 0 - bl IsZCoordMismatchAt - lsls r0, 24 - cmp r0, 0 - beq _080600C8 - movs r0, 0x4 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080600C8: - adds r0, r7, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl CheckForCollisionBetweenFieldObjects - lsls r0, 24 - cmp r0, 0 - beq _080600E0 - movs r0, 0x8 - orrs r4, r0 - lsls r0, r4, 24 - lsrs r4, r0, 24 -_080600E0: - adds r0, r4, 0 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8060024 - - thumb_func_start IsCoordOutsideFieldObjectMovementRect -IsCoordOutsideFieldObjectMovementRect: @ 80600F0 - push {r4,r5,lr} - adds r4, r0, 0 - lsls r1, 16 - lsrs r3, r1, 16 - lsls r2, 16 - lsrs r5, r2, 16 - ldrb r1, [r4, 0x19] - movs r0, 0xF - ands r0, r1 - cmp r0, 0 - beq _08060128 - lsls r1, 28 - lsrs r2, r1, 28 - ldrh r0, [r4, 0xC] - subs r2, r0, r2 - lsrs r1, 28 - adds r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - lsls r2, 16 - lsls r0, r3, 16 - asrs r3, r0, 16 - cmp r2, r0 - bgt _08060154 - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, r3 - blt _08060154 -_08060128: - ldrb r1, [r4, 0x19] - movs r0, 0xF0 - ands r0, r1 - cmp r0, 0 - beq _08060158 - lsls r1, 24 - lsrs r2, r1, 28 - ldrh r0, [r4, 0xE] - subs r2, r0, r2 - lsrs r1, 28 - adds r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - lsls r2, 16 - lsls r0, r5, 16 - asrs r3, r0, 16 - cmp r2, r0 - bgt _08060154 - lsls r0, r1, 16 - asrs r0, 16 - cmp r0, r3 - bge _08060158 -_08060154: - movs r0, 0x1 - b _0806015A -_08060158: - movs r0, 0 -_0806015A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end IsCoordOutsideFieldObjectMovementRect - - thumb_func_start IsMetatileDirectionallyImpassable -IsMetatileDirectionallyImpassable: @ 8060160 - push {r4-r7,lr} - lsls r1, 16 - lsrs r6, r1, 16 - lsls r2, 16 - lsrs r7, r2, 16 - lsls r3, 24 - ldr r1, _080601A8 @ =gUnknown_08375684 - lsrs r3, 22 - subs r5, r3, 0x4 - adds r1, r5, r1 - ldrb r0, [r0, 0x1E] - ldr r1, [r1] - bl _call_via_r1 - lsls r0, 24 - cmp r0, 0 - bne _080601A2 - ldr r4, _080601AC @ =gUnknown_08375694 - adds r4, r5, r4 - lsls r0, r6, 16 - asrs r0, 16 - lsls r1, r7, 16 - asrs r1, 16 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - bl _call_via_r1 - lsls r0, 24 - cmp r0, 0 - beq _080601B0 -_080601A2: - movs r0, 0x1 - b _080601B2 - .align 2, 0 -_080601A8: .4byte gUnknown_08375684 -_080601AC: .4byte gUnknown_08375694 -_080601B0: - movs r0, 0 -_080601B2: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end IsMetatileDirectionallyImpassable - - thumb_func_start CheckForCollisionBetweenFieldObjects -CheckForCollisionBetweenFieldObjects: @ 80601B8 - push {r4-r7,lr} - adds r6, r0, 0 - lsls r1, 16 - lsrs r7, r1, 16 - movs r4, 0 - lsls r2, 16 - asrs r5, r2, 16 -_080601C6: - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 2 - ldr r1, _0806021C @ =gMapObjects - adds r2, r0, r1 - ldrb r0, [r2] - lsls r0, 31 - cmp r0, 0 - beq _08060220 - cmp r2, r6 - beq _08060220 - movs r0, 0x10 - ldrsh r1, [r2, r0] - lsls r0, r7, 16 - asrs r3, r0, 16 - cmp r1, r3 - bne _080601F0 - movs r1, 0x12 - ldrsh r0, [r2, r1] - cmp r0, r5 - beq _08060200 -_080601F0: - movs r1, 0x14 - ldrsh r0, [r2, r1] - cmp r0, r3 - bne _08060220 - movs r1, 0x16 - ldrsh r0, [r2, r1] - cmp r0, r5 - bne _08060220 -_08060200: - ldrb r0, [r6, 0xB] - lsls r0, 28 - lsrs r0, 28 - ldrb r1, [r2, 0xB] - lsls r1, 28 - lsrs r1, 28 - bl AreZCoordsCompatible - lsls r0, 24 - cmp r0, 0 - beq _08060220 - movs r0, 0x1 - b _0806022C - .align 2, 0 -_0806021C: .4byte gMapObjects -_08060220: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _080601C6 - movs r0, 0 -_0806022C: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end CheckForCollisionBetweenFieldObjects - - thumb_func_start sub_8060234 -sub_8060234: @ 8060234 - push {lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _08060280 - ldr r3, _08060278 @ =gSprites - ldr r2, _0806027C @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r1, [r0, 0x3C] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08060280 - movs r0, 0x1 - b _08060282 - .align 2, 0 -_08060278: .4byte gSprites -_0806027C: .4byte gMapObjects -_08060280: - movs r0, 0 -_08060282: - add sp, 0x4 - pop {r1} - bx r1 - thumb_func_end sub_8060234 - - thumb_func_start sub_8060288 -sub_8060288: @ 8060288 - push {lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r2, 24 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _080602C6 - ldr r3, _080602CC @ =gSprites - ldr r2, _080602D0 @ =gMapObjects - mov r0, sp - ldrb r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0, 0x4] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r3 - ldrh r2, [r1, 0x3C] - movs r0, 0x4 - orrs r0, r2 - strh r0, [r1, 0x3C] -_080602C6: - add sp, 0x4 - pop {r0} - bx r0 - .align 2, 0 -_080602CC: .4byte gSprites -_080602D0: .4byte gMapObjects - thumb_func_end sub_8060288 - - thumb_func_start MoveCoords -MoveCoords: @ 80602D4 - push {r4,lr} - lsls r0, 24 - ldr r3, _080602F4 @ =gDirectionToVector - lsrs r0, 22 - adds r0, r3 - ldrh r3, [r0] - ldrh r4, [r1] - adds r3, r4 - strh r3, [r1] - ldrh r0, [r0, 0x2] - ldrh r1, [r2] - adds r0, r1 - strh r0, [r2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080602F4: .4byte gDirectionToVector - thumb_func_end MoveCoords - - thumb_func_start unref_sub_80602F8 -unref_sub_80602F8: @ 80602F8 - push {r4,lr} - lsls r0, 24 - ldr r3, _0806031C @ =gDirectionToVector - lsrs r0, 22 - adds r0, r3 - ldrh r3, [r0] - lsls r3, 4 - ldrh r4, [r1] - adds r3, r4 - strh r3, [r1] - ldrh r0, [r0, 0x2] - lsls r0, 4 - ldrh r1, [r2] - adds r0, r1 - strh r0, [r2] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806031C: .4byte gDirectionToVector - thumb_func_end unref_sub_80602F8 - - thumb_func_start sub_8060320 -sub_8060320: @ 8060320 - push {r4-r7,lr} - adds r4, r1, 0 - ldr r1, [sp, 0x14] - lsls r0, 24 - lsls r3, 16 - lsrs r3, 16 - adds r7, r3, 0 - lsls r1, 16 - lsrs r6, r1, 16 - mov r12, r6 - ldr r1, _08060384 @ =gDirectionToVector - lsrs r0, 22 - adds r5, r0, r1 - movs r0, 0 - ldrsh r1, [r5, r0] - cmp r1, 0 - ble _0806034C - lsls r0, r3, 16 - asrs r0, 16 - ldrh r3, [r4] - adds r0, r3 - strh r0, [r4] -_0806034C: - cmp r1, 0 - bge _0806035A - ldrh r1, [r4] - lsls r0, r7, 16 - asrs r0, 16 - subs r1, r0 - strh r1, [r4] -_0806035A: - movs r0, 0x2 - ldrsh r1, [r5, r0] - cmp r1, 0 - ble _0806036C - lsls r0, r6, 16 - asrs r0, 16 - ldrh r3, [r2] - adds r0, r3 - strh r0, [r2] -_0806036C: - cmp r1, 0 - bge _0806037C - ldrh r1, [r2] - mov r3, r12 - lsls r0, r3, 16 - asrs r0, 16 - subs r1, r0 - strh r1, [r2] -_0806037C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08060384: .4byte gDirectionToVector - thumb_func_end sub_8060320 - - thumb_func_start sub_8060388 -sub_8060388: @ 8060388 - push {r4,r5,lr} - ldr r5, _080603C0 @ =gSaveBlock1 - ldrh r4, [r5] - lsls r0, 16 - asrs r0, 16 - subs r0, r4 - lsls r0, 4 - strh r0, [r2] - ldrh r0, [r5, 0x2] - lsls r1, 16 - asrs r1, 16 - subs r1, r0 - lsls r1, 4 - strh r1, [r3] - ldr r1, _080603C4 @ =gUnknown_0300489C - ldrh r0, [r2] - ldrh r1, [r1] - subs r0, r1 - strh r0, [r2] - ldr r1, _080603C8 @ =gUnknown_03004898 - ldrh r0, [r3] - ldrh r1, [r1] - subs r0, r1 - strh r0, [r3] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080603C0: .4byte gSaveBlock1 -_080603C4: .4byte gUnknown_0300489C -_080603C8: .4byte gUnknown_03004898 - thumb_func_end sub_8060388 - - thumb_func_start sub_80603CC -sub_80603CC: @ 80603CC - push {r4-r7,lr} - adds r7, r2, 0 - mov r12, r3 - lsls r0, 16 - lsrs r5, r0, 16 - lsls r1, 16 - lsrs r6, r1, 16 - ldr r0, _0806045C @ =gUnknown_0300489C - ldrh r0, [r0] - negs r0, r0 - ldr r1, _08060460 @ =gUnknown_03004880 - ldr r2, [r1, 0x10] - subs r0, r2 - lsls r0, 16 - lsrs r3, r0, 16 - ldr r0, _08060464 @ =gUnknown_03004898 - ldrh r0, [r0] - negs r0, r0 - ldr r1, [r1, 0x14] - subs r0, r1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r2, 0 - ble _08060406 - lsls r0, r3, 16 - movs r3, 0x80 - lsls r3, 13 - adds r0, r3 - lsrs r3, r0, 16 -_08060406: - cmp r2, 0 - bge _08060412 - lsls r0, r3, 16 - ldr r2, _08060468 @ =0xfff00000 - adds r0, r2 - lsrs r3, r0, 16 -_08060412: - cmp r1, 0 - ble _08060420 - lsls r0, r4, 16 - movs r2, 0x80 - lsls r2, 13 - adds r0, r2 - lsrs r4, r0, 16 -_08060420: - cmp r1, 0 - bge _0806042C - lsls r0, r4, 16 - ldr r1, _08060468 @ =0xfff00000 - adds r0, r1 - lsrs r4, r0, 16 -_0806042C: - ldr r2, _0806046C @ =gSaveBlock1 - ldrh r1, [r2] - lsls r0, r5, 16 - asrs r0, 16 - subs r0, r1 - lsls r0, 4 - lsls r1, r3, 16 - asrs r1, 16 - adds r1, r0 - strh r1, [r7] - ldrh r1, [r2, 0x2] - lsls r0, r6, 16 - asrs r0, 16 - subs r0, r1 - lsls r0, 4 - lsls r1, r4, 16 - asrs r1, 16 - adds r1, r0 - mov r2, r12 - strh r1, [r2] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806045C: .4byte gUnknown_0300489C -_08060460: .4byte gUnknown_03004880 -_08060464: .4byte gUnknown_03004898 -_08060468: .4byte 0xfff00000 -_0806046C: .4byte gSaveBlock1 - thumb_func_end sub_80603CC - - thumb_func_start sub_8060470 -sub_8060470: @ 8060470 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r6, r0, 0 - mov r8, r1 - adds r4, r2, 0 - adds r5, r3, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 16 - lsrs r5, 16 - movs r1, 0 - ldrsh r0, [r6, r1] - mov r2, r8 - movs r3, 0 - ldrsh r1, [r2, r3] - adds r2, r6, 0 - mov r3, r8 - bl sub_80603CC - lsls r4, 16 - asrs r4, 16 - ldrh r0, [r6] - adds r4, r0 - strh r4, [r6] - lsls r5, 16 - asrs r5, 16 - mov r1, r8 - ldrh r1, [r1] - adds r5, r1 - mov r2, r8 - strh r5, [r2] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8060470 - - thumb_func_start GetFieldObjectMovingCameraOffset -GetFieldObjectMovingCameraOffset: @ 80604BC - push {lr} - adds r2, r0, 0 - movs r0, 0 - strh r0, [r2] - strh r0, [r1] - ldr r3, _080604F8 @ =gUnknown_03004880 - ldr r0, [r3, 0x10] - cmp r0, 0 - ble _080604D2 - movs r0, 0x1 - strh r0, [r2] -_080604D2: - ldr r0, [r3, 0x10] - cmp r0, 0 - bge _080604DE - ldrh r0, [r2] - subs r0, 0x1 - strh r0, [r2] -_080604DE: - ldr r2, [r3, 0x14] - cmp r2, 0 - ble _080604EA - ldrh r0, [r1] - adds r0, 0x1 - strh r0, [r1] -_080604EA: - cmp r2, 0 - bge _080604F4 - ldrh r0, [r1] - subs r0, 0x1 - strh r0, [r1] -_080604F4: - pop {r0} - bx r0 - .align 2, 0 -_080604F8: .4byte gUnknown_03004880 - thumb_func_end GetFieldObjectMovingCameraOffset - - thumb_func_start FieldObjectMoveDestCoords -FieldObjectMoveDestCoords: @ 80604FC - push {r4,lr} - lsls r1, 24 - lsrs r1, 24 - ldrh r4, [r0, 0x10] - strh r4, [r2] - ldrh r0, [r0, 0x12] - strh r0, [r3] - adds r0, r1, 0 - adds r1, r2, 0 - adds r2, r3, 0 - bl MoveCoords - pop {r4} - pop {r0} - bx r0 - thumb_func_end FieldObjectMoveDestCoords - - thumb_func_start FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive -FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive: @ 806051C - push {lr} - ldrb r1, [r0] - movs r0, 0x42 - ands r0, r1 - cmp r0, 0 - bne _0806052C - movs r0, 0 - b _0806052E -_0806052C: - movs r0, 0x1 -_0806052E: - pop {r1} - bx r1 - thumb_func_end FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive - - thumb_func_start FieldObjectIsSpecialAnimActive -FieldObjectIsSpecialAnimActive: @ 8060534 - push {lr} - adds r1, r0, 0 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - bge _0806054A - ldrb r0, [r1, 0x1C] - cmp r0, 0xFF - beq _0806054A - movs r0, 0x1 - b _0806054C -_0806054A: - movs r0, 0 -_0806054C: - pop {r1} - bx r1 - thumb_func_end FieldObjectIsSpecialAnimActive - - thumb_func_start FieldObjectSetSpecialAnim -FieldObjectSetSpecialAnim: @ 8060550 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r1, 24 - lsrs r5, r1, 24 - bl FieldObjectIsSpecialAnimOrDirectionSequenceAnimActive - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _08060590 - adds r0, r4, 0 - bl UnfreezeMapObject - strb r5, [r4, 0x1C] - ldrb r0, [r4] - movs r1, 0x40 - orrs r0, r1 - movs r1, 0x7F - ands r0, r1 - strb r0, [r4] - ldr r2, _0806058C @ =gSprites - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - strh r6, [r0, 0x32] - movs r0, 0 - b _08060592 - .align 2, 0 -_0806058C: .4byte gSprites -_08060590: - movs r0, 0x1 -_08060592: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end FieldObjectSetSpecialAnim - - thumb_func_start FieldObjectForceSetSpecialAnim -FieldObjectForceSetSpecialAnim: @ 8060598 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - bl FieldObjectClearAnimIfSpecialAnimActive - adds r0, r5, 0 - adds r1, r4, 0 - bl FieldObjectSetSpecialAnim - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end FieldObjectForceSetSpecialAnim - - thumb_func_start FieldObjectClearAnimIfSpecialAnimActive -FieldObjectClearAnimIfSpecialAnimActive: @ 80605B4 - push {lr} - adds r1, r0, 0 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - bge _080605C6 - adds r0, r1, 0 - bl FieldObjectClearAnim -_080605C6: - pop {r0} - bx r0 - thumb_func_end FieldObjectClearAnimIfSpecialAnimActive - - thumb_func_start FieldObjectClearAnim -FieldObjectClearAnim: @ 80605CC - movs r1, 0xFF - strb r1, [r0, 0x1C] - ldrb r2, [r0] - movs r1, 0x41 - negs r1, r1 - ands r1, r2 - movs r2, 0x7F - ands r1, r2 - strb r1, [r0] - ldr r3, _080605FC @ =gSprites - ldrb r2, [r0, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - movs r2, 0 - strh r2, [r1, 0x30] - ldrb r1, [r0, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - strh r2, [r0, 0x32] - bx lr - .align 2, 0 -_080605FC: .4byte gSprites - thumb_func_end FieldObjectClearAnim - - thumb_func_start FieldObjectCheckIfSpecialAnimFinishedOrInactive -FieldObjectCheckIfSpecialAnimFinishedOrInactive: @ 8060600 - push {lr} - ldrb r1, [r0] - lsls r0, r1, 25 - cmp r0, 0 - blt _0806060E - movs r0, 0x10 - b _08060610 -_0806060E: - lsrs r0, r1, 7 -_08060610: - pop {r1} - bx r1 - thumb_func_end FieldObjectCheckIfSpecialAnimFinishedOrInactive - - thumb_func_start FieldObjectClearAnimIfSpecialAnimFinished -FieldObjectClearAnimIfSpecialAnimFinished: @ 8060614 - push {r4,r5,lr} - adds r5, r0, 0 - bl FieldObjectCheckIfSpecialAnimFinishedOrInactive - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - beq _0806062E - cmp r4, 0x10 - beq _0806062E - adds r0, r5, 0 - bl FieldObjectClearAnimIfSpecialAnimActive -_0806062E: - adds r0, r4, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end FieldObjectClearAnimIfSpecialAnimFinished - - thumb_func_start FieldObjectGetSpecialAnim -FieldObjectGetSpecialAnim: @ 8060638 - push {lr} - adds r1, r0, 0 - ldrb r0, [r1] - lsls r0, 25 - cmp r0, 0 - blt _08060648 - movs r0, 0xFF - b _0806064A -_08060648: - ldrb r0, [r1, 0x1C] -_0806064A: - pop {r1} - bx r1 - thumb_func_end FieldObjectGetSpecialAnim - - thumb_func_start meta_step -meta_step: @ 8060650 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - bl DoGroundEffects_OnSpawn - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80634A0 - adds r0, r4, 0 - bl FieldObjectIsSpecialAnimActive - lsls r0, 24 - cmp r0, 0 - beq _0806067A - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectExecSpecialAnim - b _08060690 -_0806067A: - ldrb r0, [r4, 0x1] - lsls r0, 31 - cmp r0, 0 - bne _08060690 -_08060682: - adds r0, r4, 0 - adds r1, r5, 0 - bl _call_via_r6 - lsls r0, 24 - cmp r0, 0 - bne _08060682 -_08060690: - adds r0, r4, 0 - adds r1, r5, 0 - bl DoGroundEffects_OnBeginStep - adds r0, r4, 0 - adds r1, r5, 0 - bl DoGroundEffects_OnFinishStep - adds r0, r4, 0 - adds r1, r5, 0 - bl npc_obj_transfer_image_anim_pause_flag - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80634D0 - adds r0, r4, 0 - adds r1, r5, 0 - bl FieldObjectUpdateSubpriority - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end meta_step - - thumb_func_start GetFaceDirectionAnimId -GetFaceDirectionAnimId: @ 80606C0 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080606E8 @ =gUnknown_083756C8 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _080606D8 - movs r4, 0 -_080606D8: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080606E8: .4byte gUnknown_083756C8 - thumb_func_end GetFaceDirectionAnimId - - thumb_func_start GetSimpleGoAnimId -GetSimpleGoAnimId: @ 80606EC - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060714 @ =gUnknown_083756CD - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060704 - movs r4, 0 -_08060704: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060714: .4byte gUnknown_083756CD - thumb_func_end GetSimpleGoAnimId - - thumb_func_start GetGoSpeed0AnimId -GetGoSpeed0AnimId: @ 8060718 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060740 @ =gUnknown_083756D2 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060730 - movs r4, 0 -_08060730: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060740: .4byte gUnknown_083756D2 - thumb_func_end GetGoSpeed0AnimId - - thumb_func_start sub_8060744 -sub_8060744: @ 8060744 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _0806076C @ =gUnknown_083756D7 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _0806075C - movs r4, 0 -_0806075C: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0806076C: .4byte gUnknown_083756D7 - thumb_func_end sub_8060744 - - thumb_func_start d2s_08064034 -d2s_08064034: @ 8060770 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060798 @ =gUnknown_083756DC - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060788 - movs r4, 0 -_08060788: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060798: .4byte gUnknown_083756DC - thumb_func_end d2s_08064034 - - thumb_func_start sub_806079C -sub_806079C: @ 806079C - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080607C4 @ =gUnknown_083756E1 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _080607B4 - movs r4, 0 -_080607B4: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080607C4: .4byte gUnknown_083756E1 - thumb_func_end sub_806079C - - thumb_func_start sub_80607C8 -sub_80607C8: @ 80607C8 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080607F0 @ =gUnknown_083756E6 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _080607E0 - movs r4, 0 -_080607E0: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080607F0: .4byte gUnknown_083756E6 - thumb_func_end sub_80607C8 - - thumb_func_start sub_80607F4 -sub_80607F4: @ 80607F4 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _0806081C @ =gUnknown_083756EB - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _0806080C - movs r4, 0 -_0806080C: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0806081C: .4byte gUnknown_083756EB - thumb_func_end sub_80607F4 - - thumb_func_start GetJumpLedgeAnimId -GetJumpLedgeAnimId: @ 8060820 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060848 @ =gUnknown_083756F0 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060838 - movs r4, 0 -_08060838: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060848: .4byte gUnknown_083756F0 - thumb_func_end GetJumpLedgeAnimId - - thumb_func_start sub_806084C -sub_806084C: @ 806084C - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060874 @ =gUnknown_083756F5 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060864 - movs r4, 0 -_08060864: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060874: .4byte gUnknown_083756F5 - thumb_func_end sub_806084C - - thumb_func_start sub_8060878 -sub_8060878: @ 8060878 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080608A0 @ =gUnknown_083756FA - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060890 - movs r4, 0 -_08060890: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080608A0: .4byte gUnknown_083756FA - thumb_func_end sub_8060878 - - thumb_func_start sub_80608A4 -sub_80608A4: @ 80608A4 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080608CC @ =gUnknown_083756FF - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _080608BC - movs r4, 0 -_080608BC: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080608CC: .4byte gUnknown_083756FF - thumb_func_end sub_80608A4 - - thumb_func_start sub_80608D0 -sub_80608D0: @ 80608D0 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080608F8 @ =gUnknown_08375704 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _080608E8 - movs r4, 0 -_080608E8: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080608F8: .4byte gUnknown_08375704 - thumb_func_end sub_80608D0 - - thumb_func_start GetStepInPlaceDelay32AnimId -GetStepInPlaceDelay32AnimId: @ 80608FC - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060924 @ =gUnknown_08375709 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060914 - movs r4, 0 -_08060914: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060924: .4byte gUnknown_08375709 - thumb_func_end GetStepInPlaceDelay32AnimId - - thumb_func_start GetStepInPlaceDelay16AnimId -GetStepInPlaceDelay16AnimId: @ 8060928 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060950 @ =gUnknown_0837570E - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060940 - movs r4, 0 -_08060940: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060950: .4byte gUnknown_0837570E - thumb_func_end GetStepInPlaceDelay16AnimId - - thumb_func_start GetStepInPlaceDelay8AnimId -GetStepInPlaceDelay8AnimId: @ 8060954 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _0806097C @ =gUnknown_08375713 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _0806096C - movs r4, 0 -_0806096C: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0806097C: .4byte gUnknown_08375713 - thumb_func_end GetStepInPlaceDelay8AnimId - - thumb_func_start GetStepInPlaceDelay4AnimId -GetStepInPlaceDelay4AnimId: @ 8060980 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080609A8 @ =gUnknown_08375718 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060998 - movs r4, 0 -_08060998: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080609A8: .4byte gUnknown_08375718 - thumb_func_end GetStepInPlaceDelay4AnimId - - thumb_func_start FieldObjectFaceOppositeDirection -FieldObjectFaceOppositeDirection: @ 80609AC - push {r4,lr} - adds r4, r0, 0 - lsls r0, r1, 24 - lsrs r0, 24 - bl GetOppositeDirection - lsls r0, 24 - lsrs r0, 24 - bl GetFaceDirectionAnimId - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldObjectSetSpecialAnim - lsls r0, 24 - lsrs r0, 24 - pop {r4} - pop {r1} - bx r1 - thumb_func_end FieldObjectFaceOppositeDirection - - thumb_func_start sub_80609D8 -sub_80609D8: @ 80609D8 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060A00 @ =gUnknown_0837571D - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _080609F0 - movs r4, 0 -_080609F0: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060A00: .4byte gUnknown_0837571D - thumb_func_end sub_80609D8 - - thumb_func_start sub_8060A04 -sub_8060A04: @ 8060A04 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060A2C @ =gUnknown_08375722 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060A1C - movs r4, 0 -_08060A1C: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060A2C: .4byte gUnknown_08375722 - thumb_func_end sub_8060A04 - - thumb_func_start sub_8060A30 -sub_8060A30: @ 8060A30 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060A58 @ =gUnknown_08375727 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060A48 - movs r4, 0 -_08060A48: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060A58: .4byte gUnknown_08375727 - thumb_func_end sub_8060A30 - - thumb_func_start sub_8060A5C -sub_8060A5C: @ 8060A5C - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060A84 @ =gUnknown_0837572C - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060A74 - movs r4, 0 -_08060A74: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060A84: .4byte gUnknown_0837572C - thumb_func_end sub_8060A5C - - thumb_func_start sub_8060A88 -sub_8060A88: @ 8060A88 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060AB0 @ =gUnknown_08375731 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060AA0 - movs r4, 0 -_08060AA0: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060AB0: .4byte gUnknown_08375731 - thumb_func_end sub_8060A88 - - thumb_func_start sub_8060AB4 -sub_8060AB4: @ 8060AB4 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060ADC @ =gUnknown_08375736 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060ACC - movs r4, 0 -_08060ACC: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060ADC: .4byte gUnknown_08375736 - thumb_func_end sub_8060AB4 - - thumb_func_start sub_8060AE0 -sub_8060AE0: @ 8060AE0 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060B08 @ =gUnknown_0837573B - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060AF8 - movs r4, 0 -_08060AF8: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060B08: .4byte gUnknown_0837573B - thumb_func_end sub_8060AE0 - - thumb_func_start sub_8060B0C -sub_8060B0C: @ 8060B0C - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060B34 @ =gUnknown_08375740 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060B24 - movs r4, 0 -_08060B24: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060B34: .4byte gUnknown_08375740 - thumb_func_end sub_8060B0C - - thumb_func_start sub_8060B38 -sub_8060B38: @ 8060B38 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060B60 @ =gUnknown_08375745 - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060B50 - movs r4, 0 -_08060B50: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060B60: .4byte gUnknown_08375745 - thumb_func_end sub_8060B38 - - thumb_func_start sub_8060B64 -sub_8060B64: @ 8060B64 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060B8C @ =gUnknown_0837574A - mov r0, sp - movs r2, 0x5 - bl memcpy - cmp r4, 0x4 - bls _08060B7C - movs r4, 0 -_08060B7C: - mov r1, sp - adds r0, r1, r4 - ldrb r0, [r0] - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060B8C: .4byte gUnknown_0837574A - thumb_func_end sub_8060B64 - - thumb_func_start GetOppositeDirection -GetOppositeDirection: @ 8060B90 - push {r4,lr} - sub sp, 0x8 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _08060BB4 @ =gUnknown_0837574F - mov r0, sp - movs r2, 0x8 - bl memcpy - subs r1, r4, 0x1 - lsls r0, r1, 24 - lsrs r0, 24 - cmp r0, 0x7 - bhi _08060BB8 - mov r2, sp - adds r0, r2, r1 - ldrb r0, [r0] - b _08060BBA - .align 2, 0 -_08060BB4: .4byte gUnknown_0837574F -_08060BB8: - adds r0, r4, 0 -_08060BBA: - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetOppositeDirection - - thumb_func_start zffu_offset_calc -zffu_offset_calc: @ 8060BC4 - lsls r0, 24 - lsls r1, 24 - lsrs r1, 24 - ldr r2, _08060BD8 @ =gUnknown_08375757 - lsrs r0, 22 - subs r0, 0x5 - adds r1, r0 - adds r1, r2 - ldrb r0, [r1] - bx lr - .align 2, 0 -_08060BD8: .4byte gUnknown_08375757 - thumb_func_end zffu_offset_calc - - thumb_func_start state_to_direction -state_to_direction: @ 8060BDC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r0, r1, 0 - lsls r2, 24 - lsrs r2, 24 - cmp r1, 0 - beq _08060BFC - cmp r2, 0 - beq _08060BFC - cmp r1, 0x4 - bhi _08060BFC - cmp r2, 0x4 - bls _08060C00 -_08060BFC: - movs r0, 0 - b _08060C12 -_08060C00: - adds r1, r2, 0 - bl zffu_offset_calc - ldr r2, _08060C18 @ =gUnknown_08375767 - lsls r1, r4, 2 - subs r1, 0x5 - adds r0, r1 - adds r0, r2 - ldrb r0, [r0] -_08060C12: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08060C18: .4byte gUnknown_08375767 - thumb_func_end state_to_direction - - thumb_func_start FieldObjectExecSpecialAnim -FieldObjectExecSpecialAnim: @ 8060C1C - push {r4,lr} - adds r4, r0, 0 - ldr r2, _08060C50 @ =gUnknown_08375778 - ldrb r0, [r4, 0x1C] - lsls r0, 2 - adds r0, r2 - movs r3, 0x32 - ldrsh r2, [r1, r3] - ldr r0, [r0] - lsls r2, 2 - adds r2, r0 - ldr r2, [r2] - adds r0, r4, 0 - bl _call_via_r2 - lsls r0, 24 - cmp r0, 0 - beq _08060C48 - ldrb r0, [r4] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r4] -_08060C48: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08060C50: .4byte gUnknown_08375778 - thumb_func_end FieldObjectExecSpecialAnim - - thumb_func_start FieldObjectExecRegularAnim -FieldObjectExecRegularAnim: @ 8060C54 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldr r1, _08060C80 @ =gUnknown_08375778 - ldrb r0, [r4, 0x1C] - lsls r0, 2 - adds r0, r1 - movs r2, 0x32 - ldrsh r1, [r5, r2] - ldr r0, [r0] - lsls r1, 2 - adds r1, r0 - ldr r2, [r1] - adds r0, r4, 0 - adds r1, r5, 0 - bl _call_via_r2 - lsls r0, 24 - cmp r0, 0 - bne _08060C84 - movs r0, 0 - b _08060C8E - .align 2, 0 -_08060C80: .4byte gUnknown_08375778 -_08060C84: - movs r0, 0xFF - strb r0, [r4, 0x1C] - movs r0, 0 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08060C8E: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end FieldObjectExecRegularAnim - - thumb_func_start FieldObjectSetRegularAnim -FieldObjectSetRegularAnim: @ 8060C94 - movs r3, 0 - strb r2, [r0, 0x1C] - strh r3, [r1, 0x32] - bx lr - thumb_func_end FieldObjectSetRegularAnim - - thumb_func_start an_look_any -an_look_any: @ 8060C9C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r1, r2, 24 - lsrs r1, 24 - bl FieldObjectSetDirection - adds r0, r4, 0 - bl npc_coords_shift_still - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl get_go_image_anim_num - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805FE64 - adds r2, r5, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 - strh r0, [r5, 0x32] - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end an_look_any - - thumb_func_start sub_8060CE0 -sub_8060CE0: @ 8060CE0 - push {lr} - movs r2, 0x1 - bl an_look_any - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8060CE0 - - thumb_func_start sub_8060CF0 -sub_8060CF0: @ 8060CF0 - push {lr} - movs r2, 0x2 - bl an_look_any - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8060CF0 - - thumb_func_start sub_8060D00 -sub_8060D00: @ 8060D00 - push {lr} - movs r2, 0x3 - bl an_look_any - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8060D00 - - thumb_func_start sub_8060D10 -sub_8060D10: @ 8060D10 - push {lr} - movs r2, 0x4 - bl an_look_any - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_8060D10 - - thumb_func_start sub_8060D20 -sub_8060D20: @ 8060D20 - push {r4-r6,lr} - mov r6, r9 - mov r5, r8 - push {r5,r6} - sub sp, 0x4 - mov r8, r0 - mov r9, r1 - adds r4, r2, 0 - adds r6, r3, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r6, 24 - lsrs r6, 24 - ldrh r1, [r0, 0x10] - mov r0, sp - strh r1, [r0] - mov r1, r8 - ldrh r0, [r1, 0x12] - mov r5, sp - adds r5, 0x2 - strh r0, [r5] - mov r0, r8 - adds r1, r4, 0 - bl FieldObjectSetDirection - adds r0, r4, 0 - mov r1, sp - adds r2, r5, 0 - bl MoveCoords - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r5, r0] - mov r0, r8 - bl npc_coords_shift - mov r0, r9 - adds r1, r4, 0 - adds r2, r6, 0 - bl oamt_npc_ministep_reset - mov r2, r9 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - mov r1, r8 - ldrb r0, [r1] - movs r1, 0x4 - orrs r0, r1 - mov r2, r8 - strb r0, [r2] - movs r0, 0x1 - mov r1, r9 - strh r0, [r1, 0x32] - add sp, 0x4 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8060D20 - - thumb_func_start do_go_anim -do_go_anim: @ 8060DA4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r5, r0, 0 - mov r8, r1 - adds r4, r3, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r4, 24 - lsrs r4, 24 - mov r1, sp - ldr r0, _08060DFC @ =gUnknown_083759C0 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6} - stm r1!, {r3,r6} - adds r0, r5, 0 - mov r1, r8 - adds r3, r4, 0 - bl sub_8060D20 - lsls r4, 2 - mov r7, sp - adds r1, r7, r4 - ldrb r0, [r5, 0x18] - lsls r0, 28 - lsrs r0, 28 - ldr r1, [r1] - bl _call_via_r1 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - mov r1, r8 - bl sub_805FE28 - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08060DFC: .4byte gUnknown_083759C0 - thumb_func_end do_go_anim - - thumb_func_start do_run_anim -do_run_anim: @ 8060E00 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - movs r3, 0x1 - bl sub_8060D20 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl get_run_image_anim_num - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805FE28 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end do_run_anim - - thumb_func_start npc_obj_ministep_stop_on_arrival -npc_obj_ministep_stop_on_arrival: @ 8060E30 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl obj_npc_ministep - lsls r0, 24 - cmp r0, 0 - bne _08060E46 - movs r0, 0 - b _08060E62 -_08060E46: - adds r0, r4, 0 - bl npc_coords_shift_still - ldrb r0, [r4] - movs r1, 0x8 - orrs r0, r1 - strb r0, [r4] - adds r2, r5, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 -_08060E62: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end npc_obj_ministep_stop_on_arrival - - thumb_func_start sub_8060E68 -sub_8060E68: @ 8060E68 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0x4 - adds r6, r0, 0 - mov r8, r1 - lsls r5, r2, 24 - lsrs r5, 24 - ldrh r1, [r6, 0x10] - mov r0, sp - strh r1, [r0] - ldrh r0, [r6, 0x12] - mov r4, sp - adds r4, 0x2 - strh r0, [r4] - adds r0, r6, 0 - adds r1, r5, 0 - bl FieldObjectSetDirection - adds r0, r5, 0 - mov r1, sp - adds r2, r4, 0 - bl MoveCoords - mov r0, sp - movs r2, 0 - ldrsh r1, [r0, r2] - movs r0, 0 - ldrsh r2, [r4, r0] - adds r0, r6, 0 - bl npc_coords_shift - mov r0, r8 - adds r1, r5, 0 - bl sub_806467C - mov r2, r8 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - ldrb r0, [r6] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r6] - movs r0, 0x1 - mov r1, r8 - strh r0, [r1, 0x32] - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8060E68 - - thumb_func_start sub_8060ED8 -sub_8060ED8: @ 8060ED8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - bl sub_8060E68 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl get_go_image_anim_num - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805FE28 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8060ED8 - - thumb_func_start an_walk_any_2 -an_walk_any_2: @ 8060F04 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r0, r5, 0 - bl sub_806468C - lsls r0, 24 - cmp r0, 0 - bne _08060F1A - movs r0, 0 - b _08060F36 -_08060F1A: - adds r0, r4, 0 - bl npc_coords_shift_still - ldrb r0, [r4] - movs r1, 0x8 - orrs r0, r1 - strb r0, [r4] - adds r2, r5, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 -_08060F36: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end an_walk_any_2 - - thumb_func_start sub_8060F3C -sub_8060F3C: @ 8060F3C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8060ED8 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8060F5C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8060F3C - - thumb_func_start sub_8060F5C -sub_8060F5C: @ 8060F5C - push {r4,lr} - adds r4, r1, 0 - bl an_walk_any_2 - lsls r0, 24 - cmp r0, 0 - bne _08060F6E - movs r0, 0 - b _08060F74 -_08060F6E: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08060F74: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8060F5C - - thumb_func_start sub_8060F7C -sub_8060F7C: @ 8060F7C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - bl sub_8060ED8 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8060F9C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8060F7C - - thumb_func_start sub_8060F9C -sub_8060F9C: @ 8060F9C - push {r4,lr} - adds r4, r1, 0 - bl an_walk_any_2 - lsls r0, 24 - cmp r0, 0 - bne _08060FAE - movs r0, 0 - b _08060FB4 -_08060FAE: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08060FB4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8060F9C - - thumb_func_start sub_8060FBC -sub_8060FBC: @ 8060FBC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - bl sub_8060ED8 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8060FDC - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8060FBC - - thumb_func_start sub_8060FDC -sub_8060FDC: @ 8060FDC - push {r4,lr} - adds r4, r1, 0 - bl an_walk_any_2 - lsls r0, 24 - cmp r0, 0 - bne _08060FEE - movs r0, 0 - b _08060FF4 -_08060FEE: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08060FF4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8060FDC - - thumb_func_start sub_8060FFC -sub_8060FFC: @ 8060FFC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_8060ED8 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806101C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8060FFC - - thumb_func_start sub_806101C -sub_806101C: @ 806101C - push {r4,lr} - adds r4, r1, 0 - bl an_walk_any_2 - lsls r0, 24 - cmp r0, 0 - bne _0806102E - movs r0, 0 - b _08061034 -_0806102E: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061034: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806101C - - thumb_func_start sub_806103C -sub_806103C: @ 806103C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806105C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806103C - - thumb_func_start sub_806105C -sub_806105C: @ 806105C - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806106E - movs r0, 0 - b _08061074 -_0806106E: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061074: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806105C - - thumb_func_start sub_806107C -sub_806107C: @ 806107C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806109C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806107C - - thumb_func_start sub_806109C -sub_806109C: @ 806109C - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080610AE - movs r0, 0 - b _080610B4 -_080610AE: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080610B4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806109C - - thumb_func_start sub_80610BC -sub_80610BC: @ 80610BC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80610DC - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80610BC - - thumb_func_start sub_80610DC -sub_80610DC: @ 80610DC - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080610EE - movs r0, 0 - b _080610F4 -_080610EE: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080610F4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80610DC - - thumb_func_start sub_80610FC -sub_80610FC: @ 80610FC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806111C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80610FC - - thumb_func_start sub_806111C -sub_806111C: @ 806111C - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806112E - movs r0, 0 - b _08061134 -_0806112E: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061134: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806111C - - thumb_func_start sub_806113C -sub_806113C: @ 806113C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r7, r0, 0 - mov r10, r1 - adds r4, r2, 0 - mov r8, r3 - ldr r0, [sp, 0x30] - lsls r4, 24 - lsrs r4, 24 - mov r1, r8 - lsls r1, 24 - lsrs r1, 24 - mov r8, r1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r1, _080611F4 @ =gUnknown_08375A34 - add r0, sp, 0x4 - movs r2, 0x6 - bl memcpy - add r5, sp, 0xC - movs r0, 0 - strh r0, [r5] - mov r6, sp - adds r6, 0xE - strh r0, [r6] - adds r0, r7, 0 - adds r1, r4, 0 - bl FieldObjectSetDirection - mov r1, r8 - lsls r0, r1, 1 - add r0, sp - adds r0, 0x4 - movs r1, 0 - ldrsh r3, [r0, r1] - str r3, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_8060320 - ldrh r1, [r5] - ldrh r0, [r7, 0x10] - adds r1, r0 - lsls r1, 16 - asrs r1, 16 - ldrh r2, [r6] - ldrh r0, [r7, 0x12] - adds r2, r0 - lsls r2, 16 - asrs r2, 16 - adds r0, r7, 0 - bl npc_coords_shift - mov r0, r10 - adds r1, r4, 0 - mov r2, r8 - mov r3, r9 - bl sub_80646E4 - movs r0, 0x1 - mov r1, r10 - strh r0, [r1, 0x32] - movs r0, 0x2C - add r10, r0 - mov r0, r10 - ldrb r1, [r0] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - mov r1, r10 - strb r0, [r1] - ldrb r0, [r7] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r7] - 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 -_080611F4: .4byte gUnknown_08375A34 - thumb_func_end sub_806113C - - thumb_func_start maybe_shadow_1 -maybe_shadow_1: @ 80611F8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, [sp, 0x10] - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r0, r4, 0 - bl sub_806113C - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl get_go_image_anim_num - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805FE28 - adds r0, r4, 0 - bl DoShadowFieldEffect - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end maybe_shadow_1 - - thumb_func_start sub_806123C -sub_806123C: @ 806123C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x10 - adds r6, r0, 0 - adds r7, r1, 0 - adds r4, r2, 0 - ldr r1, _080612C8 @ =gUnknown_08375A3A - add r0, sp, 0x4 - movs r2, 0x6 - bl memcpy - adds r0, r7, 0 - bl _call_via_r4 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - cmp r0, 0x1 - bne _080612CC - movs r1, 0x36 - ldrsh r0, [r7, r1] - lsls r0, 1 - add r0, sp - adds r0, 0x4 - movs r2, 0 - ldrsh r0, [r0, r2] - cmp r0, 0 - beq _080612CC - add r4, sp, 0xC - movs r0, 0 - strh r0, [r4] - mov r5, sp - adds r5, 0xE - strh r0, [r5] - ldrb r0, [r6, 0x18] - lsrs r0, 4 - movs r2, 0x36 - ldrsh r1, [r7, r2] - lsls r1, 1 - add r1, sp - adds r1, 0x4 - movs r2, 0 - ldrsh r3, [r1, r2] - str r3, [sp] - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_8060320 - ldrh r1, [r4] - ldrh r0, [r6, 0x10] - adds r1, r0 - lsls r1, 16 - asrs r1, 16 - ldrh r2, [r5] - ldrh r0, [r6, 0x12] - adds r2, r0 - lsls r2, 16 - asrs r2, 16 - adds r0, r6, 0 - bl npc_coords_shift - ldrb r0, [r6] - movs r1, 0x4 - orrs r0, r1 - movs r1, 0x10 - orrs r0, r1 - strb r0, [r6] - b _080612F0 - .align 2, 0 -_080612C8: .4byte gUnknown_08375A3A -_080612CC: - mov r1, r8 - cmp r1, 0xFF - bne _080612F0 - adds r0, r6, 0 - bl npc_coords_shift_still - ldrb r0, [r6] - movs r1, 0x8 - orrs r0, r1 - movs r1, 0x20 - orrs r0, r1 - strb r0, [r6] - adds r2, r7, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] -_080612F0: - mov r0, r8 - add sp, 0x10 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_806123C - - thumb_func_start sub_8061300 -sub_8061300: @ 8061300 - push {lr} - ldr r2, _08061310 @ =sub_8064704 - bl sub_806123C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_08061310: .4byte sub_8064704 - thumb_func_end sub_8061300 - - thumb_func_start sub_8061314 -sub_8061314: @ 8061314 - push {lr} - ldr r2, _08061324 @ =sub_806478C - bl sub_806123C - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - .align 2, 0 -_08061324: .4byte sub_806478C - thumb_func_end sub_8061314 - - thumb_func_start sub_8061328 -sub_8061328: @ 8061328 - push {lr} - bl sub_8061300 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _0806133A - movs r0, 0 - b _0806133C -_0806133A: - movs r0, 0x1 -_0806133C: - pop {r1} - bx r1 - thumb_func_end sub_8061328 - - thumb_func_start sub_8061340 -sub_8061340: @ 8061340 - push {lr} - bl sub_8061314 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _08061352 - movs r0, 0 - b _08061354 -_08061352: - movs r0, 0x1 -_08061354: - pop {r1} - bx r1 - thumb_func_end sub_8061340 - - thumb_func_start sub_8061358 -sub_8061358: @ 8061358 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061300 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08061372 - cmp r0, 0xFF - bne _0806139E - movs r0, 0x1 - b _080613A0 -_08061372: - ldrb r0, [r4, 0x18] - lsrs r0, 4 - bl GetOppositeDirection - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl FieldObjectSetDirection - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl get_go_image_anim_num - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805FE64 -_0806139E: - movs r0, 0 -_080613A0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061358 - - thumb_func_start sub_80613A8 -sub_80613A8: @ 80613A8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x2 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80613D4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80613A8 - - thumb_func_start sub_80613D4 -sub_80613D4: @ 80613D4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _080613E8 - movs r0, 0 - b _080613F8 -_080613E8: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080613F8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80613D4 - - thumb_func_start sub_8061400 -sub_8061400: @ 8061400 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806142C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061400 - - thumb_func_start sub_806142C -sub_806142C: @ 806142C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08061440 - movs r0, 0 - b _08061450 -_08061440: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08061450: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806142C - - thumb_func_start sub_8061458 -sub_8061458: @ 8061458 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0x2 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061484 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061458 - - thumb_func_start sub_8061484 -sub_8061484: @ 8061484 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08061498 - movs r0, 0 - b _080614A8 -_08061498: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080614A8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061484 - - thumb_func_start sub_80614B0 -sub_80614B0: @ 80614B0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0x2 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80614DC - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80614B0 - - thumb_func_start sub_80614DC -sub_80614DC: @ 80614DC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _080614F0 - movs r0, 0 - b _08061500 -_080614F0: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08061500: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80614DC - - thumb_func_start sub_8061508 -sub_8061508: @ 8061508 - movs r2, 0x1 - strh r2, [r0, 0x32] - strh r1, [r0, 0x34] - bx lr - thumb_func_end sub_8061508 - - thumb_func_start sub_8061510 -sub_8061510: @ 8061510 - push {lr} - ldrh r0, [r1, 0x34] - subs r0, 0x1 - strh r0, [r1, 0x34] - lsls r0, 16 - cmp r0, 0 - beq _08061522 - movs r0, 0 - b _08061528 -_08061522: - movs r0, 0x2 - strh r0, [r1, 0x32] - movs r0, 0x1 -_08061528: - pop {r1} - bx r1 - thumb_func_end sub_8061510 - - thumb_func_start sub_806152C -sub_806152C: @ 806152C - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_8061508 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8061510 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806152C - - thumb_func_start sub_806154C -sub_806154C: @ 806154C - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x2 - bl sub_8061508 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8061510 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806154C - - thumb_func_start sub_806156C -sub_806156C: @ 806156C - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x4 - bl sub_8061508 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8061510 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806156C - - thumb_func_start sub_806158C -sub_806158C: @ 806158C - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x8 - bl sub_8061508 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8061510 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806158C - - thumb_func_start sub_80615AC -sub_80615AC: @ 80615AC - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x10 - bl sub_8061508 - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8061510 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80615AC - - thumb_func_start sub_80615CC -sub_80615CC: @ 80615CC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80615EC - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80615CC - - thumb_func_start sub_80615EC -sub_80615EC: @ 80615EC - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080615FE - movs r0, 0 - b _08061604 -_080615FE: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061604: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80615EC - - thumb_func_start sub_806160C -sub_806160C: @ 806160C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806162C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806160C - - thumb_func_start sub_806162C -sub_806162C: @ 806162C - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806163E - movs r0, 0 - b _08061644 -_0806163E: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061644: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806162C - - thumb_func_start sub_806164C -sub_806164C: @ 806164C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806166C - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806164C - - thumb_func_start sub_806166C -sub_806166C: @ 806166C - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806167E - movs r0, 0 - b _08061684 -_0806167E: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061684: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806166C - - thumb_func_start sub_806168C -sub_806168C: @ 806168C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x1 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80616AC - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806168C - - thumb_func_start sub_80616AC -sub_80616AC: @ 80616AC - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080616BE - movs r0, 0 - b _080616C4 -_080616BE: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080616C4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80616AC - - thumb_func_start sub_80616CC -sub_80616CC: @ 80616CC - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - adds r6, r1, 0 - adds r1, r2, 0 - adds r4, r3, 0 - ldr r5, [sp, 0x14] - lsls r1, 24 - lsrs r1, 24 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 16 - lsrs r5, 16 - bl FieldObjectSetDirection - mov r0, r8 - adds r1, r6, 0 - adds r2, r4, 0 - bl sub_805FE28 - adds r2, r6, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - movs r0, 0x1 - strh r0, [r6, 0x32] - strh r5, [r6, 0x34] - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80616CC - - thumb_func_start sub_8061714 -sub_8061714: @ 8061714 - push {lr} - ldrh r0, [r1, 0x34] - subs r0, 0x1 - strh r0, [r1, 0x34] - lsls r0, 16 - cmp r0, 0 - beq _08061726 - movs r0, 0 - b _08061738 -_08061726: - movs r0, 0x2 - strh r0, [r1, 0x32] - adds r2, r1, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 -_08061738: - pop {r1} - bx r1 - thumb_func_end sub_8061714 - - thumb_func_start sub_806173C -sub_806173C: @ 806173C - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrh r1, [r4, 0x34] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _08061766 - adds r3, r4, 0 - adds r3, 0x2C - ldrb r2, [r3] - lsls r1, r2, 26 - lsrs r1, 26 - adds r1, 0x1 - movs r0, 0x3F - ands r1, r0 - movs r0, 0x40 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r3] -_08061766: - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806173C - - thumb_func_start sub_8061778 -sub_8061778: @ 8061778 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x20 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806173C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061778 - - thumb_func_start sub_80617B0 -sub_80617B0: @ 80617B0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x20 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806173C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80617B0 - - thumb_func_start sub_80617E8 -sub_80617E8: @ 80617E8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x20 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806173C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80617E8 - - thumb_func_start sub_8061820 -sub_8061820: @ 8061820 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x20 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806173C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061820 - - thumb_func_start sub_8061858 -sub_8061858: @ 8061858 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x10 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061858 - - thumb_func_start sub_8061890 -sub_8061890: @ 8061890 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x10 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061890 - - thumb_func_start sub_80618C8 -sub_80618C8: @ 80618C8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x10 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80618C8 - - thumb_func_start sub_8061900 -sub_8061900: @ 8061900 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl get_go_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x10 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061900 - - thumb_func_start sub_8061938 -sub_8061938: @ 8061938 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl get_go_fast_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061938 - - thumb_func_start sub_8061970 -sub_8061970: @ 8061970 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl get_go_fast_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061970 - - thumb_func_start sub_80619A8 -sub_80619A8: @ 80619A8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl get_go_fast_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80619A8 - - thumb_func_start sub_80619E0 -sub_80619E0: @ 80619E0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl get_go_fast_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80619E0 - - thumb_func_start sub_8061A18 -sub_8061A18: @ 8061A18 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl get_go_faster_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x4 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061A18 - - thumb_func_start sub_8061A50 -sub_8061A50: @ 8061A50 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl get_go_faster_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x4 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061A50 - - thumb_func_start sub_8061A88 -sub_8061A88: @ 8061A88 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl get_go_faster_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x4 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061A88 - - thumb_func_start sub_8061AC0 -sub_8061AC0: @ 8061AC0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl get_go_faster_image_anim_num - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x4 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061AC0 - - thumb_func_start sub_8061AF8 -sub_8061AF8: @ 8061AF8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x2 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061B18 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061AF8 - - thumb_func_start sub_8061B18 -sub_8061B18: @ 8061B18 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061B2A - movs r0, 0 - b _08061B30 -_08061B2A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061B30: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061B18 - - thumb_func_start sub_8061B38 -sub_8061B38: @ 8061B38 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x2 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061B58 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061B38 - - thumb_func_start sub_8061B58 -sub_8061B58: @ 8061B58 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061B6A - movs r0, 0 - b _08061B70 -_08061B6A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061B70: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061B58 - - thumb_func_start sub_8061B78 -sub_8061B78: @ 8061B78 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x2 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061B98 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061B78 - - thumb_func_start sub_8061B98 -sub_8061B98: @ 8061B98 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061BAA - movs r0, 0 - b _08061BB0 -_08061BAA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061BB0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061B98 - - thumb_func_start sub_8061BB8 -sub_8061BB8: @ 8061BB8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x2 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061BD8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061BB8 - - thumb_func_start sub_8061BD8 -sub_8061BD8: @ 8061BD8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061BEA - movs r0, 0 - b _08061BF0 -_08061BEA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061BF0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061BD8 - - thumb_func_start sub_8061BF8 -sub_8061BF8: @ 8061BF8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x3 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061C18 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061BF8 - - thumb_func_start sub_8061C18 -sub_8061C18: @ 8061C18 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061C2A - movs r0, 0 - b _08061C30 -_08061C2A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061C30: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061C18 - - thumb_func_start sub_8061C38 -sub_8061C38: @ 8061C38 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x3 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061C58 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061C38 - - thumb_func_start sub_8061C58 -sub_8061C58: @ 8061C58 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061C6A - movs r0, 0 - b _08061C70 -_08061C6A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061C70: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061C58 - - thumb_func_start sub_8061C78 -sub_8061C78: @ 8061C78 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x3 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061C98 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061C78 - - thumb_func_start sub_8061C98 -sub_8061C98: @ 8061C98 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061CAA - movs r0, 0 - b _08061CB0 -_08061CAA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061CB0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061C98 - - thumb_func_start sub_8061CB8 -sub_8061CB8: @ 8061CB8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x3 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061CD8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061CB8 - - thumb_func_start sub_8061CD8 -sub_8061CD8: @ 8061CD8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061CEA - movs r0, 0 - b _08061CF0 -_08061CEA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061CF0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061CD8 - - thumb_func_start sub_8061CF8 -sub_8061CF8: @ 8061CF8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x4 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061D18 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061CF8 - - thumb_func_start sub_8061D18 -sub_8061D18: @ 8061D18 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061D2A - movs r0, 0 - b _08061D30 -_08061D2A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061D30: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061D18 - - thumb_func_start sub_8061D38 -sub_8061D38: @ 8061D38 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x4 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061D58 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061D38 - - thumb_func_start sub_8061D58 -sub_8061D58: @ 8061D58 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061D6A - movs r0, 0 - b _08061D70 -_08061D6A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061D70: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061D58 - - thumb_func_start sub_8061D78 -sub_8061D78: @ 8061D78 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x4 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061D98 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061D78 - - thumb_func_start sub_8061D98 -sub_8061D98: @ 8061D98 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061DAA - movs r0, 0 - b _08061DB0 -_08061DAA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061DB0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061D98 - - thumb_func_start sub_8061DB8 -sub_8061DB8: @ 8061DB8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x4 - bl do_go_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061DD8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061DB8 - - thumb_func_start sub_8061DD8 -sub_8061DD8: @ 8061DD8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061DEA - movs r0, 0 - b _08061DF0 -_08061DEA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061DF0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061DD8 - - thumb_func_start do_run_south_anim -do_run_south_anim: @ 8061DF8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl do_run_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061E18 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end do_run_south_anim - - thumb_func_start sub_8061E18 -sub_8061E18: @ 8061E18 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061E2A - movs r0, 0 - b _08061E30 -_08061E2A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061E30: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061E18 - - thumb_func_start do_run_north_anim -do_run_north_anim: @ 8061E38 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - bl do_run_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061E58 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end do_run_north_anim - - thumb_func_start sub_8061E58 -sub_8061E58: @ 8061E58 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061E6A - movs r0, 0 - b _08061E70 -_08061E6A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061E70: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061E58 - - thumb_func_start do_run_west_anim -do_run_west_anim: @ 8061E78 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - bl do_run_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061E98 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end do_run_west_anim - - thumb_func_start sub_8061E98 -sub_8061E98: @ 8061E98 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061EAA - movs r0, 0 - b _08061EB0 -_08061EAA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061EB0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061E98 - - thumb_func_start do_run_east_anim -do_run_east_anim: @ 8061EB8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl do_run_anim - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061ED8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end do_run_east_anim - - thumb_func_start sub_8061ED8 -sub_8061ED8: @ 8061ED8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08061EEA - movs r0, 0 - b _08061EF0 -_08061EEA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061EF0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061ED8 - - thumb_func_start npc_set_direction_and_anim__an_proceed -npc_set_direction_and_anim__an_proceed: @ 8061EF8 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - adds r1, r3, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - movs r2, 0 - bl obj_anim_image_set_and_seek - adds r0, r6, 0 - adds r1, r4, 0 - bl FieldObjectSetDirection - movs r0, 0x1 - strh r0, [r5, 0x32] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end npc_set_direction_and_anim__an_proceed - - thumb_func_start sub_8061F24 -sub_8061F24: @ 8061F24 - push {lr} - ldrb r2, [r0, 0x18] - lsrs r2, 4 - adds r3, r1, 0 - adds r3, 0x2A - ldrb r3, [r3] - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_8061F24 - - thumb_func_start sub_8061F3C -sub_8061F3C: @ 8061F3C - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_8064864 - lsls r0, 24 - cmp r0, 0 - bne _08061F50 - movs r0, 0 - b _08061F56 -_08061F50: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08061F56: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8061F3C - - thumb_func_start sub_8061F5C -sub_8061F5C: @ 8061F5C - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r1, 0 - lsls r4, r2, 24 - lsrs r4, 24 - movs r1, 0 - str r1, [sp] - adds r1, r5, 0 - adds r2, r4, 0 - movs r3, 0x1 - bl sub_806113C - adds r0, r4, 0 - bl sub_805FD88 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnim - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8061F5C - - thumb_func_start sub_8061F90 -sub_8061F90: @ 8061F90 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - bl sub_8061F5C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061FB0 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061F90 - - thumb_func_start sub_8061FB0 -sub_8061FB0: @ 8061FB0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061340 - lsls r0, 24 - cmp r0, 0 - bne _08061FC4 - movs r0, 0 - b _08061FD2 -_08061FC4: - movs r0, 0x2 - strh r0, [r5, 0x32] - ldrb r1, [r4] - subs r0, 0x23 - ands r0, r1 - strb r0, [r4] - movs r0, 0x1 -_08061FD2: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061FB0 - - thumb_func_start sub_8061FD8 -sub_8061FD8: @ 8061FD8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - bl sub_8061F5C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061FF8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061FD8 - - thumb_func_start sub_8061FF8 -sub_8061FF8: @ 8061FF8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061340 - lsls r0, 24 - cmp r0, 0 - bne _0806200C - movs r0, 0 - b _0806201A -_0806200C: - movs r0, 0x2 - strh r0, [r5, 0x32] - ldrb r1, [r4] - subs r0, 0x23 - ands r0, r1 - strb r0, [r4] - movs r0, 0x1 -_0806201A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8061FF8 - - thumb_func_start sub_8062020 -sub_8062020: @ 8062020 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - bl sub_8061F5C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062040 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062020 - - thumb_func_start sub_8062040 -sub_8062040: @ 8062040 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061340 - lsls r0, 24 - cmp r0, 0 - bne _08062054 - movs r0, 0 - b _08062062 -_08062054: - movs r0, 0x2 - strh r0, [r5, 0x32] - ldrb r1, [r4] - subs r0, 0x23 - ands r0, r1 - strb r0, [r4] - movs r0, 0x1 -_08062062: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062040 - - thumb_func_start sub_8062068 -sub_8062068: @ 8062068 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl sub_8061F5C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062088 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062068 - - thumb_func_start sub_8062088 -sub_8062088: @ 8062088 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061340 - lsls r0, 24 - cmp r0, 0 - bne _0806209C - movs r0, 0 - b _080620AA -_0806209C: - movs r0, 0x2 - strh r0, [r5, 0x32] - ldrb r1, [r4] - subs r0, 0x23 - ands r0, r1 - strb r0, [r4] - movs r0, 0x1 -_080620AA: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062088 - - thumb_func_start sub_80620B0 -sub_80620B0: @ 80620B0 - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r0, 0xFF - movs r1, 0 - movs r2, 0 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _080620FA - movs r1, 0x10 - ldrsh r0, [r5, r1] - movs r2, 0x12 - ldrsh r1, [r5, r2] - ldr r4, _08062108 @ =gMapObjects - mov r2, sp - ldrb r2, [r2] - lsls r3, r2, 3 - adds r3, r2 - lsls r3, 2 - adds r3, r4 - movs r4, 0x10 - ldrsh r2, [r3, r4] - movs r4, 0x12 - ldrsh r3, [r3, r4] - bl sub_805FE90 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - adds r1, r6, 0 - bl an_look_any -_080620FA: - movs r0, 0x1 - strh r0, [r6, 0x32] - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08062108: .4byte gMapObjects - thumb_func_end sub_80620B0 - - thumb_func_start sub_806210C -sub_806210C: @ 806210C - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r6, r1, 0 - movs r0, 0xFF - movs r1, 0 - movs r2, 0 - mov r3, sp - bl TryGetFieldObjectIdByLocalIdAndMap - lsls r0, 24 - cmp r0, 0 - bne _0806215E - movs r1, 0x10 - ldrsh r0, [r5, r1] - movs r2, 0x12 - ldrsh r1, [r5, r2] - ldr r4, _0806216C @ =gMapObjects - mov r2, sp - ldrb r2, [r2] - lsls r3, r2, 3 - adds r3, r2 - lsls r3, 2 - adds r3, r4 - movs r4, 0x10 - ldrsh r2, [r3, r4] - movs r4, 0x12 - ldrsh r3, [r3, r4] - bl sub_805FE90 - lsls r0, 24 - lsrs r0, 24 - bl GetOppositeDirection - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - adds r1, r6, 0 - bl an_look_any -_0806215E: - movs r0, 0x1 - strh r0, [r6, 0x32] - add sp, 0x4 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0806216C: .4byte gMapObjects - thumb_func_end sub_806210C - - thumb_func_start sub_8062170 -sub_8062170: @ 8062170 - ldrb r2, [r0, 0x1] - movs r3, 0x2 - orrs r2, r3 - strb r2, [r0, 0x1] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_8062170 - - thumb_func_start sub_8062180 -sub_8062180: @ 8062180 - ldrb r3, [r0, 0x1] - movs r2, 0x3 - negs r2, r2 - ands r2, r3 - strb r2, [r0, 0x1] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_8062180 - - thumb_func_start sub_8062190 -sub_8062190: @ 8062190 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x1 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80621BC - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062190 - - thumb_func_start sub_80621BC -sub_80621BC: @ 80621BC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _080621D0 - movs r0, 0 - b _080621E0 -_080621D0: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080621E0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80621BC - - thumb_func_start sub_80621E8 -sub_80621E8: @ 80621E8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x1 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062214 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80621E8 - - thumb_func_start sub_8062214 -sub_8062214: @ 8062214 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062228 - movs r0, 0 - b _08062238 -_08062228: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062238: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062214 - - thumb_func_start sub_8062240 -sub_8062240: @ 8062240 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0x1 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806226C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062240 - - thumb_func_start sub_806226C -sub_806226C: @ 806226C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062280 - movs r0, 0 - b _08062290 -_08062280: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062290: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806226C - - thumb_func_start sub_8062298 -sub_8062298: @ 8062298 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0x1 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80622C4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062298 - - thumb_func_start sub_80622C4 -sub_80622C4: @ 80622C4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _080622D8 - movs r0, 0 - b _080622E8 -_080622D8: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080622E8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80622C4 - - thumb_func_start sub_80622F0 -sub_80622F0: @ 80622F0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806231C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80622F0 - - thumb_func_start sub_806231C -sub_806231C: @ 806231C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062330 - movs r0, 0 - b _08062340 -_08062330: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062340: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806231C - - thumb_func_start sub_8062348 -sub_8062348: @ 8062348 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062374 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062348 - - thumb_func_start sub_8062374 -sub_8062374: @ 8062374 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062388 - movs r0, 0 - b _08062398 -_08062388: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062398: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062374 - - thumb_func_start sub_80623A0 -sub_80623A0: @ 80623A0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80623CC - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80623A0 - - thumb_func_start sub_80623CC -sub_80623CC: @ 80623CC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _080623E0 - movs r0, 0 - b _080623F0 -_080623E0: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080623F0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80623CC - - thumb_func_start sub_80623F8 -sub_80623F8: @ 80623F8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062424 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80623F8 - - thumb_func_start sub_8062424 -sub_8062424: @ 8062424 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062438 - movs r0, 0 - b _08062448 -_08062438: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062448: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062424 - - thumb_func_start sub_8062450 -sub_8062450: @ 8062450 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806247C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062450 - - thumb_func_start sub_806247C -sub_806247C: @ 806247C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061358 - lsls r0, 24 - cmp r0, 0 - bne _08062490 - movs r0, 0 - b _080624A0 -_08062490: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080624A0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806247C - - thumb_func_start sub_80624A8 -sub_80624A8: @ 80624A8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80624D4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80624A8 - - thumb_func_start sub_80624D4 -sub_80624D4: @ 80624D4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061358 - lsls r0, 24 - cmp r0, 0 - bne _080624E8 - movs r0, 0 - b _080624F8 -_080624E8: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080624F8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80624D4 - - thumb_func_start sub_8062500 -sub_8062500: @ 8062500 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806252C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062500 - - thumb_func_start sub_806252C -sub_806252C: @ 806252C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061358 - lsls r0, 24 - cmp r0, 0 - bne _08062540 - movs r0, 0 - b _08062550 -_08062540: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062550: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806252C - - thumb_func_start sub_8062558 -sub_8062558: @ 8062558 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0 - bl maybe_shadow_1 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062584 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062558 - - thumb_func_start sub_8062584 -sub_8062584: @ 8062584 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061358 - lsls r0, 24 - cmp r0, 0 - bne _08062598 - movs r0, 0 - b _080625A8 -_08062598: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080625A8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062584 - - thumb_func_start sub_80625B0 -sub_80625B0: @ 80625B0 - push {lr} - ldr r3, _080625C4 @ =gUnknown_0836DC09 - ldrb r2, [r0, 0x6] - adds r2, r3 - ldrb r2, [r2] - bl an_look_any - movs r0, 0x1 - pop {r1} - bx r1 - .align 2, 0 -_080625C4: .4byte gUnknown_0836DC09 - thumb_func_end sub_80625B0 - - thumb_func_start sub_80625C8 -sub_80625C8: @ 80625C8 - push {lr} - movs r2, 0x1 - movs r3, 0x14 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r1} - bx r1 - thumb_func_end sub_80625C8 - - thumb_func_start sub_80625D8 -sub_80625D8: @ 80625D8 - ldrb r3, [r0, 0x3] - movs r2, 0x3 - negs r2, r2 - ands r2, r3 - strb r2, [r0, 0x3] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_80625D8 - - thumb_func_start sub_80625E8 -sub_80625E8: @ 80625E8 - ldrb r2, [r0, 0x3] - movs r3, 0x2 - orrs r2, r3 - strb r2, [r0, 0x3] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_80625E8 - - thumb_func_start sub_80625F8 -sub_80625F8: @ 80625F8 - ldrb r2, [r0, 0x1] - movs r3, 0x10 - orrs r2, r3 - strb r2, [r0, 0x1] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_80625F8 - - thumb_func_start sub_8062608 -sub_8062608: @ 8062608 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x5] - bl GetFieldObjectGraphicsInfo - ldrb r1, [r0, 0xC] - lsls r1, 25 - lsrs r1, 31 - lsls r1, 4 - ldrb r2, [r4, 0x1] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x1] - movs r0, 0x1 - strh r0, [r5, 0x32] - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062608 - - thumb_func_start sub_8062634 -sub_8062634: @ 8062634 - ldrb r2, [r0, 0x1] - movs r3, 0x20 - orrs r2, r3 - strb r2, [r0, 0x1] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_8062634 - - thumb_func_start sub_8062644 -sub_8062644: @ 8062644 - ldrb r3, [r0, 0x1] - movs r2, 0x21 - negs r2, r2 - ands r2, r3 - strb r2, [r0, 0x1] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_8062644 - - thumb_func_start do_exclamation_mark_bubble_1 -do_exclamation_mark_bubble_1: @ 8062654 - push {r4,lr} - adds r4, r1, 0 - ldr r1, _08062674 @ =gUnknown_0202FF84 - adds r2, r1, 0x4 - adds r3, r1, 0 - adds r3, 0x8 - bl FieldObjectGetLocalIdAndMap - movs r0, 0 - bl FieldEffectStart - movs r0, 0x1 - strh r0, [r4, 0x32] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08062674: .4byte gUnknown_0202FF84 - thumb_func_end do_exclamation_mark_bubble_1 - - thumb_func_start do_exclamation_mark_bubble_2 -do_exclamation_mark_bubble_2: @ 8062678 - push {r4,lr} - adds r4, r1, 0 - ldr r1, _08062698 @ =gUnknown_0202FF84 - adds r2, r1, 0x4 - adds r3, r1, 0 - adds r3, 0x8 - bl FieldObjectGetLocalIdAndMap - movs r0, 0x21 - bl FieldEffectStart - movs r0, 0x1 - strh r0, [r4, 0x32] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_08062698: .4byte gUnknown_0202FF84 - thumb_func_end do_exclamation_mark_bubble_2 - - thumb_func_start do_heart_bubble -do_heart_bubble: @ 806269C - push {r4,lr} - adds r4, r1, 0 - ldr r1, _080626BC @ =gUnknown_0202FF84 - adds r2, r1, 0x4 - adds r3, r1, 0 - adds r3, 0x8 - bl FieldObjectGetLocalIdAndMap - movs r0, 0x2E - bl FieldEffectStart - movs r0, 0x1 - strh r0, [r4, 0x32] - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080626BC: .4byte gUnknown_0202FF84 - thumb_func_end do_heart_bubble - - thumb_func_start sub_80626C0 -sub_80626C0: @ 80626C0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r0, [r4, 0x6] - cmp r0, 0x3F - bne _080626D6 - adds r0, r4, 0 - bl sub_8084794 - movs r0, 0 - b _080626FE -_080626D6: - subs r0, 0x39 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _080626F8 - adds r0, r4, 0 - bl sub_812869C - movs r0, 0x1 - strh r0, [r5, 0x32] - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062704 - lsls r0, 24 - lsrs r0, 24 - b _080626FE -_080626F8: - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_080626FE: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80626C0 - - thumb_func_start sub_8062704 -sub_8062704: @ 8062704 - push {r4,lr} - adds r4, r1, 0 - bl sub_81286C4 - lsls r0, 24 - cmp r0, 0 - bne _08062716 - movs r0, 0 - b _0806271C -_08062716: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_0806271C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8062704 - - thumb_func_start sub_8062724 -sub_8062724: @ 8062724 - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0 - bl obj_anim_image_set_and_seek - movs r0, 0x1 - strh r0, [r4, 0x32] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8062724 - - thumb_func_start sub_8062740 -sub_8062740: @ 8062740 - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_8064864 - lsls r0, 24 - cmp r0, 0 - beq _0806275C - adds r0, r4, 0 - movs r1, 0x20 - bl sub_8064820 - movs r0, 0x2 - strh r0, [r4, 0x32] -_0806275C: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8062740 - - thumb_func_start sub_8062764 -sub_8062764: @ 8062764 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r2, [r4, 0x1] - lsls r1, r2, 26 - lsrs r1, 31 - movs r0, 0x1 - eors r1, r0 - lsls r1, 5 - subs r0, 0x22 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - beq _08062796 - ldrb r0, [r4, 0x1] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r4, 0x1] - movs r0, 0x3 - strh r0, [r5, 0x32] -_08062796: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062764 - - thumb_func_start sub_80627A0 -sub_80627A0: @ 80627A0 - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0 - bl obj_anim_image_set_and_seek - movs r0, 0x1 - strh r0, [r4, 0x32] - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80627A0 - - thumb_func_start sub_80627BC -sub_80627BC: @ 80627BC - push {r4,lr} - adds r4, r1, 0 - adds r0, r4, 0 - bl sub_8064864 - lsls r0, 24 - cmp r0, 0 - beq _080627D8 - adds r0, r4, 0 - movs r1, 0x20 - bl sub_8064820 - movs r0, 0x2 - strh r0, [r4, 0x32] -_080627D8: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80627BC - - thumb_func_start sub_80627E0 -sub_80627E0: @ 80627E0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - ldrb r2, [r4, 0x1] - lsls r1, r2, 26 - lsrs r1, 31 - movs r0, 0x1 - eors r1, r0 - lsls r1, 5 - subs r0, 0x22 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r0, r5, 0 - bl sub_8064824 - lsls r0, 24 - cmp r0, 0 - beq _08062812 - ldrb r0, [r4, 0x1] - movs r1, 0x20 - orrs r0, r1 - strb r0, [r4, 0x1] - movs r0, 0x3 - strh r0, [r5, 0x32] -_08062812: - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80627E0 - - thumb_func_start sub_806281C -sub_806281C: @ 806281C - ldrb r2, [r0, 0x3] - movs r3, 0x4 - orrs r2, r3 - strb r2, [r0, 0x3] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_806281C - - thumb_func_start sub_806282C -sub_806282C: @ 806282C - ldrb r3, [r0, 0x3] - movs r2, 0x5 - negs r2, r2 - ands r2, r3 - strb r2, [r0, 0x3] - movs r0, 0x1 - strh r0, [r1, 0x32] - bx lr - thumb_func_end sub_806282C - - thumb_func_start sub_806283C -sub_806283C: @ 806283C - push {r4,lr} - adds r4, r1, 0 - ldrb r0, [r4, 0x1] - movs r1, 0x3 - orrs r0, r1 - strb r0, [r4, 0x1] - adds r0, r4, 0 - bl InitSpriteAffineAnim - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - adds r4, 0x42 - ldrb r1, [r4] - movs r0, 0x3F - ands r0, r1 - strb r0, [r4] - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806283C - - thumb_func_start sub_806286C -sub_806286C: @ 806286C - push {r4,lr} - adds r4, r1, 0 - ldrb r0, [r4, 0x3] - lsls r0, 26 - lsrs r0, 27 - bl FreeOamMatrix - ldrb r0, [r4, 0x1] - movs r1, 0x4 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x1] - lsrs r1, 6 - ldrb r2, [r4, 0x3] - lsrs r2, 6 - movs r3, 0 - adds r0, r4, 0 - bl CalcCenterToCornerVec - movs r0, 0x1 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_806286C - - thumb_func_start sub_806289C -sub_806289C: @ 806289C - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8060ED8 - adds r2, r4, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2] - adds r0, r4, 0 - movs r1, 0 - bl StartSpriteAffineAnimIfDifferent - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_80628D0 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_806289C - - thumb_func_start sub_80628D0 -sub_80628D0: @ 80628D0 - push {r4,lr} - adds r4, r1, 0 - bl an_walk_any_2 - lsls r0, 24 - cmp r0, 0 - bne _080628E2 - movs r0, 0 - b _080628F4 -_080628E2: - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080628F4: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80628D0 - - thumb_func_start sub_80628FC -sub_80628FC: @ 80628FC - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x1 - bl sub_8060ED8 - adds r2, r4, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2] - adds r0, r4, 0 - movs r1, 0x1 - bl ChangeSpriteAffineAnimIfDifferent - adds r0, r5, 0 - adds r1, r4, 0 - bl sub_8062930 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80628FC - - thumb_func_start sub_8062930 -sub_8062930: @ 8062930 - push {r4,lr} - adds r4, r1, 0 - bl an_walk_any_2 - lsls r0, 24 - cmp r0, 0 - bne _08062942 - movs r0, 0 - b _08062954 -_08062942: - adds r2, r4, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08062954: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8062930 - - thumb_func_start sub_806295C -sub_806295C: @ 806295C - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r4, r2, 24 - lsrs r4, 24 - adds r1, r4, 0 - bl FieldObjectSetDirection - adds r0, r5, 0 - bl npc_coords_shift_still - adds r0, r4, 0 - bl sub_805FDD8 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - adds r1, r6, 0 - bl sub_805FE64 - adds r2, r6, 0 - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - movs r0, 0x1 - strh r0, [r6, 0x32] - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_806295C - - thumb_func_start sub_806299C -sub_806299C: @ 806299C - push {lr} - movs r2, 0x1 - bl sub_806295C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_806299C - - thumb_func_start sub_80629AC -sub_80629AC: @ 80629AC - push {lr} - movs r2, 0x2 - bl sub_806295C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80629AC - - thumb_func_start sub_80629BC -sub_80629BC: @ 80629BC - push {lr} - movs r2, 0x3 - bl sub_806295C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80629BC - - thumb_func_start sub_80629CC -sub_80629CC: @ 80629CC - push {lr} - movs r2, 0x4 - bl sub_806295C - movs r0, 0x1 - pop {r1} - bx r1 - thumb_func_end sub_80629CC - - thumb_func_start sub_80629DC -sub_80629DC: @ 80629DC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl sub_805FD98 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80629DC - - thumb_func_start sub_8062A00 -sub_8062A00: @ 8062A00 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl sub_805FD98 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062A00 - - thumb_func_start sub_8062A24 -sub_8062A24: @ 8062A24 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl sub_805FD98 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062A24 - - thumb_func_start sub_8062A48 -sub_8062A48: @ 8062A48 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl sub_805FD98 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062A48 - - thumb_func_start sub_8062A6C -sub_8062A6C: @ 8062A6C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl sub_805FDB8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062A6C - - thumb_func_start sub_8062A90 -sub_8062A90: @ 8062A90 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl sub_805FDB8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062A90 - - thumb_func_start sub_8062AB4 -sub_8062AB4: @ 8062AB4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl sub_805FDB8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062AB4 - - thumb_func_start sub_8062AD8 -sub_8062AD8: @ 8062AD8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl sub_805FDB8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062AD8 - - thumb_func_start sub_8062AFC -sub_8062AFC: @ 8062AFC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl sub_805FDC8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062AFC - - thumb_func_start sub_8062B20 -sub_8062B20: @ 8062B20 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl sub_805FDC8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062B20 - - thumb_func_start sub_8062B44 -sub_8062B44: @ 8062B44 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl sub_805FDC8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062B44 - - thumb_func_start sub_8062B68 -sub_8062B68: @ 8062B68 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl sub_805FDC8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl npc_set_direction_and_anim__an_proceed - movs r0, 0 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062B68 - - thumb_func_start sub_8062B8C -sub_8062B8C: @ 8062B8C - push {r4-r6,lr} - sub sp, 0x4 - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - ldr r0, [sp, 0x14] - lsls r4, 24 - lsrs r4, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp] - adds r0, r6, 0 - adds r2, r4, 0 - bl sub_806113C - adds r0, r4, 0 - bl sub_805FD98 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl StartSpriteAnimIfDifferent - adds r0, r6, 0 - bl DoShadowFieldEffect - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8062B8C - - thumb_func_start sub_8062BD0 -sub_8062BD0: @ 8062BD0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062BFC - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062BD0 - - thumb_func_start sub_8062BFC -sub_8062BFC: @ 8062BFC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062C10 - movs r0, 0 - b _08062C20 -_08062C10: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062C20: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062BFC - - thumb_func_start sub_8062C28 -sub_8062C28: @ 8062C28 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062C54 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062C28 - - thumb_func_start sub_8062C54 -sub_8062C54: @ 8062C54 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062C68 - movs r0, 0 - b _08062C78 -_08062C68: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062C78: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062C54 - - thumb_func_start sub_8062C80 -sub_8062C80: @ 8062C80 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062CAC - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062C80 - - thumb_func_start sub_8062CAC -sub_8062CAC: @ 8062CAC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062CC0 - movs r0, 0 - b _08062CD0 -_08062CC0: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062CD0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062CAC - - thumb_func_start sub_8062CD8 -sub_8062CD8: @ 8062CD8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062D04 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062CD8 - - thumb_func_start sub_8062D04 -sub_8062D04: @ 8062D04 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062D18 - movs r0, 0 - b _08062D28 -_08062D18: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062D28: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062D04 - - thumb_func_start sub_8062D30 -sub_8062D30: @ 8062D30 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062D5C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062D30 - - thumb_func_start sub_8062D5C -sub_8062D5C: @ 8062D5C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062D70 - movs r0, 0 - b _08062D80 -_08062D70: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062D80: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062D5C - - thumb_func_start sub_8062D88 -sub_8062D88: @ 8062D88 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062DB4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062D88 - - thumb_func_start sub_8062DB4 -sub_8062DB4: @ 8062DB4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062DC8 - movs r0, 0 - b _08062DD8 -_08062DC8: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062DD8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062DB4 - - thumb_func_start sub_8062DE0 -sub_8062DE0: @ 8062DE0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062E0C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062DE0 - - thumb_func_start sub_8062E0C -sub_8062E0C: @ 8062E0C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062E20 - movs r0, 0 - b _08062E30 -_08062E20: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062E30: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062E0C - - thumb_func_start sub_8062E38 -sub_8062E38: @ 8062E38 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0x1 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062E64 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062E38 - - thumb_func_start sub_8062E64 -sub_8062E64: @ 8062E64 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062E78 - movs r0, 0 - b _08062E88 -_08062E78: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062E88: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062E64 - - thumb_func_start sub_8062E90 -sub_8062E90: @ 8062E90 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x1 - movs r3, 0x2 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062EBC - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062E90 - - thumb_func_start sub_8062EBC -sub_8062EBC: @ 8062EBC - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062ED0 - movs r0, 0 - b _08062EE0 -_08062ED0: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062EE0: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062EBC - - thumb_func_start sub_8062EE8 -sub_8062EE8: @ 8062EE8 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062F14 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062EE8 - - thumb_func_start sub_8062F14 -sub_8062F14: @ 8062F14 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062F28 - movs r0, 0 - b _08062F38 -_08062F28: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062F38: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062F14 - - thumb_func_start sub_8062F40 -sub_8062F40: @ 8062F40 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x3 - movs r3, 0x2 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062F6C - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062F40 - - thumb_func_start sub_8062F6C -sub_8062F6C: @ 8062F6C - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062F80 - movs r0, 0 - b _08062F90 -_08062F80: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062F90: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062F6C - - thumb_func_start sub_8062F98 -sub_8062F98: @ 8062F98 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0 - str r0, [sp] - adds r0, r4, 0 - movs r2, 0x4 - movs r3, 0x2 - bl sub_8062B8C - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8062FC4 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062F98 - - thumb_func_start sub_8062FC4 -sub_8062FC4: @ 8062FC4 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_8061328 - lsls r0, 24 - cmp r0, 0 - bne _08062FD8 - movs r0, 0 - b _08062FE8 -_08062FD8: - ldrb r0, [r4, 0x2] - movs r1, 0x41 - negs r1, r1 - ands r1, r0 - strb r1, [r4, 0x2] - movs r0, 0x2 - strh r0, [r5, 0x32] - movs r0, 0x1 -_08062FE8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062FC4 - - thumb_func_start sub_8062FF0 -sub_8062FF0: @ 8062FF0 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x1 - bl sub_805FDD8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x1 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8062FF0 - - thumb_func_start sub_8063028 -sub_8063028: @ 8063028 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x2 - bl sub_805FDD8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063028 - - thumb_func_start sub_8063060 -sub_8063060: @ 8063060 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x3 - bl sub_805FDD8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x3 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063060 - - thumb_func_start sub_8063098 -sub_8063098: @ 8063098 - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r0, 0x4 - bl sub_805FDD8 - adds r3, r0, 0 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x8 - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_80616CC - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8061714 - lsls r0, 24 - lsrs r0, 24 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063098 - - thumb_func_start sub_80630D0 -sub_80630D0: @ 80630D0 - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - bl sub_8060D20 - ldrb r0, [r5, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl sub_805FD98 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - adds r0, r4, 0 - movs r1, 0 - bl SeekSpriteAnim - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80630D0 - - thumb_func_start sub_8063108 -sub_8063108: @ 8063108 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_80630D0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063128 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063108 - - thumb_func_start sub_8063128 -sub_8063128: @ 8063128 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806313A - movs r0, 0 - b _08063140 -_0806313A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063140: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063128 - - thumb_func_start sub_8063148 -sub_8063148: @ 8063148 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80630D0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063168 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063148 - - thumb_func_start sub_8063168 -sub_8063168: @ 8063168 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806317A - movs r0, 0 - b _08063180 -_0806317A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063180: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063168 - - thumb_func_start sub_8063188 -sub_8063188: @ 8063188 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_80630D0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80631A8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063188 - - thumb_func_start sub_80631A8 -sub_80631A8: @ 80631A8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080631BA - movs r0, 0 - b _080631C0 -_080631BA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080631C0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80631A8 - - thumb_func_start sub_80631C8 -sub_80631C8: @ 80631C8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x1 - bl sub_80630D0 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80631E8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80631C8 - - thumb_func_start sub_80631E8 -sub_80631E8: @ 80631E8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080631FA - movs r0, 0 - b _08063200 -_080631FA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063200: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80631E8 - - thumb_func_start sub_8063208 -sub_8063208: @ 8063208 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - bl sub_8060D20 - ldrb r0, [r4, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl sub_805FDD8 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_805FE28 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8063208 - - thumb_func_start sub_8063238 -sub_8063238: @ 8063238 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8063208 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063258 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063238 - - thumb_func_start sub_8063258 -sub_8063258: @ 8063258 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806326A - movs r0, 0 - b _08063270 -_0806326A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063270: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063258 - - thumb_func_start sub_8063278 -sub_8063278: @ 8063278 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_8063208 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063298 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063278 - - thumb_func_start sub_8063298 -sub_8063298: @ 8063298 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080632AA - movs r0, 0 - b _080632B0 -_080632AA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080632B0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063298 - - thumb_func_start sub_80632B8 -sub_80632B8: @ 80632B8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_8063208 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80632D8 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80632B8 - - thumb_func_start sub_80632D8 -sub_80632D8: @ 80632D8 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080632EA - movs r0, 0 - b _080632F0 -_080632EA: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080632F0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80632D8 - - thumb_func_start sub_80632F8 -sub_80632F8: @ 80632F8 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x1 - bl sub_8063208 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063318 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80632F8 - - thumb_func_start sub_8063318 -sub_8063318: @ 8063318 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _0806332A - movs r0, 0 - b _08063330 -_0806332A: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063330: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063318 - - thumb_func_start sub_8063338 -sub_8063338: @ 8063338 - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - bl sub_8060D20 - ldrb r0, [r5, 0x18] - lsls r0, 28 - lsrs r0, 28 - bl sub_805FDB8 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r4, 0 - bl StartSpriteAnim - adds r0, r4, 0 - movs r1, 0 - bl SeekSpriteAnim - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8063338 - - thumb_func_start sub_8063370 -sub_8063370: @ 8063370 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x1 - movs r3, 0x1 - bl sub_8063338 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063390 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063370 - - thumb_func_start sub_8063390 -sub_8063390: @ 8063390 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080633A2 - movs r0, 0 - b _080633A8 -_080633A2: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080633A8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063390 - - thumb_func_start sub_80633B0 -sub_80633B0: @ 80633B0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_8063338 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_80633D0 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80633B0 - - thumb_func_start sub_80633D0 -sub_80633D0: @ 80633D0 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _080633E2 - movs r0, 0 - b _080633E8 -_080633E2: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_080633E8: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80633D0 - - thumb_func_start sub_80633F0 -sub_80633F0: @ 80633F0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_8063338 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063410 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80633F0 - - thumb_func_start sub_8063410 -sub_8063410: @ 8063410 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08063422 - movs r0, 0 - b _08063428 -_08063422: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063428: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063410 - - thumb_func_start sub_8063430 -sub_8063430: @ 8063430 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - movs r3, 0x1 - bl sub_8063338 - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_8063450 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_8063430 - - thumb_func_start sub_8063450 -sub_8063450: @ 8063450 - push {r4,lr} - adds r4, r1, 0 - bl npc_obj_ministep_stop_on_arrival - lsls r0, 24 - cmp r0, 0 - bne _08063462 - movs r0, 0 - b _08063468 -_08063462: - movs r0, 0x2 - strh r0, [r4, 0x32] - movs r0, 0x1 -_08063468: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_8063450 - - thumb_func_start sub_8063470 -sub_8063470: @ 8063470 - movs r0, 0x1 - bx lr - thumb_func_end sub_8063470 - - thumb_func_start sub_8063474 -sub_8063474: @ 8063474 - adds r1, 0x2C - ldrb r0, [r1] - movs r2, 0x40 - orrs r0, r2 - strb r0, [r1] - movs r0, 0x1 - bx lr - thumb_func_end sub_8063474 - - thumb_func_start npc_obj_transfer_image_anim_pause_flag -npc_obj_transfer_image_anim_pause_flag: @ 8063484 - push {lr} - ldrb r0, [r0, 0x1] - lsls r0, 29 - cmp r0, 0 - bge _0806349A - adds r0, r1, 0 - adds r0, 0x2C - ldrb r1, [r0] - movs r2, 0x40 - orrs r1, r2 - strb r1, [r0] -_0806349A: - pop {r0} - bx r0 - thumb_func_end npc_obj_transfer_image_anim_pause_flag - - thumb_func_start sub_80634A0 -sub_80634A0: @ 80634A0 - push {r4,lr} - adds r4, r0, 0 - ldrb r3, [r4, 0x1] - lsls r0, r3, 28 - cmp r0, 0 - bge _080634C8 - adds r2, r1, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r3 - movs r1, 0x9 - negs r1, r1 - ands r0, r1 - strb r0, [r4, 0x1] -_080634C8: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80634A0 - - thumb_func_start sub_80634D0 -sub_80634D0: @ 80634D0 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - bl sub_80634E8 - adds r0, r4, 0 - adds r1, r5, 0 - bl npc_update_obj_anim_flag - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80634D0 - - thumb_func_start sub_80634E8 -sub_80634E8: @ 80634E8 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - ldrb r1, [r5, 0x1] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r5, 0x1] - ldrb r0, [r5, 0x5] - bl GetFieldObjectGraphicsInfo - adds r6, r0, 0 - adds r0, r4, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0806354C - ldrh r1, [r4, 0x24] - ldrh r0, [r4, 0x20] - adds r1, r0 - adds r0, r4, 0 - adds r0, 0x28 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldr r2, _08063544 @ =gSpriteCoordOffsetX - adds r0, r1 - ldrh r2, [r2] - adds r0, r2 - lsls r0, 16 - lsrs r3, r0, 16 - ldrh r1, [r4, 0x26] - ldrh r0, [r4, 0x22] - adds r1, r0 - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - ldr r2, _08063548 @ =gSpriteCoordOffsetY - adds r0, r1 - ldrh r2, [r2] - adds r0, r2 - b _08063574 - .align 2, 0 -_08063544: .4byte gSpriteCoordOffsetX -_08063548: .4byte gSpriteCoordOffsetY -_0806354C: - ldrh r1, [r4, 0x24] - ldrh r0, [r4, 0x20] - adds r1, r0 - adds r0, r4, 0 - adds r0, 0x28 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - adds r0, r1 - lsls r0, 16 - lsrs r3, r0, 16 - ldrh r1, [r4, 0x26] - ldrh r0, [r4, 0x22] - adds r1, r0 - adds r0, r4, 0 - adds r0, 0x29 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - adds r0, r1 -_08063574: - lsls r0, 16 - lsrs r2, r0, 16 - ldrh r0, [r6, 0x8] - adds r0, r3 - lsls r0, 16 - lsrs r1, r0, 16 - ldrh r0, [r6, 0xA] - adds r0, r2 - lsls r0, 16 - lsrs r4, r0, 16 - lsls r0, r3, 16 - asrs r0, 16 - cmp r0, 0xFF - bgt _0806359C - lsls r0, r1, 16 - asrs r0, 16 - movs r1, 0x10 - negs r1, r1 - cmp r0, r1 - bge _080635A4 -_0806359C: - ldrb r0, [r5, 0x1] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r5, 0x1] -_080635A4: - lsls r0, r2, 16 - asrs r0, 16 - cmp r0, 0xAF - bgt _080635B8 - lsls r0, r4, 16 - asrs r0, 16 - movs r1, 0x10 - negs r1, r1 - cmp r0, r1 - bge _080635C0 -_080635B8: - ldrb r0, [r5, 0x1] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r5, 0x1] -_080635C0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80634E8 - - thumb_func_start npc_update_obj_anim_flag -npc_update_obj_anim_flag: @ 80635C8 - push {lr} - adds r2, r1, 0 - adds r2, 0x3E - ldrb r1, [r2] - movs r3, 0x5 - negs r3, r3 - ands r3, r1 - strb r3, [r2] - ldrb r1, [r0, 0x1] - movs r0, 0x60 - ands r0, r1 - cmp r0, 0 - beq _080635EA - movs r1, 0x4 - adds r0, r3, 0 - orrs r0, r1 - strb r0, [r2] -_080635EA: - pop {r0} - bx r0 - thumb_func_end npc_update_obj_anim_flag - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/party_menu.s b/asm/party_menu.s index b9c9de694..8a7c153b9 100644 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -7446,3631 +7446,6 @@ PartyMenuGetPopupMenuFunc: @ 806E81C bx lr thumb_func_end PartyMenuGetPopupMenuFunc - .section .text_806E884 - - - - thumb_func_start sub_806E8D0 -sub_806E8D0: @ 806E8D0 - push {r4,r5,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r5, 16 - lsrs r5, 16 - ldr r4, _0806E8FC @ =0x0201c000 - str r2, [r4, 0x10] - strb r0, [r4, 0x4] - bl sub_806CA38 - strb r0, [r4, 0x5] - strh r5, [r4, 0x6] - ldrb r1, [r4, 0x5] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0806E900 @ =gPlayerParty - adds r0, r1 - str r0, [r4] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806E8FC: .4byte 0x0201c000 -_0806E900: .4byte gPlayerParty - thumb_func_end sub_806E8D0 - - thumb_func_start PartyMenuUpdateMonHeldItem -PartyMenuUpdateMonHeldItem: @ 806E904 - push {r4,r5,lr} - sub sp, 0x4 - adds r5, r0, 0 - lsls r1, 16 - lsrs r4, r1, 16 - adds r0, r4, 0 - bl ItemIsMail - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E93C - adds r0, r5, 0 - adds r1, r4, 0 - bl GiveMailToMon - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - bne _0806E930 - movs r0, 0x1 - b _0806E958 -_0806E930: - ldr r1, _0806E938 @ =gUnknown_0202E8F4 - movs r0, 0x2 - b _0806E940 - .align 2, 0 -_0806E938: .4byte gUnknown_0202E8F4 -_0806E93C: - ldr r1, _0806E960 @ =gUnknown_0202E8F4 - movs r0, 0x1 -_0806E940: - strb r0, [r1] - mov r0, sp - strb r4, [r0] - mov r1, sp - lsrs r0, r4, 8 - strb r0, [r1, 0x1] - adds r0, r5, 0 - movs r1, 0xC - mov r2, sp - bl SetMonData - movs r0, 0 -_0806E958: - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0806E960: .4byte gUnknown_0202E8F4 - thumb_func_end PartyMenuUpdateMonHeldItem - - thumb_func_start PartyMenuTryGiveMonHeldItem -PartyMenuTryGiveMonHeldItem: @ 806E964 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r8, r2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r5, r1, 16 - mov r9, r5 - ldr r2, _0806E9D4 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r6, r1, r2 - ldr r1, _0806E9D8 @ =TaskDummy - str r1, [r6] - adds r1, r5, 0 - mov r2, r8 - bl sub_806E8D0 - ldr r4, _0806E9DC @ =0x0201c000 - ldr r0, [r4] - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r2, r0, 16 - adds r7, r2, 0 - ldr r1, _0806E9E0 @ =gUnknown_0202E8F4 - movs r0, 0 - strb r0, [r1] - ldr r0, _0806E9E4 @ =gUnknown_0202E8F8 - mov r10, r0 - movs r0, 0 - mov r1, r10 - strh r0, [r1] - cmp r2, 0 - beq _0806EA44 - adds r0, r2, 0 - bl ItemIsMail - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806E9F0 - ldr r0, _0806E9E8 @ =gOtherText_MailMustBeRemoved - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806E9EC @ =party_menu_link_mon_held_item_object - movs r1, 0x5 - bl CreateTask - b _0806EA78 - .align 2, 0 -_0806E9D4: .4byte gTasks -_0806E9D8: .4byte TaskDummy -_0806E9DC: .4byte 0x0201c000 -_0806E9E0: .4byte gUnknown_0202E8F4 -_0806E9E4: .4byte gUnknown_0202E8F8 -_0806E9E8: .4byte gOtherText_MailMustBeRemoved -_0806E9EC: .4byte party_menu_link_mon_held_item_object -_0806E9F0: - ldr r0, [r4] - ldr r1, _0806EA30 @ =gStringVar1 - bl GetMonNickname - ldr r1, _0806EA34 @ =gStringVar2 - adds r0, r7, 0 - bl CopyItemName - ldr r4, _0806EA38 @ =gStringVar4 - ldr r1, _0806EA3C @ =gOtherText_AlreadyHolding - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806EA40 @ =Task_ConfirmGiveHeldItem - movs r1, 0x5 - bl CreateTask - adds r0, r5, 0 - bl ItemIsMail - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806EA78 - mov r0, r10 - strh r7, [r0] - b _0806EA78 - .align 2, 0 -_0806EA30: .4byte gStringVar1 -_0806EA34: .4byte gStringVar2 -_0806EA38: .4byte gStringVar4 -_0806EA3C: .4byte gOtherText_AlreadyHolding -_0806EA40: .4byte Task_ConfirmGiveHeldItem -_0806EA44: - ldr r0, [r4] - adds r1, r5, 0 - bl PartyMenuUpdateMonHeldItem - adds r0, r5, 0 - movs r1, 0x1 - bl RemoveBagItem - adds r0, r5, 0 - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0806EA66 - mov r1, r8 - str r1, [r6] - b _0806EA78 -_0806EA66: - ldrb r0, [r4, 0x5] - mov r1, r9 - movs r2, 0x1 - bl DisplayGiveHeldItemMessage - ldr r0, _0806EA88 @ =party_menu_link_mon_held_item_object - movs r1, 0x5 - bl CreateTask -_0806EA78: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806EA88: .4byte party_menu_link_mon_held_item_object - thumb_func_end PartyMenuTryGiveMonHeldItem - - thumb_func_start party_menu_link_mon_held_item_object -party_menu_link_mon_held_item_object: @ 806EA8C - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0806EAC0 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806EABA - ldr r4, _0806EAC4 @ =0x0201c000 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - bl SetHeldItemIconVisibility - ldr r2, _0806EAC8 @ =gTasks - ldrb r1, [r4, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, [r4, 0x10] - str r1, [r0] - adds r0, r5, 0 - bl DestroyTask -_0806EABA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806EAC0: .4byte gUnknown_0202E8F6 -_0806EAC4: .4byte 0x0201c000 -_0806EAC8: .4byte gTasks - thumb_func_end party_menu_link_mon_held_item_object - - thumb_func_start PartyMenuTryGiveMonHeldItem_806EACC -PartyMenuTryGiveMonHeldItem_806EACC: @ 806EACC - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - bl ProcessMenuInputNoWrap_ - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - bne _0806EB74 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r4, _0806EB30 @ =0x0201c000 - ldr r0, [r4] - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - ldrh r0, [r4, 0x6] - movs r1, 0x1 - bl RemoveBagItem - adds r0, r5, 0 - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806EB5C - ldr r0, [r4] - ldrh r1, [r4, 0x6] - bl PartyMenuUpdateMonHeldItem - ldrh r0, [r4, 0x6] - bl ItemIsMail - lsls r0, 24 - cmp r0, 0 - beq _0806EB34 - ldrb r0, [r4, 0x5] - adds r1, r5, 0 - movs r2, 0x1 - bl DisplayTakeHeldItemMessage - b _0806EB9A - .align 2, 0 -_0806EB30: .4byte 0x0201c000 -_0806EB34: - ldrh r0, [r4, 0x6] - ldr r1, _0806EB50 @ =gStringVar1 - bl CopyItemName - ldr r4, _0806EB54 @ =gStringVar4 - ldr r1, _0806EB58 @ =gOtherText_TakenAndReplaced - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - b _0806EB9A - .align 2, 0 -_0806EB50: .4byte gStringVar1 -_0806EB54: .4byte gStringVar4 -_0806EB58: .4byte gOtherText_TakenAndReplaced -_0806EB5C: - ldr r0, _0806EB70 @ =gOtherText_BagFullCannotRemoveItem - movs r1, 0 - bl sub_806E834 - ldrh r0, [r4, 0x6] - movs r1, 0x1 - bl AddBagItem - b _0806EB9A - .align 2, 0 -_0806EB70: .4byte gOtherText_BagFullCannotRemoveItem -_0806EB74: - cmp r1, 0x1 - beq _0806EB80 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806EBA8 -_0806EB80: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806EB8E - movs r0, 0x5 - bl PlaySE -_0806EB8E: - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect -_0806EB9A: - ldr r0, _0806EBB0 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806EBB4 @ =party_menu_link_mon_held_item_object - str r0, [r1] -_0806EBA8: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806EBB0: .4byte gTasks -_0806EBB4: .4byte party_menu_link_mon_held_item_object - thumb_func_end PartyMenuTryGiveMonHeldItem_806EACC - - thumb_func_start Task_ConfirmGiveHeldItem -Task_ConfirmGiveHeldItem: @ 806EBB8 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806EBE4 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806EBDE - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _0806EBE8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806EBEC @ =PartyMenuTryGiveMonHeldItem_806EACC - str r0, [r1] -_0806EBDE: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806EBE4: .4byte gUnknown_0202E8F6 -_0806EBE8: .4byte gTasks -_0806EBEC: .4byte PartyMenuTryGiveMonHeldItem_806EACC - thumb_func_end Task_ConfirmGiveHeldItem - - thumb_func_start DisplayGiveHeldItemMessage -DisplayGiveHeldItemMessage: @ 806EBF0 - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0806EC30 @ =gPlayerParty - adds r0, r1 - ldr r1, _0806EC34 @ =gStringVar1 - bl GetMonNickname - ldr r1, _0806EC38 @ =gStringVar2 - adds r0, r4, 0 - bl CopyItemName - ldr r4, _0806EC3C @ =gStringVar4 - ldr r1, _0806EC40 @ =gOtherText_WasGivenToHold - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806E834 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806EC30: .4byte gPlayerParty -_0806EC34: .4byte gStringVar1 -_0806EC38: .4byte gStringVar2 -_0806EC3C: .4byte gStringVar4 -_0806EC40: .4byte gOtherText_WasGivenToHold - thumb_func_end DisplayGiveHeldItemMessage - - thumb_func_start PartyMenuTryGiveMonMail -PartyMenuTryGiveMonMail: @ 806EC44 - push {r4,r5,lr} - adds r2, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r3, _0806ECA0 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r3 - ldr r3, _0806ECA4 @ =TaskDummy - str r3, [r1] - movs r1, 0 - bl sub_806E8D0 - ldr r5, _0806ECA8 @ =0x0201c000 - ldr r0, [r5] - movs r1, 0xC - bl GetMonData - lsls r0, 16 - ldr r2, _0806ECAC @ =gUnknown_0202E8F4 - movs r1, 0 - strb r1, [r2] - movs r1, 0xF8 - lsls r1, 6 - adds r2, r5, r1 - ldrb r1, [r2] - adds r1, 0x6 - ldrb r2, [r2, 0x2] - adds r1, r2 - lsls r2, r1, 3 - adds r2, r1 - lsls r2, 2 - ldr r1, _0806ECB0 @ =gSaveBlock1 + 0x2B4C - adds r4, r2, r1 - cmp r0, 0 - beq _0806ECBC - ldr r0, _0806ECB4 @ =gOtherText_PokeHoldingItemCantMail - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806ECB8 @ =party_menu_link_mon_held_item_object - movs r1, 0x5 - bl CreateTask - b _0806ECDA - .align 2, 0 -_0806ECA0: .4byte gTasks -_0806ECA4: .4byte TaskDummy -_0806ECA8: .4byte 0x0201c000 -_0806ECAC: .4byte gUnknown_0202E8F4 -_0806ECB0: .4byte gSaveBlock1 + 0x2B4C -_0806ECB4: .4byte gOtherText_PokeHoldingItemCantMail -_0806ECB8: .4byte party_menu_link_mon_held_item_object -_0806ECBC: - ldr r0, [r5] - adds r1, r4, 0 - bl GiveMailToMon2 - adds r0, r4, 0 - bl ClearMailStruct - ldr r0, _0806ECE0 @ =gOtherText_MailTransferredMailbox - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806ECE4 @ =party_menu_link_mon_held_item_object - movs r1, 0x5 - bl CreateTask -_0806ECDA: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806ECE0: .4byte gOtherText_MailTransferredMailbox -_0806ECE4: .4byte party_menu_link_mon_held_item_object - thumb_func_end PartyMenuTryGiveMonMail - - thumb_func_start PartyMenuTryGiveMonHeldItem_806ECE8 -PartyMenuTryGiveMonHeldItem_806ECE8: @ 806ECE8 - push {r4-r6,lr} - sub sp, 0x4 - adds r2, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r3, _0806ED38 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r3 - ldr r3, _0806ED3C @ =TaskDummy - str r3, [r1] - movs r1, 0 - bl sub_806E8D0 - ldr r5, _0806ED40 @ =0x0201c000 - ldr r0, [r5] - movs r1, 0xC - bl GetMonData - lsls r0, 16 - lsrs r4, r0, 16 - adds r6, r4, 0 - cmp r4, 0 - bne _0806ED50 - ldr r4, _0806ED44 @ =gStringVar4 - ldr r1, _0806ED48 @ =gOtherText_NotHoldingAnything - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0 - bl sub_806E834 - ldr r0, _0806ED4C @ =party_menu_link_mon_held_item_object - movs r1, 0x5 - bl CreateTask - b _0806EDA2 - .align 2, 0 -_0806ED38: .4byte gTasks -_0806ED3C: .4byte TaskDummy -_0806ED40: .4byte 0x0201c000 -_0806ED44: .4byte gStringVar4 -_0806ED48: .4byte gOtherText_NotHoldingAnything -_0806ED4C: .4byte party_menu_link_mon_held_item_object -_0806ED50: - mov r0, sp - movs r1, 0 - strb r1, [r0] - strb r1, [r0, 0x1] - adds r0, r4, 0 - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806ED92 - adds r0, r4, 0 - bl ItemIsMail - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806ED7C - ldr r0, [r5] - bl TakeMailFromMon -_0806ED7C: - ldrb r0, [r5, 0x5] - adds r1, r6, 0 - movs r2, 0 - bl DisplayTakeHeldItemMessage - ldr r0, [r5] - movs r1, 0xC - mov r2, sp - bl SetMonData - b _0806ED9A -_0806ED92: - ldr r0, _0806EDAC @ =gOtherText_BagFullCannotRemoveItem - movs r1, 0 - bl sub_806E834 -_0806ED9A: - ldr r0, _0806EDB0 @ =party_menu_link_mon_held_item_object - movs r1, 0x5 - bl CreateTask -_0806EDA2: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806EDAC: .4byte gOtherText_BagFullCannotRemoveItem -_0806EDB0: .4byte party_menu_link_mon_held_item_object - thumb_func_end PartyMenuTryGiveMonHeldItem_806ECE8 - - thumb_func_start DisplayTakeHeldItemMessage -DisplayTakeHeldItemMessage: @ 806EDB4 - push {r4,r5,lr} - adds r4, r1, 0 - adds r5, r2, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r4, 16 - lsrs r4, 16 - lsls r5, 24 - lsrs r5, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _0806EDF4 @ =gPlayerParty - adds r0, r1 - ldr r1, _0806EDF8 @ =gStringVar1 - bl GetMonNickname - ldr r1, _0806EDFC @ =gStringVar2 - adds r0, r4, 0 - bl CopyItemName - ldr r4, _0806EE00 @ =gStringVar4 - ldr r1, _0806EE04 @ =gOtherText_ReceivedTheThingFrom - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - adds r1, r5, 0 - bl sub_806E834 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806EDF4: .4byte gPlayerParty -_0806EDF8: .4byte gStringVar1 -_0806EDFC: .4byte gStringVar2 -_0806EE00: .4byte gStringVar4 -_0806EE04: .4byte gOtherText_ReceivedTheThingFrom - thumb_func_end DisplayTakeHeldItemMessage - - thumb_func_start DoTakeMail -DoTakeMail: @ 806EE08 - push {r4,lr} - adds r2, r1, 0 - lsls r0, 24 - lsrs r0, 24 - ldr r3, _0806EE48 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r3 - ldr r3, _0806EE4C @ =TaskDummy - str r3, [r1] - movs r1, 0 - bl sub_806E8D0 - ldr r4, _0806EE50 @ =0x0201c000 - ldr r0, [r4] - movs r1, 0xC - bl GetMonData - strh r0, [r4, 0x6] - ldr r0, _0806EE54 @ =gOtherText_SendRemovedMailPrompt - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806EE58 @ =Task_ConfirmTakeHeldMail - movs r1, 0x5 - bl CreateTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806EE48: .4byte gTasks -_0806EE4C: .4byte TaskDummy -_0806EE50: .4byte 0x0201c000 -_0806EE54: .4byte gOtherText_SendRemovedMailPrompt -_0806EE58: .4byte Task_ConfirmTakeHeldMail - thumb_func_end DoTakeMail - - thumb_func_start Task_LoseMailMessage -Task_LoseMailMessage: @ 806EE5C - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl ProcessMenuInputNoWrap_ - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - bne _0806EEB0 - ldr r5, _0806EE90 @ =0x0201c000 - ldrh r0, [r5, 0x6] - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806EE98 - ldr r0, [r5] - bl TakeMailFromMon - ldr r0, _0806EE94 @ =gOtherText_MailTaken - movs r1, 0 - bl sub_806E834 - b _0806EEA0 - .align 2, 0 -_0806EE90: .4byte 0x0201c000 -_0806EE94: .4byte gOtherText_MailTaken -_0806EE98: - ldr r0, _0806EEAC @ =gOtherText_BagFullCannotRemoveItem - movs r1, 0 - bl sub_806E834 -_0806EEA0: - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - b _0806EEDE - .align 2, 0 -_0806EEAC: .4byte gOtherText_BagFullCannotRemoveItem -_0806EEB0: - cmp r1, 0x1 - beq _0806EEBC - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806EEF0 -_0806EEBC: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806EECA - movs r0, 0x5 - bl PlaySE -_0806EECA: - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - movs r0, 0 - movs r1, 0xE - movs r2, 0x1D - movs r3, 0x13 -_0806EEDE: - bl MenuZeroFillWindowRect - ldr r0, _0806EEF8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806EEFC @ =party_menu_link_mon_held_item_object - str r0, [r1] -_0806EEF0: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806EEF8: .4byte gTasks -_0806EEFC: .4byte party_menu_link_mon_held_item_object - thumb_func_end Task_LoseMailMessage - - thumb_func_start Task_ConfirmLoseMailMessage -Task_ConfirmLoseMailMessage: @ 806EF00 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806EF2C @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806EF26 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _0806EF30 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806EF34 @ =Task_LoseMailMessage - str r0, [r1] -_0806EF26: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806EF2C: .4byte gUnknown_0202E8F6 -_0806EF30: .4byte gTasks -_0806EF34: .4byte Task_LoseMailMessage - thumb_func_end Task_ConfirmLoseMailMessage - - thumb_func_start Task_TakeHeldMail -Task_TakeHeldMail: @ 806EF38 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl ProcessMenuInputNoWrap_ - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - bne _0806EF9C - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r0, _0806EF70 @ =0x0201c000 - ldr r0, [r0] - bl TakeMailFromMon2 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0xFF - beq _0806EF78 - ldr r0, _0806EF74 @ =gOtherText_MailWasSent - movs r1, 0 - bl sub_806E834 - b _0806EF80 - .align 2, 0 -_0806EF70: .4byte 0x0201c000 -_0806EF74: .4byte gOtherText_MailWasSent -_0806EF78: - ldr r0, _0806EF90 @ =gOtherText_MailboxIsFull - movs r1, 0 - bl sub_806E834 -_0806EF80: - ldr r0, _0806EF94 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806EF98 @ =party_menu_link_mon_held_item_object - str r0, [r1] - b _0806EFD8 - .align 2, 0 -_0806EF90: .4byte gOtherText_MailboxIsFull -_0806EF94: .4byte gTasks -_0806EF98: .4byte party_menu_link_mon_held_item_object -_0806EF9C: - cmp r1, 0x1 - beq _0806EFA8 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806EFD8 -_0806EFA8: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806EFB6 - movs r0, 0x5 - bl PlaySE -_0806EFB6: - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r0, _0806EFE0 @ =gOtherText_MailRemovedMessageLost - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806EFE4 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806EFE8 @ =Task_ConfirmLoseMailMessage - str r1, [r0] -_0806EFD8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806EFE0: .4byte gOtherText_MailRemovedMessageLost -_0806EFE4: .4byte gTasks -_0806EFE8: .4byte Task_ConfirmLoseMailMessage - thumb_func_end Task_TakeHeldMail - - thumb_func_start Task_ConfirmTakeHeldMail -Task_ConfirmTakeHeldMail: @ 806EFEC - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806F018 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F012 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _0806F01C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806F020 @ =Task_TakeHeldMail - str r0, [r1] -_0806F012: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806F018: .4byte gUnknown_0202E8F6 -_0806F01C: .4byte gTasks -_0806F020: .4byte Task_TakeHeldMail - thumb_func_end Task_ConfirmTakeHeldMail - - thumb_func_start ItemIdToBattleMoveId -ItemIdToBattleMoveId: @ 806F024 - lsls r0, 16 - ldr r1, _0806F034 @ =0xfedf0000 - adds r0, r1 - ldr r1, _0806F038 @ =gUnknown_08376504 - lsrs r0, 15 - adds r0, r1 - ldrh r0, [r0] - bx lr - .align 2, 0 -_0806F034: .4byte 0xfedf0000 -_0806F038: .4byte gUnknown_08376504 - thumb_func_end ItemIdToBattleMoveId - - thumb_func_start pokemon_has_move -pokemon_has_move: @ 806F03C - push {r4-r6,lr} - adds r6, r0, 0 - lsls r1, 16 - lsrs r5, r1, 16 - movs r4, 0 -_0806F046: - adds r1, r4, 0 - adds r1, 0xD - adds r0, r6, 0 - bl GetMonData - cmp r0, r5 - bne _0806F058 - movs r0, 0x1 - b _0806F064 -_0806F058: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _0806F046 - movs r0, 0 -_0806F064: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end pokemon_has_move - - thumb_func_start TeachMonTMMove -TeachMonTMMove: @ 806F06C - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - adds r6, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 16 - lsrs r5, 16 - movs r0, 0x5 - bl PlaySE - ldr r1, _0806F0A8 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F0AC @ =TaskDummy - str r1, [r0] - adds r0, r4, 0 - adds r1, r5, 0 - adds r2, r6, 0 - bl sub_806E8D0 - ldr r0, _0806F0B0 @ =Task_TeamMonTMMove - movs r1, 0x5 - bl CreateTask - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806F0A8: .4byte gTasks -_0806F0AC: .4byte TaskDummy -_0806F0B0: .4byte Task_TeamMonTMMove - thumb_func_end TeachMonTMMove - - thumb_func_start Task_TeamMonTMMove -Task_TeamMonTMMove: @ 806F0B4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - adds r7, r6, 0 - ldr r5, _0806F114 @ =0x0201c000 - ldr r0, [r5] - ldr r1, _0806F118 @ =gStringVar1 - bl GetMonNickname - ldrh r0, [r5, 0x6] - bl ItemIdToBattleMoveId - movs r4, 0 - strh r0, [r5, 0x8] - ldr r0, _0806F11C @ =gStringVar2 - ldrh r2, [r5, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, _0806F120 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r1, _0806F124 @ =0xfffff282 - adds r0, r5, r1 - strh r4, [r0] - ldr r0, [r5] - ldrh r1, [r5, 0x8] - bl pokemon_has_move - lsls r0, 24 - cmp r0, 0 - beq _0806F138 - ldr r4, _0806F128 @ =gStringVar4 - ldr r1, _0806F12C @ =gOtherText_AlreadyKnows - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F130 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F134 @ =party_menu_link_mon_held_item_object - b _0806F1B6 - .align 2, 0 -_0806F114: .4byte 0x0201c000 -_0806F118: .4byte gStringVar1 -_0806F11C: .4byte gStringVar2 -_0806F120: .4byte gMoveNames -_0806F124: .4byte 0xfffff282 -_0806F128: .4byte gStringVar4 -_0806F12C: .4byte gOtherText_AlreadyKnows -_0806F130: .4byte gTasks -_0806F134: .4byte party_menu_link_mon_held_item_object -_0806F138: - ldr r0, [r5] - ldrb r1, [r5, 0x6] - subs r1, 0x21 - lsls r1, 24 - lsrs r1, 24 - bl CanMonLearnTMHM - cmp r0, 0 - bne _0806F17C - ldr r4, _0806F16C @ =gStringVar4 - ldr r1, _0806F170 @ =gOtherText_NotCompatible - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F174 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F178 @ =party_menu_link_mon_held_item_object - b _0806F1B6 - .align 2, 0 -_0806F16C: .4byte gStringVar4 -_0806F170: .4byte gOtherText_NotCompatible -_0806F174: .4byte gTasks -_0806F178: .4byte party_menu_link_mon_held_item_object -_0806F17C: - ldr r0, [r5] - ldrh r1, [r5, 0x8] - bl GiveMoveToMon - lsls r0, 16 - ldr r1, _0806F194 @ =0xffff0000 - cmp r0, r1 - beq _0806F198 - adds r0, r6, 0 - bl Task_TeamMonTMMove2 - b _0806F1B8 - .align 2, 0 -_0806F194: .4byte 0xffff0000 -_0806F198: - ldr r4, _0806F1C0 @ =gStringVar4 - ldr r1, _0806F1C4 @ =gOtherText_WantsToLearn - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F1C8 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F1CC @ =sub_806F358 -_0806F1B6: - str r1, [r0] -_0806F1B8: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806F1C0: .4byte gStringVar4 -_0806F1C4: .4byte gOtherText_WantsToLearn -_0806F1C8: .4byte gTasks -_0806F1CC: .4byte sub_806F358 - thumb_func_end Task_TeamMonTMMove - - thumb_func_start Task_TeamMonTMMove2 -Task_TeamMonTMMove2: @ 806F1D0 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _0806F234 @ =gStringVar2 - ldr r5, _0806F238 @ =0x0201c000 - ldrh r2, [r5, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, _0806F23C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0806F240 @ =gStringVar4 - ldr r1, _0806F244 @ =gOtherText_LearnedMove - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r0, [r5] - movs r1, 0x4 - bl AdjustFriendship - ldr r1, _0806F248 @ =0xfffff282 - adds r0, r5, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _0806F220 - ldrh r1, [r5, 0x6] - movs r0, 0xA9 - lsls r0, 1 - cmp r1, r0 - bhi _0806F220 - adds r0, r1, 0 - movs r1, 0x1 - bl RemoveBagItem -_0806F220: - ldr r0, _0806F24C @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806F250 @ =Task_TeamMonTMMove3 - str r0, [r1] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806F234: .4byte gStringVar2 -_0806F238: .4byte 0x0201c000 -_0806F23C: .4byte gMoveNames -_0806F240: .4byte gStringVar4 -_0806F244: .4byte gOtherText_LearnedMove -_0806F248: .4byte 0xfffff282 -_0806F24C: .4byte gTasks -_0806F250: .4byte Task_TeamMonTMMove3 - thumb_func_end Task_TeamMonTMMove2 - - thumb_func_start Task_TeamMonTMMove3 -Task_TeamMonTMMove3: @ 806F254 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806F27C @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F276 - ldr r0, _0806F280 @ =0x0000016f - bl PlayFanfare - ldr r1, _0806F284 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F288 @ =Task_TeamMonTMMove4 - str r1, [r0] -_0806F276: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806F27C: .4byte gUnknown_0202E8F6 -_0806F280: .4byte 0x0000016f -_0806F284: .4byte gTasks -_0806F288: .4byte Task_TeamMonTMMove4 - thumb_func_end Task_TeamMonTMMove3 - - thumb_func_start Task_TeamMonTMMove4 -Task_TeamMonTMMove4: @ 806F28C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - bl IsFanfareTaskInactive - lsls r0, 24 - cmp r0, 0 - beq _0806F2F2 - ldr r0, _0806F2D0 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0806F2B2 - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0806F2F2 -_0806F2B2: - ldr r4, _0806F2D4 @ =0x0201c000 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - bl SetHeldItemIconVisibility - ldr r1, _0806F2D8 @ =0xfffff282 - adds r0, r4, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bne _0806F2DC - adds r0, r5, 0 - bl sub_8070C54 - b _0806F2F2 - .align 2, 0 -_0806F2D0: .4byte gMain -_0806F2D4: .4byte 0x0201c000 -_0806F2D8: .4byte 0xfffff282 -_0806F2DC: - ldr r2, _0806F2F8 @ =gTasks - ldrb r1, [r4, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, [r4, 0x10] - str r1, [r0] - adds r0, r6, 0 - bl DestroyTask -_0806F2F2: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806F2F8: .4byte gTasks - thumb_func_end Task_TeamMonTMMove4 - - thumb_func_start sub_806F2FC -sub_806F2FC: @ 806F2FC - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - ldr r0, _0806F32C @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F34E - ldr r4, _0806F330 @ =0x0201c000 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - bl SetHeldItemIconVisibility - ldr r1, _0806F334 @ =0xfffff282 - adds r0, r4, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0x1 - bne _0806F338 - adds r0, r5, 0 - bl sub_8070C54 - b _0806F34E - .align 2, 0 -_0806F32C: .4byte gUnknown_0202E8F6 -_0806F330: .4byte 0x0201c000 -_0806F334: .4byte 0xfffff282 -_0806F338: - ldr r2, _0806F354 @ =gTasks - ldrb r1, [r4, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, [r4, 0x10] - str r1, [r0] - adds r0, r6, 0 - bl DestroyTask -_0806F34E: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806F354: .4byte gTasks - thumb_func_end sub_806F2FC - - thumb_func_start sub_806F358 -sub_806F358: @ 806F358 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806F384 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F37E - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _0806F388 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806F38C @ =sub_806F390 - str r0, [r1] -_0806F37E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806F384: .4byte gUnknown_0202E8F6 -_0806F388: .4byte gTasks -_0806F38C: .4byte sub_806F390 - thumb_func_end sub_806F358 - - thumb_func_start sub_806F390 -sub_806F390: @ 806F390 - push {r4,r5,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r5, r4, 0 - bl ProcessMenuInputNoWrap_ - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - bne _0806F3D4 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r0, _0806F3C8 @ =gOtherText_WhichMoveToForget2 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F3CC @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F3D0 @ =sub_806F44C - str r1, [r0] - b _0806F3F4 - .align 2, 0 -_0806F3C8: .4byte gOtherText_WhichMoveToForget2 -_0806F3CC: .4byte gTasks -_0806F3D0: .4byte sub_806F44C -_0806F3D4: - cmp r1, 0x1 - beq _0806F3E0 - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806F3F4 -_0806F3E0: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806F3EE - movs r0, 0x5 - bl PlaySE -_0806F3EE: - adds r0, r5, 0 - bl StopTryingToTeachMove_806F614 -_0806F3F4: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_806F390 - - thumb_func_start sub_806F3FC -sub_806F3FC: @ 806F3FC - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r5, r0, 24 - ldr r0, _0806F438 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0806F430 - ldr r0, _0806F43C @ =gPlayerParty - ldr r4, _0806F440 @ =0x0201c000 - ldrb r1, [r4, 0x5] - ldr r2, _0806F444 @ =gPlayerPartyCount - ldrb r2, [r2] - subs r2, 0x1 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0806F448 @ =sub_808B564 - ldrh r4, [r4, 0x8] - str r4, [sp] - bl sub_809D9F0 - adds r0, r5, 0 - bl DestroyTask -_0806F430: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806F438: .4byte gPaletteFade -_0806F43C: .4byte gPlayerParty -_0806F440: .4byte 0x0201c000 -_0806F444: .4byte gPlayerPartyCount -_0806F448: .4byte sub_808B564 - thumb_func_end sub_806F3FC - - thumb_func_start sub_806F44C -sub_806F44C: @ 806F44C - push {r4,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806F484 @ =gUnknown_0202E8F6 - ldrb r1, [r0] - cmp r1, 0 - bne _0806F47A - movs r0, 0x1 - negs r0, r0 - str r1, [sp] - movs r1, 0 - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - ldr r1, _0806F488 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F48C @ =sub_806F3FC - str r1, [r0] -_0806F47A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806F484: .4byte gUnknown_0202E8F6 -_0806F488: .4byte gTasks -_0806F48C: .4byte sub_806F3FC - thumb_func_end sub_806F44C - - thumb_func_start TaughtMove -TaughtMove: @ 806F490 - push {r4,r5,lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _0806F50C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0806F506 - ldr r1, _0806F510 @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F514 @ =TaskDummy - str r1, [r0] - ldr r0, _0806F518 @ =gScriptItemId - ldrh r1, [r0] - ldr r2, _0806F51C @ =sub_808B508 - adds r0, r3, 0 - bl sub_806E8D0 - bl sub_809FA30 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r5, _0806F520 @ =0x0201c000 - ldr r0, [r5] - adds r1, 0xD - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - ldr r0, [r5] - ldr r1, _0806F524 @ =gStringVar1 - bl GetMonNickname - ldr r0, _0806F528 @ =gStringVar2 - movs r1, 0xD - muls r1, r4 - ldr r2, _0806F52C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0806F530 @ =gStringVar4 - ldr r1, _0806F534 @ =gOtherText_ForgetMove123_2 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806F538 @ =TMMoveUpdateMoveSlot - movs r1, 0x5 - bl CreateTask -_0806F506: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806F50C: .4byte gPaletteFade -_0806F510: .4byte gTasks -_0806F514: .4byte TaskDummy -_0806F518: .4byte gScriptItemId -_0806F51C: .4byte sub_808B508 -_0806F520: .4byte 0x0201c000 -_0806F524: .4byte gStringVar1 -_0806F528: .4byte gStringVar2 -_0806F52C: .4byte gMoveNames -_0806F530: .4byte gStringVar4 -_0806F534: .4byte gOtherText_ForgetMove123_2 -_0806F538: .4byte TMMoveUpdateMoveSlot - thumb_func_end TaughtMove - - thumb_func_start TMMoveUpdateMoveSlot -TMMoveUpdateMoveSlot: @ 806F53C - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _0806F580 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F57A - ldr r4, _0806F584 @ =0x0201c000 - ldr r5, [r4] - bl sub_809FA30 - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl RemoveMonPPBonus - ldr r5, [r4] - ldrh r4, [r4, 0x8] - bl sub_809FA30 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - adds r1, r4, 0 - bl SetMonMoveSlot - adds r0, r6, 0 - bl Task_TeamMonTMMove2 -_0806F57A: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806F580: .4byte gUnknown_0202E8F6 -_0806F584: .4byte 0x0201c000 - thumb_func_end TMMoveUpdateMoveSlot - - thumb_func_start StopTryingToTeachMove_806F588 -StopTryingToTeachMove_806F588: @ 806F588 - push {r4,lr} - lsls r0, 24 - lsrs r3, r0, 24 - ldr r0, _0806F5E8 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0806F5E0 - ldr r1, _0806F5EC @ =gTasks - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F5F0 @ =TaskDummy - str r1, [r0] - ldr r0, _0806F5F4 @ =gScriptItemId - ldrh r1, [r0] - ldr r2, _0806F5F8 @ =sub_808B508 - adds r0, r3, 0 - bl sub_806E8D0 - ldr r0, _0806F5FC @ =gStringVar2 - ldr r1, _0806F600 @ =0x0201c000 - ldrh r2, [r1, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, _0806F604 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0806F608 @ =gStringVar4 - ldr r1, _0806F60C @ =gOtherText_StopTryingTo - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0806F610 @ =StopTryingToTeachMove_806F67C - movs r1, 0x5 - bl CreateTask -_0806F5E0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806F5E8: .4byte gPaletteFade -_0806F5EC: .4byte gTasks -_0806F5F0: .4byte TaskDummy -_0806F5F4: .4byte gScriptItemId -_0806F5F8: .4byte sub_808B508 -_0806F5FC: .4byte gStringVar2 -_0806F600: .4byte 0x0201c000 -_0806F604: .4byte gMoveNames -_0806F608: .4byte gStringVar4 -_0806F60C: .4byte gOtherText_StopTryingTo -_0806F610: .4byte StopTryingToTeachMove_806F67C - thumb_func_end StopTryingToTeachMove_806F588 - - thumb_func_start StopTryingToTeachMove_806F614 -StopTryingToTeachMove_806F614: @ 806F614 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r0, _0806F660 @ =gStringVar2 - ldr r1, _0806F664 @ =0x0201c000 - ldrh r2, [r1, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, _0806F668 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0806F66C @ =gStringVar4 - ldr r1, _0806F670 @ =gOtherText_StopTryingTo - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F674 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F678 @ =StopTryingToTeachMove_806F67C - str r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806F660: .4byte gStringVar2 -_0806F664: .4byte 0x0201c000 -_0806F668: .4byte gMoveNames -_0806F66C: .4byte gStringVar4 -_0806F670: .4byte gOtherText_StopTryingTo -_0806F674: .4byte gTasks -_0806F678: .4byte StopTryingToTeachMove_806F67C - thumb_func_end StopTryingToTeachMove_806F614 - - thumb_func_start StopTryingToTeachMove_806F67C -StopTryingToTeachMove_806F67C: @ 806F67C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806F6A8 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806F6A2 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r0, _0806F6AC @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806F6B0 @ =StopTryingToTeachMove_806F6B4 - str r0, [r1] -_0806F6A2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806F6A8: .4byte gUnknown_0202E8F6 -_0806F6AC: .4byte gTasks -_0806F6B0: .4byte StopTryingToTeachMove_806F6B4 - thumb_func_end StopTryingToTeachMove_806F67C - - thumb_func_start StopTryingToTeachMove_806F6B4 -StopTryingToTeachMove_806F6B4: @ 806F6B4 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r6, r5, 0 - bl ProcessMenuInputNoWrap_ - lsls r0, 24 - asrs r1, r0, 24 - cmp r1, 0 - bne _0806F730 - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r4, _0806F710 @ =0x0201c000 - ldr r0, [r4] - ldr r1, _0806F714 @ =gStringVar1 - bl GetMonNickname - ldr r0, _0806F718 @ =gStringVar2 - ldrh r2, [r4, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, _0806F71C @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0806F720 @ =gStringVar4 - ldr r1, _0806F724 @ =gOtherText_DidNotLearnMove2 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F728 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F72C @ =sub_806F2FC - b _0806F78E - .align 2, 0 -_0806F710: .4byte 0x0201c000 -_0806F714: .4byte gStringVar1 -_0806F718: .4byte gStringVar2 -_0806F71C: .4byte gMoveNames -_0806F720: .4byte gStringVar4 -_0806F724: .4byte gOtherText_DidNotLearnMove2 -_0806F728: .4byte gTasks -_0806F72C: .4byte sub_806F2FC -_0806F730: - cmp r1, 0x1 - beq _0806F73C - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806F790 -_0806F73C: - movs r0, 0x1 - negs r0, r0 - cmp r1, r0 - bne _0806F74A - movs r0, 0x5 - bl PlaySE -_0806F74A: - movs r0, 0x17 - movs r1, 0x8 - movs r2, 0x1D - movs r3, 0xD - bl MenuZeroFillWindowRect - ldr r4, _0806F798 @ =0x0201c000 - ldr r0, [r4] - ldr r1, _0806F79C @ =gStringVar1 - bl GetMonNickname - ldr r0, _0806F7A0 @ =gStringVar2 - ldrh r2, [r4, 0x8] - movs r1, 0xD - muls r1, r2 - ldr r2, _0806F7A4 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r4, _0806F7A8 @ =gStringVar4 - ldr r1, _0806F7AC @ =gOtherText_WantsToLearn - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806F7B0 @ =gTasks - lsls r0, r6, 2 - adds r0, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F7B4 @ =sub_806F358 -_0806F78E: - str r1, [r0] -_0806F790: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806F798: .4byte 0x0201c000 -_0806F79C: .4byte gStringVar1 -_0806F7A0: .4byte gStringVar2 -_0806F7A4: .4byte gMoveNames -_0806F7A8: .4byte gStringVar4 -_0806F7AC: .4byte gOtherText_WantsToLearn -_0806F7B0: .4byte gTasks -_0806F7B4: .4byte sub_806F358 - thumb_func_end StopTryingToTeachMove_806F6B4 - - thumb_func_start IsHMMove -IsHMMove: @ 806F7B8 - push {lr} - lsls r0, 16 - lsrs r2, r0, 16 - movs r1, 0 - ldr r3, _0806F7D4 @ =gUnknown_08376504 -_0806F7C2: - adds r0, r1, 0 - adds r0, 0x32 - lsls r0, 1 - adds r0, r3 - ldrh r0, [r0] - cmp r0, r2 - bne _0806F7D8 - movs r0, 0x1 - b _0806F7E4 - .align 2, 0 -_0806F7D4: .4byte gUnknown_08376504 -_0806F7D8: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x7 - bls _0806F7C2 - movs r0, 0 -_0806F7E4: - pop {r1} - bx r1 - thumb_func_end IsHMMove - - thumb_func_start sub_806F7E8 -sub_806F7E8: @ 806F7E8 - push {r4-r6,lr} - adds r5, r1, 0 - lsls r0, 24 - lsrs r0, 24 - lsls r3, r0, 2 - adds r3, r0 - lsls r3, 3 - ldr r0, _0806F898 @ =gTasks + 0x8 - adds r3, r0 - movs r0, 0x14 - ldrsh r1, [r3, r0] - str r1, [r5] - movs r4, 0x16 - ldrsh r0, [r3, r4] - str r0, [r5, 0x4] - movs r4, 0x18 - ldrsh r0, [r3, r4] - lsls r2, 24 - asrs r2, 24 - muls r0, r2 - str r0, [r5, 0x8] - movs r0, 0x80 - lsls r0, 1 - str r0, [r5, 0x10] - ldr r6, _0806F89C @ =0x0201b000 - ldr r2, _0806F8A0 @ =0x00000282 - adds r0, r6, r2 - movs r4, 0 - ldrsh r0, [r0, r4] - bl GetHPBarLevel - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - cmp r2, 0x2 - bls _0806F83E - ldrb r0, [r5, 0xC] - movs r1, 0x20 - negs r1, r1 - ands r1, r0 - movs r0, 0x4 - orrs r1, r0 - strb r1, [r5, 0xC] -_0806F83E: - cmp r2, 0x2 - bne _0806F850 - ldrb r0, [r5, 0xC] - movs r1, 0x20 - negs r1, r1 - ands r1, r0 - movs r0, 0x5 - orrs r1, r0 - strb r1, [r5, 0xC] -_0806F850: - cmp r3, 0x1 - bhi _0806F862 - ldrb r0, [r5, 0xC] - movs r1, 0x20 - negs r1, r1 - ands r1, r0 - movs r0, 0x6 - orrs r1, r0 - strb r1, [r5, 0xC] -_0806F862: - ldr r4, _0806F8A4 @ =gUnknown_08376858 - bl IsDoubleBattle - movs r2, 0x80 - lsls r2, 5 - adds r1, r6, r2 - ldrb r2, [r1, 0x5] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r4 - ldr r2, [r2] - ldr r4, _0806F8A8 @ =0x0000100c - adds r1, r6, r4 - adds r0, r5, 0 - movs r3, 0 - bl sub_80460C8 - lsls r0, 16 - asrs r0, 16 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0806F898: .4byte gTasks + 0x8 -_0806F89C: .4byte 0x0201b000 -_0806F8A0: .4byte 0x00000282 -_0806F8A4: .4byte gUnknown_08376858 -_0806F8A8: .4byte 0x0000100c - thumb_func_end sub_806F7E8 - - thumb_func_start sub_806F8AC -sub_806F8AC: @ 806F8AC - push {r4-r7,lr} - sub sp, 0x18 - lsls r0, 24 - lsrs r6, r0, 24 - movs r4, 0x1 - negs r4, r4 - adds r0, r6, 0 - mov r1, sp - adds r2, r4, 0 - bl sub_806F7E8 - ldr r1, _0806F8F4 @ =0x0201b000 - ldr r2, _0806F8F8 @ =0x00000282 - adds r5, r1, r2 - strh r0, [r5] - lsls r0, 16 - asrs r0, 16 - cmp r0, r4 - beq _0806F8D4 - b _0806F9F0 -_0806F8D4: - movs r0, 0x80 - lsls r0, 5 - adds r1, r0 - movs r0, 0 - str r0, [r1, 0xC] - ldr r0, [sp, 0x8] - negs r3, r0 - ldr r2, [sp, 0x4] - adds r0, r3, r2 - ldr r1, [sp] - cmp r0, r1 - ble _0806F8FC - subs r1, r2 - add r0, sp, 0x14 - strh r1, [r0] - b _0806F900 - .align 2, 0 -_0806F8F4: .4byte 0x0201b000 -_0806F8F8: .4byte 0x00000282 -_0806F8FC: - add r0, sp, 0x14 - strh r3, [r0] -_0806F900: - adds r5, r0, 0 - ldr r1, _0806F940 @ =gBattleMoveDamage - ldrh r0, [r5] - negs r0, r0 - str r0, [r1] - ldr r0, _0806F944 @ =0x0201c000 - ldr r0, [r0] - ldr r1, _0806F948 @ =gStringVar1 - bl GetMonNickname - ldr r0, _0806F94C @ =gStringVar2 - ldrh r1, [r5] - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r2, _0806F950 @ =gTasks - lsls r1, r6, 2 - adds r0, r1, r6 - lsls r0, 3 - adds r0, r2 - movs r2, 0x24 - ldrsh r0, [r0, r2] - adds r7, r1, 0 - cmp r0, 0 - bne _0806F95C - ldr r0, _0806F954 @ =gStringVar4 - ldr r1, _0806F958 @ =gOtherText_HPRestoredBy - bl StringExpandPlaceholders - b _0806F964 - .align 2, 0 -_0806F940: .4byte gBattleMoveDamage -_0806F944: .4byte 0x0201c000 -_0806F948: .4byte gStringVar1 -_0806F94C: .4byte gStringVar2 -_0806F950: .4byte gTasks -_0806F954: .4byte gStringVar4 -_0806F958: .4byte gOtherText_HPRestoredBy -_0806F95C: - ldr r0, _0806F9D4 @ =gStringVar4 - ldr r1, _0806F9D8 @ =gOtherText_RegainedHealth - bl StringExpandPlaceholders -_0806F964: - ldr r4, _0806F9DC @ =0x0201c000 - ldrb r0, [r4, 0x4] - ldrb r1, [r4, 0x5] - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - bl SetMonIconAnim - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldrb r1, [r4, 0x5] - lsls r1, 1 - adds r0, r1 - ldr r1, _0806F9E0 @ =gUnknown_083769A8 - adds r0, r1 - movs r1, 0x7 - bl task_pc_turn_off - ldr r0, _0806F9E4 @ =0xfffff261 - adds r1, r4, r0 - movs r0, 0x2 - strb r0, [r1] - ldr r0, _0806F9D4 @ =gStringVar4 - movs r1, 0x1 - bl sub_806E834 - ldr r1, [sp, 0x4] - ldrh r0, [r5] - adds r0, r1 - strh r0, [r5] - ldr r0, [r4] - movs r1, 0x39 - adds r2, r5, 0 - bl SetMonData - ldrh r0, [r4, 0x6] - movs r1, 0x1 - bl RemoveBagItem - bl sub_8032638 - ldr r1, _0806F9E8 @ =gTasks - adds r0, r7, r6 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806F9EC @ =sub_806FB44 - str r1, [r0] - b _0806FA10 - .align 2, 0 -_0806F9D4: .4byte gStringVar4 -_0806F9D8: .4byte gOtherText_RegainedHealth -_0806F9DC: .4byte 0x0201c000 -_0806F9E0: .4byte gUnknown_083769A8 -_0806F9E4: .4byte 0xfffff261 -_0806F9E8: .4byte gTasks -_0806F9EC: .4byte sub_806FB44 -_0806F9F0: - movs r2, 0x80 - lsls r2, 5 - adds r0, r1, r2 - ldrb r4, [r0, 0x5] - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r5] - ldr r3, [sp] - lsls r3, 16 - lsrs r3, 16 - adds r0, r4, 0 - bl PartyMenuDoPrintHP -_0806FA10: - add sp, 0x18 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806F8AC - - thumb_func_start sub_806FA18 -sub_806FA18: @ 806FA18 - push {r4-r7,lr} - sub sp, 0x14 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r5, 0 - mov r1, sp - movs r2, 0x1 - bl sub_806F7E8 - ldr r6, _0806FAC4 @ =0x0201b000 - ldr r1, _0806FAC8 @ =0x00000282 - adds r7, r6, r1 - strh r0, [r7] - lsls r0, 16 - asrs r0, 16 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _0806FAE4 - movs r0, 0x1 - bl PlaySE - movs r0, 0x80 - lsls r0, 5 - adds r4, r6, r0 - movs r0, 0 - str r0, [r4, 0xC] - ldr r2, _0806FACC @ =gTasks - lsls r3, r5, 2 - adds r3, r5 - lsls r3, 3 - adds r5, r3, r2 - ldrh r0, [r5, 0x1E] - ldrh r1, [r5, 0x20] - subs r0, r1 - strh r0, [r5, 0x1E] - ldr r0, [r4] - adds r2, r3 - adds r2, 0x1E - movs r1, 0x39 - bl SetMonData - ldrb r0, [r4, 0x4] - ldr r1, _0806FAD0 @ =0xfffe6000 - adds r6, r1 - ldrb r1, [r6, 0x1] - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r1, [r4] - bl SetMonIconAnim - ldr r2, _0806FAD4 @ =gSprites - ldrb r1, [r6, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x2E] - strb r0, [r4, 0x5] - ldrb r1, [r4, 0x5] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0806FAD8 @ =gPlayerParty - adds r0, r1 - str r0, [r4] - movs r1, 0x3A - bl GetMonData - strh r0, [r5, 0x1C] - ldr r0, [r4] - movs r1, 0x39 - bl GetMonData - strh r0, [r5, 0x1E] - ldr r0, _0806FADC @ =0xffff8000 - str r0, [r4, 0xC] - ldr r0, [r4, 0x10] - str r0, [r4, 0x14] - ldr r0, _0806FAE0 @ =sub_806F8AC - str r0, [r5] - ldrh r0, [r5, 0x1E] - strh r0, [r7] - b _0806FB04 - .align 2, 0 -_0806FAC4: .4byte 0x0201b000 -_0806FAC8: .4byte 0x00000282 -_0806FACC: .4byte gTasks -_0806FAD0: .4byte 0xfffe6000 -_0806FAD4: .4byte gSprites -_0806FAD8: .4byte gPlayerParty -_0806FADC: .4byte 0xffff8000 -_0806FAE0: .4byte sub_806F8AC -_0806FAE4: - movs r1, 0x80 - lsls r1, 5 - adds r0, r6, r1 - ldrb r4, [r0, 0x5] - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldrh r2, [r7] - ldr r3, [sp] - lsls r3, 16 - lsrs r3, 16 - adds r0, r4, 0 - bl PartyMenuDoPrintHP -_0806FB04: - add sp, 0x14 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_806FA18 - - thumb_func_start sub_806FB0C -sub_806FB0C: @ 806FB0C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806FB38 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806FB32 - ldr r3, _0806FB3C @ =gTasks - ldr r2, _0806FB40 @ =0x0201c000 - ldrb r1, [r2, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r3 - ldr r1, [r2, 0x10] - str r1, [r0] - adds r0, r4, 0 - bl DestroyTask -_0806FB32: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806FB38: .4byte gUnknown_0202E8F6 -_0806FB3C: .4byte gTasks -_0806FB40: .4byte 0x0201c000 - thumb_func_end sub_806FB0C - - thumb_func_start sub_806FB44 -sub_806FB44: @ 806FB44 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806FB70 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _0806FB6A - ldr r3, _0806FB74 @ =gTasks - ldr r2, _0806FB78 @ =0x0201c000 - ldrb r1, [r2, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r3 - ldr r1, [r2, 0x14] - str r1, [r0] - adds r0, r4, 0 - bl DestroyTask -_0806FB6A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806FB70: .4byte gUnknown_0202E8F6 -_0806FB74: .4byte gTasks -_0806FB78: .4byte 0x0201c000 - thumb_func_end sub_806FB44 - - thumb_func_start IsHPRecoveryItem -IsHPRecoveryItem: @ 806FB7C - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0xAF - bne _0806FB90 - ldr r0, _0806FB8C @ =gSaveBlock1 + 0x3676 - b _0806FB9A - .align 2, 0 -_0806FB8C: .4byte gSaveBlock1 + 0x3676 -_0806FB90: - ldr r1, _0806FBA8 @ =gItemEffectTable - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_0806FB9A: - ldrb r1, [r0, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - bne _0806FBAC - movs r0, 0 - b _0806FBAE - .align 2, 0 -_0806FBA8: .4byte gItemEffectTable -_0806FBAC: - movs r0, 0x1 -_0806FBAE: - pop {r1} - bx r1 - thumb_func_end IsHPRecoveryItem - - thumb_func_start PartyMenuUpdateLevelOrStatus -PartyMenuUpdateLevelOrStatus: @ 806FBB4 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r1, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl PartyMenuClearLevelStatusTilemap - adds r0, r4, 0 - adds r1, r5, 0 - bl PartyMenuPrintMonLevelOrStatus - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end PartyMenuUpdateLevelOrStatus - - thumb_func_start GetMedicineItemEffectMessage -GetMedicineItemEffectMessage: @ 806FBD0 - push {lr} - lsls r0, 16 - lsrs r0, 16 - bl GetItemEffectType - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x3 - cmp r0, 0x12 - bls _0806FBE6 - b _0806FD7C -_0806FBE6: - lsls r0, 2 - ldr r1, _0806FBF0 @ =_0806FBF4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0806FBF0: .4byte _0806FBF4 - .align 2, 0 -_0806FBF4: - .4byte _0806FC40 - .4byte _0806FC54 - .4byte _0806FC68 - .4byte _0806FC7C - .4byte _0806FC90 - .4byte _0806FCA4 - .4byte _0806FCB8 - .4byte _0806FD7C - .4byte _0806FCCC - .4byte _0806FCF0 - .4byte _0806FCE0 - .4byte _0806FD20 - .4byte _0806FD30 - .4byte _0806FD10 - .4byte _0806FD00 - .4byte _0806FD7C - .4byte _0806FD54 - .4byte _0806FD54 - .4byte _0806FD68 -_0806FC40: - ldr r0, _0806FC4C @ =gStringVar4 - ldr r1, _0806FC50 @ =gOtherText_CuredPoisoning - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FC4C: .4byte gStringVar4 -_0806FC50: .4byte gOtherText_CuredPoisoning -_0806FC54: - ldr r0, _0806FC60 @ =gStringVar4 - ldr r1, _0806FC64 @ =gOtherText_WokeUp - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FC60: .4byte gStringVar4 -_0806FC64: .4byte gOtherText_WokeUp -_0806FC68: - ldr r0, _0806FC74 @ =gStringVar4 - ldr r1, _0806FC78 @ =gOtherText_BurnHealed - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FC74: .4byte gStringVar4 -_0806FC78: .4byte gOtherText_BurnHealed -_0806FC7C: - ldr r0, _0806FC88 @ =gStringVar4 - ldr r1, _0806FC8C @ =gOtherText_ThawedOut - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FC88: .4byte gStringVar4 -_0806FC8C: .4byte gOtherText_ThawedOut -_0806FC90: - ldr r0, _0806FC9C @ =gStringVar4 - ldr r1, _0806FCA0 @ =gOtherText_CuredParalysis - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FC9C: .4byte gStringVar4 -_0806FCA0: .4byte gOtherText_CuredParalysis -_0806FCA4: - ldr r0, _0806FCB0 @ =gStringVar4 - ldr r1, _0806FCB4 @ =gOtherText_SnapConfusion - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FCB0: .4byte gStringVar4 -_0806FCB4: .4byte gOtherText_SnapConfusion -_0806FCB8: - ldr r0, _0806FCC4 @ =gStringVar4 - ldr r1, _0806FCC8 @ =gOtherText_GotOverLove - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FCC4: .4byte gStringVar4 -_0806FCC8: .4byte gOtherText_GotOverLove -_0806FCCC: - ldr r0, _0806FCD8 @ =gStringVar4 - ldr r1, _0806FCDC @ =gOtherText_BecameHealthy - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FCD8: .4byte gStringVar4 -_0806FCDC: .4byte gOtherText_BecameHealthy -_0806FCE0: - ldr r0, _0806FCE8 @ =gStringVar2 - ldr r1, _0806FCEC @ =gOtherText_Hp2 - b _0806FD34 - .align 2, 0 -_0806FCE8: .4byte gStringVar2 -_0806FCEC: .4byte gOtherText_Hp2 -_0806FCF0: - ldr r0, _0806FCF8 @ =gStringVar2 - ldr r1, _0806FCFC @ =gOtherText_Attack - b _0806FD34 - .align 2, 0 -_0806FCF8: .4byte gStringVar2 -_0806FCFC: .4byte gOtherText_Attack -_0806FD00: - ldr r0, _0806FD08 @ =gStringVar2 - ldr r1, _0806FD0C @ =gOtherText_Defense - b _0806FD34 - .align 2, 0 -_0806FD08: .4byte gStringVar2 -_0806FD0C: .4byte gOtherText_Defense -_0806FD10: - ldr r0, _0806FD18 @ =gStringVar2 - ldr r1, _0806FD1C @ =gOtherText_Speed - b _0806FD34 - .align 2, 0 -_0806FD18: .4byte gStringVar2 -_0806FD1C: .4byte gOtherText_Speed -_0806FD20: - ldr r0, _0806FD28 @ =gStringVar2 - ldr r1, _0806FD2C @ =gOtherText_SpAtk2 - b _0806FD34 - .align 2, 0 -_0806FD28: .4byte gStringVar2 -_0806FD2C: .4byte gOtherText_SpAtk2 -_0806FD30: - ldr r0, _0806FD44 @ =gStringVar2 - ldr r1, _0806FD48 @ =gOtherText_SpDef2 -_0806FD34: - bl StringCopy - ldr r0, _0806FD4C @ =gStringVar4 - ldr r1, _0806FD50 @ =gOtherText_WasRaised - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FD44: .4byte gStringVar2 -_0806FD48: .4byte gOtherText_SpDef2 -_0806FD4C: .4byte gStringVar4 -_0806FD50: .4byte gOtherText_WasRaised -_0806FD54: - ldr r0, _0806FD60 @ =gStringVar4 - ldr r1, _0806FD64 @ =gOtherText_PPIncreased - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FD60: .4byte gStringVar4 -_0806FD64: .4byte gOtherText_PPIncreased -_0806FD68: - ldr r0, _0806FD74 @ =gStringVar4 - ldr r1, _0806FD78 @ =gOtherText_PPRestored - bl StringExpandPlaceholders - b _0806FD84 - .align 2, 0 -_0806FD74: .4byte gStringVar4 -_0806FD78: .4byte gOtherText_PPRestored -_0806FD7C: - ldr r0, _0806FD88 @ =gStringVar4 - ldr r1, _0806FD8C @ =gOtherText_WontHaveAnyEffect - bl StringExpandPlaceholders -_0806FD84: - pop {r0} - bx r0 - .align 2, 0 -_0806FD88: .4byte gStringVar4 -_0806FD8C: .4byte gOtherText_WontHaveAnyEffect - thumb_func_end GetMedicineItemEffectMessage - - thumb_func_start IsMedicineIneffective -IsMedicineIneffective: @ 806FD90 - 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 _0806FDBC - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - ldr r1, _0806FDB8 @ =0x0000012f - cmp r0, r1 - bne _0806FDBC - movs r0, 0x1 - b _0806FDBE - .align 2, 0 -_0806FDB8: .4byte 0x0000012f -_0806FDBC: - movs r0, 0 -_0806FDBE: - pop {r4} - pop {r1} - bx r1 - thumb_func_end IsMedicineIneffective - - thumb_func_start ExecuteTableBasedItemEffect__ -ExecuteTableBasedItemEffect__: @ 806FDC4 - 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, _0806FDF0 @ =gMain - ldr r1, _0806FDF4 @ =0x0000043d - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - bne _0806FDFC - movs r0, 0x64 - muls r0, r3 - ldr r1, _0806FDF8 @ =gPlayerParty - adds r0, r1 - adds r1, r5, 0 - adds r2, r3, 0 - b _0806FE16 - .align 2, 0 -_0806FDF0: .4byte gMain -_0806FDF4: .4byte 0x0000043d -_0806FDF8: .4byte gPlayerParty -_0806FDFC: - movs r0, 0x64 - adds r4, r3, 0 - muls r4, r0 - ldr r0, _0806FE28 @ =gPlayerParty - adds r4, r0 - adds r0, r3, 0 - bl sub_8094C20 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r4, 0 - adds r1, r5, 0 -_0806FE16: - adds r3, r6, 0 - bl ExecuteTableBasedItemEffect_ - lsls r0, 24 - lsrs r0, 24 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0806FE28: .4byte gPlayerParty - thumb_func_end ExecuteTableBasedItemEffect__ - - thumb_func_start UseMedicine -UseMedicine: @ 806FE2C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - adds r4, r0, 0 - adds r5, r2, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r1, 16 - lsrs r6, r1, 16 - movs r0, 0 - mov r9, r0 - ldr r1, _0806FED4 @ =gTasks - mov r10, r1 - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - add r1, r10 - ldr r0, _0806FED8 @ =TaskDummy - str r0, [r1] - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r7, r0, 24 - adds r0, r4, 0 - adds r1, r6, 0 - adds r2, r5, 0 - bl sub_806E8D0 - ldr r5, _0806FEDC @ =0x0201c000 - ldr r0, [r5] - adds r1, r6, 0 - bl IsMedicineIneffective - lsls r0, 24 - cmp r0, 0 - bne _0806FEE0 - adds r0, r6, 0 - bl IsHPRecoveryItem - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r2, r7, 2 - mov r8, r2 - cmp r0, 0x1 - bne _0806FEC2 - ldr r0, [r5] - movs r1, 0x3A - bl GetMonData - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - mov r2, r10 - adds r4, r1, r2 - strh r0, [r4, 0x1C] - ldr r0, [r5] - movs r1, 0x39 - bl GetMonData - strh r0, [r4, 0x1E] - movs r3, 0x1C - ldrsh r1, [r4, r3] - lsls r0, 16 - asrs r0, 16 - cmp r1, r0 - bne _0806FEC2 - movs r0, 0 - mov r9, r0 - mov r1, r9 - strh r1, [r4, 0x1C] - strh r1, [r4, 0x1E] -_0806FEC2: - ldr r0, _0806FEDC @ =0x0201c000 - ldrb r0, [r0, 0x5] - adds r1, r6, 0 - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - lsrs r0, 24 - b _0806FEE6 - .align 2, 0 -_0806FED4: .4byte gTasks -_0806FED8: .4byte TaskDummy -_0806FEDC: .4byte 0x0201c000 -_0806FEE0: - movs r0, 0x1 - lsls r2, r7, 2 - mov r8, r2 -_0806FEE6: - cmp r0, 0 - beq _0806FF14 - ldr r1, _0806FF08 @ =gUnknown_0202E8F4 - movs r0, 0 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldr r0, _0806FF0C @ =gOtherText_WontHaveAnyEffect - movs r1, 0x1 - bl sub_806E834 - ldr r1, _0806FF10 @ =gTasks - mov r3, r8 - adds r0, r3, r7 - b _08070002 - .align 2, 0 -_0806FF08: .4byte gUnknown_0202E8F4 -_0806FF0C: .4byte gOtherText_WontHaveAnyEffect -_0806FF10: .4byte gTasks -_0806FF14: - ldr r1, _0806FF30 @ =gUnknown_0202E8F4 - movs r0, 0x1 - strb r0, [r1] - adds r0, r6, 0 - bl IsBlueYellowRedFlute - lsls r0, 24 - cmp r0, 0 - bne _0806FF34 - movs r0, 0x1 - bl PlaySE - b _0806FF3A - .align 2, 0 -_0806FF30: .4byte gUnknown_0202E8F4 -_0806FF34: - movs r0, 0x75 - bl PlaySE -_0806FF3A: - ldr r4, _0806FF88 @ =0x0201c000 - ldr r0, [r4] - bl GetMonStatusAndPokerus - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - beq _0806FF4E - cmp r0, 0 - bne _0806FF56 -_0806FF4E: - ldr r0, [r4] - ldrb r1, [r4, 0x5] - bl PartyMenuUpdateLevelOrStatus -_0806FF56: - mov r0, r9 - cmp r0, 0x1 - bne _0806FFC8 - ldr r4, _0806FF88 @ =0x0201c000 - ldr r0, [r4] - movs r1, 0x39 - bl GetMonData - ldr r2, _0806FF8C @ =gTasks - mov r3, r8 - adds r1, r3, r7 - lsls r1, 3 - adds r2, r1, r2 - ldrh r1, [r2, 0x1E] - subs r0, r1 - strh r0, [r2, 0x20] - ldr r0, _0806FF90 @ =0xffff8000 - str r0, [r4, 0xC] - movs r1, 0x1E - ldrsh r0, [r2, r1] - cmp r0, 0 - bne _0806FF94 - mov r3, r9 - strh r3, [r2, 0x24] - b _0806FF98 - .align 2, 0 -_0806FF88: .4byte 0x0201c000 -_0806FF8C: .4byte gTasks -_0806FF90: .4byte 0xffff8000 -_0806FF94: - movs r0, 0 - strh r0, [r2, 0x24] -_0806FF98: - ldr r2, _0806FFB8 @ =0x0201c000 - ldr r0, [r2, 0x10] - str r0, [r2, 0x14] - ldr r1, _0806FFBC @ =gTasks - mov r3, r8 - adds r0, r3, r7 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806FFC0 @ =sub_806F8AC - str r1, [r0] - ldrh r0, [r0, 0x1E] - ldr r1, _0806FFC4 @ =0xfffff282 - adds r2, r1 - strh r0, [r2] - b _0807000A - .align 2, 0 -_0806FFB8: .4byte 0x0201c000 -_0806FFBC: .4byte gTasks -_0806FFC0: .4byte sub_806F8AC -_0806FFC4: .4byte 0xfffff282 -_0806FFC8: - ldr r4, _08070018 @ =0x0201c000 - ldr r0, [r4] - ldr r1, _0807001C @ =gStringVar1 - bl GetMonNickname - adds r0, r6, 0 - bl IsBlueYellowRedFlute - lsls r0, 24 - cmp r0, 0 - bne _0806FFE6 - adds r0, r6, 0 - movs r1, 0x1 - bl RemoveBagItem -_0806FFE6: - adds r0, r6, 0 - bl GetMedicineItemEffectMessage - ldrb r0, [r4, 0x5] - ldr r1, [r4] - bl TryPrintPartyMenuMonNickname - ldr r0, _08070020 @ =gStringVar4 - movs r1, 0x1 - bl sub_806E834 - ldr r1, _08070024 @ =gTasks - mov r2, r8 - adds r0, r2, r7 -_08070002: - lsls r0, 3 - adds r0, r1 - ldr r1, _08070028 @ =sub_806FB0C - str r1, [r0] -_0807000A: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08070018: .4byte 0x0201c000 -_0807001C: .4byte gStringVar1 -_08070020: .4byte gStringVar4 -_08070024: .4byte gTasks -_08070028: .4byte sub_806FB0C - thumb_func_end UseMedicine - - thumb_func_start IsBlueYellowRedFlute -IsBlueYellowRedFlute: @ 807002C - push {lr} - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x27 - beq _0807003E - cmp r0, 0x29 - beq _0807003E - cmp r0, 0x28 - bne _08070042 -_0807003E: - movs r0, 0x1 - b _08070044 -_08070042: - movs r0, 0 -_08070044: - pop {r1} - bx r1 - thumb_func_end IsBlueYellowRedFlute - - thumb_func_start sub_8070048 -sub_8070048: @ 8070048 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r3, _08070078 @ =0x0201c000 - str r2, [r3, 0x10] - movs r4, 0 - strb r0, [r3, 0x4] - movs r2, 0 - strh r1, [r3, 0x6] - strb r2, [r3, 0x5] - ldr r1, _0807007C @ =sub_80701DC - str r1, [r3, 0x14] - ldr r2, _08070080 @ =0xfffff27e - adds r1, r3, r2 - strh r4, [r1] - ldr r1, _08070084 @ =0xfffff280 - adds r3, r1 - strh r4, [r3] - bl sub_8070088 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08070078: .4byte 0x0201c000 -_0807007C: .4byte sub_80701DC -_08070080: .4byte 0xfffff27e -_08070084: .4byte 0xfffff280 - thumb_func_end sub_8070048 - - .section .text_80701DC - - thumb_func_start sub_80701DC -sub_80701DC: @ 80701DC - push {r4-r7,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r6, _08070280 @ =0x0201b000 - ldr r0, _08070284 @ =0x0000027e - adds r7, r6, r0 - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r0, 0x1 - bne _0807023E - movs r0, 0x80 - lsls r0, 5 - adds r4, r6, r0 - ldrh r0, [r4, 0x6] - movs r1, 0x1 - bl AddBagItem - ldrb r1, [r4, 0x5] - movs r0, 0x64 - muls r0, r1 - ldr r1, _08070288 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0807023A - bl IsDoubleBattle - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldrb r1, [r4, 0x5] - lsls r1, 1 - adds r0, r1 - ldr r1, _0807028C @ =gUnknown_083769A8 - adds r0, r1 - movs r1, 0x3 - bl task_pc_turn_off - ldr r0, _08070290 @ =0x00000261 - adds r1, r6, r0 - movs r0, 0x2 - strb r0, [r1] -_0807023A: - movs r0, 0 - strh r0, [r7] -_0807023E: - ldr r4, _08070294 @ =0x0201c000 - ldrb r0, [r4, 0x5] - adds r0, 0x1 - strb r0, [r4, 0x5] - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x6 - bne _080702D8 - ldr r1, _08070298 @ =gUnknown_0202E8F4 - movs r0, 0 - strb r0, [r1] - ldr r1, _0807029C @ =0xfffff280 - adds r0, r4, r1 - movs r1, 0 - ldrsh r0, [r0, r1] - cmp r0, 0 - bne _080702B0 - ldr r1, _080702A0 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, _080702A4 @ =TaskDummy - str r1, [r0] - ldr r0, _080702A8 @ =gOtherText_WontHaveAnyEffect - movs r1, 0x1 - bl sub_806E834 - ldr r0, _080702AC @ =sub_806FB0C - movs r1, 0x8 - bl CreateTask - b _080702C6 - .align 2, 0 -_08070280: .4byte 0x0201b000 -_08070284: .4byte 0x0000027e -_08070288: .4byte gPlayerParty -_0807028C: .4byte gUnknown_083769A8 -_08070290: .4byte 0x00000261 -_08070294: .4byte 0x0201c000 -_08070298: .4byte gUnknown_0202E8F4 -_0807029C: .4byte 0xfffff280 -_080702A0: .4byte gTasks -_080702A4: .4byte TaskDummy -_080702A8: .4byte gOtherText_WontHaveAnyEffect -_080702AC: .4byte sub_806FB0C -_080702B0: - ldrh r0, [r4, 0x6] - movs r1, 0x1 - bl RemoveBagItem - ldr r1, _080702D0 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldr r1, [r4, 0x10] - str r1, [r0] -_080702C6: - ldr r1, _080702D4 @ =gLastFieldPokeMenuOpened - movs r0, 0 - strb r0, [r1] - b _080702DE - .align 2, 0 -_080702D0: .4byte gTasks -_080702D4: .4byte gLastFieldPokeMenuOpened -_080702D8: - adds r0, r5, 0 - bl sub_8070088 -_080702DE: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80701DC - - thumb_func_start CreateItemUseMoveMenu -CreateItemUseMoveMenu: @ 80702E4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r6, 0 - movs r0, 0x13 - movs r1, 0xA - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - movs r5, 0 - movs r0, 0x64 - adds r7, r4, 0 - muls r7, r0 - ldr r0, _0807036C @ =gPlayerParty - mov r8, r0 -_0807030C: - adds r1, r5, 0 - adds r1, 0xD - mov r2, r8 - adds r0, r7, r2 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - movs r0, 0xD - muls r0, r4 - ldr r1, _08070370 @ =gMoveNames - adds r0, r1 - lsls r2, r5, 25 - movs r1, 0xB0 - lsls r1, 20 - adds r2, r1 - lsrs r2, 24 - movs r1, 0x14 - bl MenuPrint - cmp r4, 0 - beq _08070340 - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 -_08070340: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _0807030C - movs r0, 0 - str r0, [sp] - movs r0, 0x9 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x14 - movs r2, 0xB - adds r3, r6, 0 - bl InitMenu - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807036C: .4byte gPlayerParty -_08070370: .4byte gMoveNames - thumb_func_end CreateItemUseMoveMenu - - thumb_func_start Task_HandleItemUseMoveMenuInput -Task_HandleItemUseMoveMenuInput: @ 8070374 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - adds r4, r2, 0 - ldr r0, _08070398 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0807039C - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - b _080703E4 - .align 2, 0 -_08070398: .4byte gMain -_0807039C: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _080703B2 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl MoveMenuCursor - b _080703E4 -_080703B2: - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080703CC - ldr r0, _080703C8 @ =gUnknown_08376B54 - ldr r1, [r0] - adds r0, r2, 0 - bl _call_via_r1 - b _080703E4 - .align 2, 0 -_080703C8: .4byte gUnknown_08376B54 -_080703CC: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080703E4 - movs r0, 0x5 - bl PlaySE - ldr r0, _080703EC @ =gUnknown_08376B54 - ldr r1, [r0, 0x4] - adds r0, r4, 0 - bl _call_via_r1 -_080703E4: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080703EC: .4byte gUnknown_08376B54 - thumb_func_end Task_HandleItemUseMoveMenuInput - - thumb_func_start DoPPRecoveryItemEffect -DoPPRecoveryItemEffect: @ 80703F0 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - mov r9, r2 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsrs r5, r1, 16 - cmp r5, 0xAF - bne _08070410 - ldr r0, _0807040C @ =gSaveBlock1 + 0x3676 - b _0807041C - .align 2, 0 -_0807040C: .4byte gSaveBlock1 + 0x3676 -_08070410: - ldr r1, _08070464 @ =gItemEffectTable - adds r0, r5, 0 - subs r0, 0xD - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] -_0807041C: - mov r8, r0 - ldr r7, _08070468 @ =gTasks - lsls r1, r6, 2 - adds r1, r6 - lsls r1, 3 - adds r1, r7 - ldr r0, _0807046C @ =TaskDummy - str r0, [r1] - movs r1, 0x5 - bl CreateTask - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r6, 0 - adds r1, r5, 0 - mov r2, r9 - bl sub_806E8D0 - mov r0, r8 - ldrb r1, [r0, 0x4] - movs r0, 0x10 - ands r0, r1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - bne _08070470 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r7 - strh r1, [r0, 0x1E] - adds r0, r4, 0 - bl DoRecoverPP - b _08070498 - .align 2, 0 -_08070464: .4byte gItemEffectTable -_08070468: .4byte gTasks -_0807046C: .4byte TaskDummy -_08070470: - movs r0, 0x5 - bl PlaySE - movs r0, 0xA - movs r1, 0x3 - bl sub_806D538 - ldr r0, _080704A4 @ =0x0201c000 - ldrb r0, [r0, 0x5] - bl CreateItemUseMoveMenu - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r7 - ldr r1, _080704A8 @ =Task_HandleItemUseMoveMenuInput - str r1, [r0] - ldr r1, _080704AC @ =gMain - movs r0, 0 - strh r0, [r1, 0x2E] -_08070498: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080704A4: .4byte 0x0201c000 -_080704A8: .4byte Task_HandleItemUseMoveMenuInput -_080704AC: .4byte gMain - thumb_func_end DoPPRecoveryItemEffect - - thumb_func_start ItemUseMoveMenu_HandleMoveSelection -ItemUseMoveMenu_HandleMoveSelection: @ 80704B0 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - movs r0, 0x13 - movs r1, 0xA - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - bl sub_806D5A4 - bl GetMenuCursorPos - ldr r2, _080704EC @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r2 - lsls r0, 24 - lsrs r0, 24 - strh r0, [r1, 0x1E] - adds r0, r4, 0 - bl DoRecoverPP - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080704EC: .4byte gTasks - thumb_func_end ItemUseMoveMenu_HandleMoveSelection - - thumb_func_start ItemUseMoveMenu_HandleCancel -ItemUseMoveMenu_HandleCancel: @ 80704F0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl HandleDestroyMenuCursors - movs r0, 0x13 - movs r1, 0xA - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r0, _08070528 @ =gMain - ldr r1, _0807052C @ =0x0000043d - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0807053C - ldr r2, _08070530 @ =gTasks - ldr r0, _08070534 @ =0x0201c000 - ldrb r1, [r0, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, _08070538 @ =SetUpBattlePokemonMenu - b _0807054C - .align 2, 0 -_08070528: .4byte gMain -_0807052C: .4byte 0x0000043d -_08070530: .4byte gTasks -_08070534: .4byte 0x0201c000 -_08070538: .4byte SetUpBattlePokemonMenu -_0807053C: - ldr r2, _08070564 @ =gTasks - ldr r0, _08070568 @ =0x0201c000 - ldrb r1, [r0, 0x4] - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 3 - adds r0, r2 - ldr r1, _0807056C @ =sub_808B0C0 -_0807054C: - str r1, [r0] - movs r0, 0x3 - movs r1, 0 - bl sub_806D538 - adds r0, r4, 0 - bl DestroyTask - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_08070564: .4byte gTasks -_08070568: .4byte 0x0201c000 -_0807056C: .4byte sub_808B0C0 - thumb_func_end ItemUseMoveMenu_HandleCancel - - thumb_func_start DoRecoverPP -DoRecoverPP: @ 8070570 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r5, 0 - ldr r6, _080705A8 @ =0x0201c000 - ldrb r0, [r6, 0x5] - ldrh r1, [r6, 0x6] - ldr r3, _080705AC @ =gTasks - lsls r2, r4, 2 - adds r2, r4 - lsls r2, 3 - adds r7, r2, r3 - ldrb r2, [r7, 0x1E] - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - cmp r0, 0 - beq _080705B8 - ldr r0, _080705B0 @ =gUnknown_0202E8F4 - strb r5, [r0] - movs r0, 0x5 - bl PlaySE - ldr r0, _080705B4 @ =gOtherText_WontHaveAnyEffect - movs r1, 0x1 - bl sub_806E834 - b _080705F8 - .align 2, 0 -_080705A8: .4byte 0x0201c000 -_080705AC: .4byte gTasks -_080705B0: .4byte gUnknown_0202E8F4 -_080705B4: .4byte gOtherText_WontHaveAnyEffect -_080705B8: - ldr r1, _0807060C @ =gUnknown_0202E8F4 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0x1 - bl PlaySE - ldrh r0, [r6, 0x6] - movs r1, 0x1 - bl RemoveBagItem - ldr r0, [r6] - movs r2, 0x1E - ldrsh r1, [r7, r2] - adds r1, 0xD - bl GetMonData - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, _08070610 @ =gStringVar1 - movs r1, 0xD - muls r1, r5 - ldr r2, _08070614 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldrh r0, [r6, 0x6] - bl GetMedicineItemEffectMessage - ldr r0, _08070618 @ =gStringVar4 - movs r1, 0x1 - bl sub_806E834 -_080705F8: - ldr r0, _0807061C @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08070620 @ =sub_806FB0C - str r0, [r1] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0807060C: .4byte gUnknown_0202E8F4 -_08070610: .4byte gStringVar1 -_08070614: .4byte gMoveNames -_08070618: .4byte gStringVar4 -_0807061C: .4byte gTasks -_08070620: .4byte sub_806FB0C - thumb_func_end DoRecoverPP - - thumb_func_start DoPPUpItemEffect -DoPPUpItemEffect: @ 8070624 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r1, 16 - ldr r4, _0807066C @ =gTasks - lsls r3, r0, 2 - adds r3, r0 - lsls r3, 3 - adds r3, r4 - ldr r4, _08070670 @ =TaskDummy - str r4, [r3] - bl sub_806E8D0 - movs r0, 0x5 - bl PlaySE - movs r0, 0xB - movs r1, 0x3 - bl sub_806D538 - ldr r0, _08070674 @ =0x0201c000 - ldrb r0, [r0, 0x5] - bl CreateItemUseMoveMenu - ldr r0, _08070678 @ =Task_HandleItemUseMoveMenuInput - movs r1, 0x5 - bl CreateTask - ldr r1, _0807067C @ =gMain - movs r0, 0 - strh r0, [r1, 0x2E] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807066C: .4byte gTasks -_08070670: .4byte TaskDummy -_08070674: .4byte 0x0201c000 -_08070678: .4byte Task_HandleItemUseMoveMenuInput -_0807067C: .4byte gMain - thumb_func_end DoPPUpItemEffect - - thumb_func_start DoRareCandyItemEffect -DoRareCandyItemEffect: @ 8070680 - push {r4-r7,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 16 - lsrs r6, r1, 16 - ldr r3, _080706E0 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r3 - ldr r3, _080706E4 @ =TaskDummy - str r3, [r1] - adds r1, r6, 0 - bl sub_806E8D0 - ldr r5, _080706E8 @ =0x0201c000 - ldr r0, [r5] - movs r1, 0x38 - bl GetMonData - cmp r0, 0x64 - beq _080706F4 - movs r4, 0 - ldr r0, _080706EC @ =0xfffff264 - adds r7, r5, r0 -_080706B2: - ldr r0, [r5] - ldr r1, _080706F0 @ =gUnknown_08376D1C - adds r1, r4, r1 - ldrb r1, [r1] - bl GetMonData - lsls r1, r4, 1 - adds r1, r7, r1 - strh r0, [r1] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x5 - bls _080706B2 - ldr r0, _080706E8 @ =0x0201c000 - ldrb r0, [r0, 0x5] - adds r1, r6, 0 - movs r2, 0 - bl ExecuteTableBasedItemEffect__ - lsls r0, 24 - lsrs r0, 24 - b _080706F6 - .align 2, 0 -_080706E0: .4byte gTasks -_080706E4: .4byte TaskDummy -_080706E8: .4byte 0x0201c000 -_080706EC: .4byte 0xfffff264 -_080706F0: .4byte gUnknown_08376D1C -_080706F4: - movs r0, 0x1 -_080706F6: - cmp r0, 0 - beq _08070724 - ldr r1, _08070718 @ =gUnknown_0202E8F4 - movs r0, 0 - strb r0, [r1] - movs r0, 0x5 - bl PlaySE - ldr r0, _0807071C @ =gOtherText_WontHaveAnyEffect - movs r1, 0x1 - bl sub_806E834 - ldr r0, _08070720 @ =sub_806FB0C - movs r1, 0x5 - bl CreateTask - b _0807077C - .align 2, 0 -_08070718: .4byte gUnknown_0202E8F4 -_0807071C: .4byte gOtherText_WontHaveAnyEffect -_08070720: .4byte sub_806FB0C -_08070724: - ldr r1, _08070784 @ =gUnknown_0202E8F4 - movs r0, 0x1 - strb r0, [r1] - movs r0, 0 - bl PlayFanfareByFanfareNum - ldr r4, _08070788 @ =0x0201c000 - ldrb r0, [r4, 0x5] - ldr r1, [r4] - bl sub_8070A20 - adds r0, r6, 0 - movs r1, 0x1 - bl RemoveBagItem - ldr r0, [r4] - ldr r1, _0807078C @ =gStringVar1 - bl GetMonNickname - ldr r0, [r4] - movs r1, 0x38 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - ldr r0, _08070790 @ =gStringVar2 - movs r2, 0 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, _08070794 @ =gStringVar4 - ldr r1, _08070798 @ =gOtherText_ElevatedTo - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806E834 - ldr r0, _0807079C @ =Task_RareCandy1 - movs r1, 0x5 - bl CreateTask -_0807077C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08070784: .4byte gUnknown_0202E8F4 -_08070788: .4byte 0x0201c000 -_0807078C: .4byte gStringVar1 -_08070790: .4byte gStringVar2 -_08070794: .4byte gStringVar4 -_08070798: .4byte gOtherText_ElevatedTo -_0807079C: .4byte Task_RareCandy1 - thumb_func_end DoRareCandyItemEffect - - thumb_func_start Task_RareCandy1 -Task_RareCandy1: @ 80707A0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - bl WaitFanfare - lsls r0, 24 - cmp r0, 0 - beq _080707E8 - ldr r0, _080707F0 @ =gUnknown_0202E8F6 - ldrb r0, [r0] - cmp r0, 0 - bne _080707E8 - ldr r0, _080707F4 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080707CE - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080707E8 -_080707CE: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_8070848 - ldr r0, _080707F8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _080707FC @ =Task_RareCandy2 - str r0, [r1] -_080707E8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080707F0: .4byte gUnknown_0202E8F6 -_080707F4: .4byte gMain -_080707F8: .4byte gTasks -_080707FC: .4byte Task_RareCandy2 - thumb_func_end Task_RareCandy1 - - thumb_func_start Task_RareCandy2 -Task_RareCandy2: @ 8070800 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0807083C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _0807081A - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _08070834 -_0807081A: - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_8070968 - ldr r0, _08070840 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _08070844 @ =Task_RareCandy3 - str r0, [r1] -_08070834: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0807083C: .4byte gMain -_08070840: .4byte gTasks -_08070844: .4byte Task_RareCandy3 - thumb_func_end Task_RareCandy2 - .section .text_8070968 thumb_func_start sub_8070968 diff --git a/asm/player_pc.s b/asm/player_pc.s deleted file mode 100644 index baf0a701f..000000000 --- a/asm/player_pc.s +++ /dev/null @@ -1,1027 +0,0 @@ - .include "constants/gba_constants.inc" - .include "constants/species_constants.inc" - .include "asm/macros.inc" - - .syntax unified - - .text - - thumb_func_start sub_813AF78 -sub_813AF78: @ 813AF78 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x24 - movs r2, 0x6 -_0813AF86: - adds r1, r2, 0x1 - lsls r0, r1, 24 - lsrs r3, r0, 24 - mov r10, r1 - cmp r3, 0xF - bhi _0813AFF4 - ldr r0, _0813B010 @ =gSaveBlock1 - mov r12, r0 - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - add r0, r12 - ldr r1, _0813B014 @ =0x00002b6c - adds r1, r0 - mov r8, r1 - ldr r2, _0813B018 @ =0x00002b4c - mov r9, r2 - adds r4, r0, r2 -_0813AFAA: - mov r5, r8 - ldrh r0, [r5] - cmp r0, 0 - bne _0813AFEA - mov r1, sp - adds r0, r4, 0 - ldm r0!, {r2,r6,r7} - stm r1!, {r2,r6,r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r2,r5,r6} - stm r1!, {r2,r5,r6} - lsls r2, r3, 3 - adds r2, r3 - lsls r2, 2 - add r2, r12 - add r2, r9 - adds r1, r4, 0 - adds r0, r2, 0 - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - ldm r0!, {r5-r7} - stm r1!, {r5-r7} - mov r0, sp - ldm r0!, {r1,r5,r7} - stm r2!, {r1,r5,r7} - ldm r0!, {r1,r6,r7} - stm r2!, {r1,r6,r7} - ldm r0!, {r5-r7} - stm r2!, {r5-r7} -_0813AFEA: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0xF - bls _0813AFAA -_0813AFF4: - mov r1, r10 - lsls r0, r1, 24 - lsrs r2, r0, 24 - cmp r2, 0xE - bls _0813AF86 - add sp, 0x24 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0813B010: .4byte gSaveBlock1 -_0813B014: .4byte 0x00002b6c -_0813B018: .4byte 0x00002b4c - thumb_func_end sub_813AF78 - - thumb_func_start sub_813B01C -sub_813B01C: @ 813B01C - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r7, 0 - ldr r1, _0813B0B8 @ =0x0201fe00 - ldrb r4, [r1, 0x2] - ldrb r0, [r1, 0x1] - adds r0, r4, r0 - cmp r4, r0 - bge _0813B08A - adds r6, r1, 0 - ldr r0, _0813B0BC @ =gStringVar1 - mov r8, r0 -_0813B036: - ldrb r0, [r6, 0x2] - subs r0, r4, r0 - lsls r0, 17 - lsrs r7, r0, 16 - adds r0, r7, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - adds r3, r7, 0x3 - lsls r3, 24 - lsrs r3, 24 - movs r0, 0x15 - adds r1, r5, 0 - movs r2, 0x1C - bl MenuFillWindowRectWithBlankTile - ldrb r0, [r6, 0x3] - cmp r4, r0 - beq _0813B0C4 - lsls r1, r4, 3 - adds r1, r4 - lsls r1, 2 - ldr r0, _0813B0C0 @ =gSaveBlock1 + 0x2C36 - adds r1, r0 - mov r0, r8 - bl StringCopy - mov r0, r8 - bl SanitizeNameString - mov r0, r8 - movs r1, 0x15 - adds r2, r5, 0 - bl MenuPrint - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldrb r0, [r6, 0x2] - ldrb r1, [r6, 0x1] - adds r0, r1 - cmp r4, r0 - blt _0813B036 -_0813B08A: - ldr r5, _0813B0B8 @ =0x0201fe00 - ldrb r0, [r5, 0x2] - subs r0, r4, r0 - cmp r0, 0x8 - beq _0813B0A4 - adds r1, r7, 0x4 - lsls r1, 24 - lsrs r1, 24 - movs r0, 0x15 - movs r2, 0x1C - movs r3, 0x12 - bl MenuFillWindowRectWithBlankTile -_0813B0A4: - ldrb r0, [r5, 0x2] - cmp r0, 0 - beq _0813B0D4 - movs r0, 0 - movs r1, 0xC8 - movs r2, 0x8 - bl CreateVerticalScrollIndicators - b _0813B0DA - .align 2, 0 -_0813B0B8: .4byte 0x0201fe00 -_0813B0BC: .4byte gStringVar1 -_0813B0C0: .4byte gSaveBlock1 + 0x2C36 -_0813B0C4: - ldr r0, _0813B0D0 @ =gOtherText_CancelNoTerminator - movs r1, 0x15 - adds r2, r5, 0 - bl MenuPrint - b _0813B08A - .align 2, 0 -_0813B0D0: .4byte gOtherText_CancelNoTerminator -_0813B0D4: - movs r0, 0 - bl DestroyVerticalScrollIndicator -_0813B0DA: - ldr r0, _0813B0F4 @ =0x0201fe00 - ldrb r1, [r0, 0x2] - ldrb r2, [r0, 0x1] - adds r1, r2 - ldrb r0, [r0, 0x3] - cmp r1, r0 - bgt _0813B0F8 - movs r0, 0x1 - movs r1, 0xC8 - movs r2, 0x98 - bl CreateVerticalScrollIndicators - b _0813B0FE - .align 2, 0 -_0813B0F4: .4byte 0x0201fe00 -_0813B0F8: - movs r0, 0x1 - bl DestroyVerticalScrollIndicator -_0813B0FE: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_813B01C - - thumb_func_start sub_813B108 -sub_813B108: @ 813B108 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_80F944C - bl LoadScrollIndicatorPalette - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - movs r0, 0 - movs r1, 0 - movs r2, 0x8 - movs r3, 0x3 - bl MenuDrawTextWindow - ldr r0, _0813B16C @ =gPCText_Mailbox - movs r1, 0x1 - movs r2, 0x1 - bl MenuPrint - movs r0, 0x14 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuDrawTextWindow - adds r0, r4, 0 - bl sub_813B01C - ldr r0, _0813B170 @ =0x0201fe00 - ldrb r3, [r0, 0x1] - ldrb r0, [r0] - str r0, [sp] - movs r0, 0x8 - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x15 - movs r2, 0x2 - bl InitMenu - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B16C: .4byte gPCText_Mailbox -_0813B170: .4byte 0x0201fe00 - thumb_func_end sub_813B108 - - thumb_func_start sub_813B174 -sub_813B174: @ 813B174 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r4, r5, 0 - ldr r0, _0813B1AC @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r3, 0x80 - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - bne _0813B274 - ldr r2, _0813B1B0 @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0813B1CA - ldr r4, _0813B1B4 @ =0x0201fe00 - ldrb r0, [r4] - cmp r0, 0 - beq _0813B1B8 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - b _0813B1E6 - .align 2, 0 -_0813B1AC: .4byte gPaletteFade -_0813B1B0: .4byte gMain -_0813B1B4: .4byte 0x0201fe00 -_0813B1B8: - ldrb r0, [r4, 0x2] - cmp r0, 0 - beq _0813B274 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x2] - subs r0, 0x1 - b _0813B208 -_0813B1CA: - adds r0, r3, 0 - ands r0, r1 - cmp r0, 0 - beq _0813B212 - ldr r4, _0813B1F0 @ =0x0201fe00 - ldrb r1, [r4] - ldrb r0, [r4, 0x1] - subs r0, 0x1 - cmp r1, r0 - beq _0813B1F4 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 -_0813B1E6: - bl MoveMenuCursor - strb r0, [r4] - b _0813B274 - .align 2, 0 -_0813B1F0: .4byte 0x0201fe00 -_0813B1F4: - ldrb r0, [r4, 0x2] - adds r0, r1 - ldrb r1, [r4, 0x3] - cmp r0, r1 - beq _0813B274 - movs r0, 0x5 - bl PlaySE - ldrb r0, [r4, 0x2] - adds r0, 0x1 -_0813B208: - strb r0, [r4, 0x2] - adds r0, r5, 0 - bl sub_813B01C - b _0813B274 -_0813B212: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0813B25C - bl HandleDestroyMenuCursors - movs r0, 0x5 - bl PlaySE - ldr r0, _0813B23C @ =0x0201fe00 - ldrb r1, [r0, 0x2] - ldrb r2, [r0] - adds r1, r2 - ldrb r0, [r0, 0x3] - cmp r1, r0 - bne _0813B240 - adds r0, r5, 0 - bl sub_813B320 - b _0813B274 - .align 2, 0 -_0813B23C: .4byte 0x0201fe00 -_0813B240: - bl sub_813B27C - ldr r0, _0813B254 @ =gTasks - lsls r1, r5, 2 - adds r1, r5 - lsls r1, 3 - adds r1, r0 - ldr r0, _0813B258 @ =sub_813B294 - str r0, [r1] - b _0813B274 - .align 2, 0 -_0813B254: .4byte gTasks -_0813B258: .4byte sub_813B294 -_0813B25C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0813B274 - bl HandleDestroyMenuCursors - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_813B320 -_0813B274: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_813B174 - - thumb_func_start sub_813B27C -sub_813B27C: @ 813B27C - push {lr} - bl BuyMenuFreeMemory - movs r0, 0 - bl DestroyVerticalScrollIndicator - movs r0, 0x1 - bl DestroyVerticalScrollIndicator - pop {r0} - bx r0 - thumb_func_end sub_813B27C - - thumb_func_start sub_813B294 -sub_813B294: @ 813B294 - push {r4,r5,lr} - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - ldr r4, _0813B2E8 @ =gStringVar1 - ldr r1, _0813B2EC @ =0x0201fe00 - ldrb r0, [r1] - adds r0, 0x6 - ldrb r1, [r1, 0x2] - adds r0, r1 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _0813B2F0 @ =gSaveBlock1 + 0x2B5E - adds r1, r0 - adds r0, r4, 0 - bl StringCopy - adds r0, r4, 0 - bl SanitizeNameString - ldr r4, _0813B2F4 @ =gStringVar4 - ldr r1, _0813B2F8 @ =gOtherText_WhatWillYouDoMail - adds r0, r4, 0 - bl StringExpandPlaceholders - ldr r2, _0813B2FC @ =sub_813B348 - adds r0, r5, 0 - adds r1, r4, 0 - movs r3, 0 - bl DisplayItemMessageOnField - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0813B2E8: .4byte gStringVar1 -_0813B2EC: .4byte 0x0201fe00 -_0813B2F0: .4byte gSaveBlock1 + 0x2B5E -_0813B2F4: .4byte gStringVar4 -_0813B2F8: .4byte gOtherText_WhatWillYouDoMail -_0813B2FC: .4byte sub_813B348 - thumb_func_end sub_813B294 - - thumb_func_start sub_813B300 -sub_813B300: @ 813B300 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - adds r0, r4, 0 - bl ReshowPlayerPC - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_813B300 - - thumb_func_start sub_813B320 -sub_813B320: @ 813B320 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_813B27C - ldr r1, _0813B340 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0813B344 @ =sub_813B300 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B340: .4byte gTasks -_0813B344: .4byte sub_813B300 - thumb_func_end sub_813B320 - - thumb_func_start sub_813B348 -sub_813B348: @ 813B348 - push {r4,lr} - sub sp, 0x8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0 - movs r1, 0 - movs r2, 0xC - movs r3, 0x9 - bl MenuDrawTextWindow - ldr r3, _0813B394 @ =gUnknown_084062F8 - movs r0, 0x1 - movs r1, 0x1 - movs r2, 0x4 - bl PrintMenuItems - movs r0, 0 - str r0, [sp] - movs r0, 0xB - str r0, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0x1 - movs r3, 0x4 - bl InitMenu - ldr r1, _0813B398 @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0813B39C @ =sub_813B3A0 - str r1, [r0] - add sp, 0x8 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B394: .4byte gUnknown_084062F8 -_0813B398: .4byte gTasks -_0813B39C: .4byte sub_813B3A0 - thumb_func_end sub_813B348 - - thumb_func_start sub_813B3A0 -sub_813B3A0: @ 813B3A0 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - adds r4, r5, 0 - ldr r2, _0813B3C4 @ =gMain - ldrh r1, [r2, 0x30] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0813B3C8 - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - negs r0, r0 - bl MoveMenuCursor - b _0813B420 - .align 2, 0 -_0813B3C4: .4byte gMain -_0813B3C8: - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - beq _0813B3DE - movs r0, 0x5 - bl PlaySE - movs r0, 0x1 - bl MoveMenuCursor - b _0813B420 -_0813B3DE: - ldrh r1, [r2, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0813B40C - movs r0, 0x5 - bl PlaySE - ldr r4, _0813B408 @ =gUnknown_084062F8 - bl GetMenuCursorPos - lsls r0, 24 - lsrs r0, 21 - adds r4, 0x4 - adds r0, r4 - ldr r1, [r0] - adds r0, r5, 0 - bl _call_via_r1 - b _0813B420 - .align 2, 0 -_0813B408: .4byte gUnknown_084062F8 -_0813B40C: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0813B420 - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl Mailbox_Cancel -_0813B420: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_813B3A0 - - thumb_func_start Mailbox_Read -Mailbox_Read: @ 813B428 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r1, _0813B44C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0813B450 @ =sub_813B454 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B44C: .4byte gTasks -_0813B450: .4byte sub_813B454 - thumb_func_end Mailbox_Read - - thumb_func_start sub_813B454 -sub_813B454: @ 813B454 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0813B490 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0813B488 - ldr r0, _0813B494 @ =0x0201fe00 - ldrb r1, [r0] - adds r1, 0x6 - ldrb r0, [r0, 0x2] - adds r1, r0 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _0813B498 @ =gSaveBlock1 + 0x2B4C - adds r0, r1 - ldr r1, _0813B49C @ =sub_813B4F0 - movs r2, 0x1 - bl HandleReadMail - adds r0, r4, 0 - bl DestroyTask -_0813B488: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B490: .4byte gPaletteFade -_0813B494: .4byte 0x0201fe00 -_0813B498: .4byte gSaveBlock1 + 0x2B4C -_0813B49C: .4byte sub_813B4F0 - thumb_func_end sub_813B454 - - thumb_func_start sub_813B4A0 -sub_813B4A0: @ 813B4A0 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl sub_807D770 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0813B4C0 - ldr r0, _0813B4C8 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0813B4CC @ =sub_813B174 - str r0, [r1] -_0813B4C0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B4C8: .4byte gTasks -_0813B4CC: .4byte sub_813B174 - thumb_func_end sub_813B4A0 - - thumb_func_start sub_813B4D0 -sub_813B4D0: @ 813B4D0 - push {lr} - ldr r0, _0813B4EC @ =sub_813B4A0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - bl sub_813B108 - bl pal_fill_black - pop {r0} - bx r0 - .align 2, 0 -_0813B4EC: .4byte sub_813B4A0 - thumb_func_end sub_813B4D0 - - thumb_func_start sub_813B4F0 -sub_813B4F0: @ 813B4F0 - push {lr} - ldr r0, _0813B504 @ =gUnknown_0300485C - ldr r1, _0813B508 @ =sub_813B4D0 - str r1, [r0] - ldr r0, _0813B50C @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0813B504: .4byte gUnknown_0300485C -_0813B508: .4byte sub_813B4D0 -_0813B50C: .4byte c2_exit_to_overworld_2_switch - thumb_func_end sub_813B4F0 - - thumb_func_start Mailbox_MoveToBag -Mailbox_MoveToBag: @ 813B510 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - ldr r0, _0813B540 @ =gStringVar1 - ldr r1, _0813B544 @ =gOtherText_MoveToBag - bl StringCopy - ldr r0, _0813B548 @ =gUnknown_0840633A - movs r1, 0x1 - movs r2, 0x3 - bl MenuPrint - ldr r1, _0813B54C @ =gOtherText_MessageWillBeLost - ldr r2, _0813B550 @ =sub_813B554 - adds r0, r4, 0 - movs r3, 0 - bl DisplayItemMessageOnField - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B540: .4byte gStringVar1 -_0813B544: .4byte gOtherText_MoveToBag -_0813B548: .4byte gUnknown_0840633A -_0813B54C: .4byte gOtherText_MessageWillBeLost -_0813B550: .4byte sub_813B554 - thumb_func_end Mailbox_MoveToBag - - thumb_func_start sub_813B554 -sub_813B554: @ 813B554 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1 - bl DisplayYesNoMenu - ldr r1, _0813B574 @ =gUnknown_084062E8 - adds r0, r4, 0 - bl sub_80F914C - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B574: .4byte gUnknown_084062E8 - thumb_func_end sub_813B554 - - thumb_func_start sub_813B578 -sub_813B578: @ 813B578 - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r4, _0813B5BC @ =0x0201fe00 - ldrb r0, [r4] - adds r0, 0x6 - ldrb r1, [r4, 0x2] - adds r0, r1 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - ldr r0, _0813B5C0 @ =gSaveBlock1 + 0x2B4C - adds r6, r1, r0 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1A - movs r3, 0xD - bl MenuZeroFillWindowRect - ldrh r0, [r6, 0x20] - movs r1, 0x1 - bl AddBagItem - lsls r0, 24 - cmp r0, 0 - bne _0813B5CC - ldr r1, _0813B5C4 @ =gOtherText_BagIsFull - ldr r2, _0813B5C8 @ =sub_813B758 - adds r0, r5, 0 - movs r3, 0 - bl DisplayItemMessageOnField - b _0813B602 - .align 2, 0 -_0813B5BC: .4byte 0x0201fe00 -_0813B5C0: .4byte gSaveBlock1 + 0x2B4C -_0813B5C4: .4byte gOtherText_BagIsFull -_0813B5C8: .4byte sub_813B758 -_0813B5CC: - ldr r1, _0813B608 @ =gOtherText_MailWasReturned - ldr r2, _0813B60C @ =sub_813B758 - adds r0, r5, 0 - movs r3, 0 - bl DisplayItemMessageOnField - adds r0, r6, 0 - bl ClearMailStruct - bl sub_813AF78 - ldrb r0, [r4, 0x3] - subs r0, 0x1 - strb r0, [r4, 0x3] - ldrb r1, [r4, 0x3] - ldrb r0, [r4, 0x1] - ldrb r2, [r4, 0x2] - adds r0, r2 - cmp r1, r0 - bge _0813B5FC - cmp r2, 0 - beq _0813B5FC - subs r0, r2, 0x1 - strb r0, [r4, 0x2] -_0813B5FC: - adds r0, r5, 0 - bl ItemStorage_SetItemAndMailCount -_0813B602: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0813B608: .4byte gOtherText_MailWasReturned -_0813B60C: .4byte sub_813B758 - thumb_func_end sub_813B578 - - thumb_func_start sub_813B610 -sub_813B610: @ 813B610 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - movs r0, 0x14 - movs r1, 0x8 - movs r2, 0x1A - movs r3, 0xD - bl MenuZeroFillWindowRect - adds r0, r4, 0 - bl sub_813B758 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_813B610 - - thumb_func_start Mailbox_Give -Mailbox_Give: @ 813B630 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - bl CalculatePlayerPartyCount - lsls r0, 24 - cmp r0, 0 - bne _0813B648 - adds r0, r4, 0 - bl sub_813B718 - b _0813B65E -_0813B648: - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r0, _0813B664 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0813B668 @ =sub_813B66C - str r0, [r1] -_0813B65E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B664: .4byte gTasks -_0813B668: .4byte sub_813B66C - thumb_func_end Mailbox_Give - - thumb_func_start sub_813B66C -sub_813B66C: @ 813B66C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0813B698 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _0813B690 - ldr r0, _0813B69C @ =sub_808B020 - bl SetMainCallback2 - ldr r1, _0813B6A0 @ =gUnknown_02038561 - movs r0, 0x3 - strb r0, [r1] - adds r0, r4, 0 - bl DestroyTask -_0813B690: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B698: .4byte gPaletteFade -_0813B69C: .4byte sub_808B020 -_0813B6A0: .4byte gUnknown_02038561 - thumb_func_end sub_813B66C - - thumb_func_start sub_813B6A4 -sub_813B6A4: @ 813B6A4 - push {r4-r6,lr} - ldr r0, _0813B6F0 @ =sub_813B4A0 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r6, r0, 24 - ldr r5, _0813B6F4 @ =0x0201fe00 - ldrb r4, [r5, 0x3] - bl GetMailboxMailCount - strb r0, [r5, 0x3] - bl sub_813AF78 - ldrb r0, [r5, 0x3] - cmp r4, r0 - beq _0813B6DA - ldrb r1, [r5, 0x3] - ldrb r0, [r5, 0x1] - ldrb r2, [r5, 0x2] - adds r0, r2 - cmp r1, r0 - bge _0813B6DA - cmp r2, 0 - beq _0813B6DA - subs r0, r2, 0x1 - strb r0, [r5, 0x2] -_0813B6DA: - adds r0, r6, 0 - bl ItemStorage_SetItemAndMailCount - adds r0, r6, 0 - bl sub_813B108 - bl pal_fill_black - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0813B6F0: .4byte sub_813B4A0 -_0813B6F4: .4byte 0x0201fe00 - thumb_func_end sub_813B6A4 - - thumb_func_start sub_813B6F8 -sub_813B6F8: @ 813B6F8 - push {lr} - ldr r0, _0813B70C @ =gUnknown_0300485C - ldr r1, _0813B710 @ =sub_813B6A4 - str r1, [r0] - ldr r0, _0813B714 @ =c2_exit_to_overworld_2_switch - bl SetMainCallback2 - pop {r0} - bx r0 - .align 2, 0 -_0813B70C: .4byte gUnknown_0300485C -_0813B710: .4byte sub_813B6A4 -_0813B714: .4byte c2_exit_to_overworld_2_switch - thumb_func_end sub_813B6F8 - - thumb_func_start sub_813B718 -sub_813B718: @ 813B718 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r1, _0813B72C @ =gOtherText_NoPokemon - ldr r2, _0813B730 @ =sub_813B758 - movs r3, 0 - bl DisplayItemMessageOnField - pop {r0} - bx r0 - .align 2, 0 -_0813B72C: .4byte gOtherText_NoPokemon -_0813B730: .4byte sub_813B758 - thumb_func_end sub_813B718 - - thumb_func_start Mailbox_Cancel -Mailbox_Cancel: @ 813B734 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl HandleDestroyMenuCursors - movs r0, 0 - movs r1, 0 - movs r2, 0xC - movs r3, 0x9 - bl MenuZeroFillWindowRect - adds r0, r4, 0 - bl sub_813B758 - pop {r4} - pop {r0} - bx r0 - thumb_func_end Mailbox_Cancel - - thumb_func_start sub_813B758 -sub_813B758: @ 813B758 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r4, 0 - bl sub_813B108 - ldr r1, _0813B77C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0813B780 @ =sub_813B174 - str r1, [r0] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0813B77C: .4byte gTasks -_0813B780: .4byte sub_813B174 - thumb_func_end sub_813B758 - - .align 2, 0 @ Don't pad with nop. diff --git a/asm/secret_base.s b/asm/secret_base.s index 6c78bae77..020953dbe 100644 --- a/asm/secret_base.s +++ b/asm/secret_base.s @@ -4,2036 +4,8 @@ .syntax unified - .text - - thumb_func_start sub_80BB4AC -sub_80BB4AC: @ 80BB4AC - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - adds r3, r0, 0 - movs r0, 0 - strb r0, [r3] - movs r2, 0 - adds r4, r3, 0x2 - movs r5, 0xFF -_080BB4C4: - adds r0, r4, r2 - ldrb r1, [r0] - orrs r1, r5 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x6 - bls _080BB4C4 - movs r2, 0 - adds r5, r3, 0 - adds r5, 0x12 - adds r6, r3, 0 - adds r6, 0x22 - adds r7, r3, 0 - adds r7, 0x4C - adds r0, r3, 0 - adds r0, 0x34 - str r0, [sp] - adds r1, r3, 0 - adds r1, 0x9A - str r1, [sp, 0x4] - movs r0, 0x7C - adds r0, r3 - mov r10, r0 - movs r1, 0x88 - adds r1, r3 - mov r9, r1 - movs r0, 0x94 - adds r0, r3 - mov r8, r0 - adds r1, r3, 0 - adds r1, 0x9 - movs r4, 0 -_080BB508: - adds r0, r1, r2 - strb r4, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x3 - bls _080BB508 - movs r0, 0 - movs r1, 0 - strh r1, [r3, 0xE] - strb r0, [r3, 0x10] - strb r0, [r3, 0x11] - movs r0, 0 - strb r0, [r3, 0x1] - movs r2, 0 - adds r4, r5, 0 - adds r3, r6, 0 -_080BB52A: - adds r0, r4, r2 - strb r1, [r0] - adds r0, r3, r2 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0xF - bls _080BB52A - movs r2, 0 - mov r12, r7 - movs r5, 0 -_080BB542: - movs r1, 0 - adds r7, r2, 0x1 - lsls r4, r2, 2 - lsls r6, r2, 1 - adds r3, r4, 0 -_080BB54C: - adds r0, r3, r1 - lsls r0, 1 - add r0, r12 - strh r5, [r0] - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0x3 - bls _080BB54C - ldr r1, [sp] - adds r0, r1, r4 - str r5, [r0] - ldr r1, [sp, 0x4] - adds r0, r1, r2 - strb r5, [r0] - mov r1, r10 - adds r0, r1, r6 - strh r5, [r0] - mov r1, r9 - adds r0, r1, r6 - strh r5, [r0] - mov r1, r8 - adds r0, r1, r2 - strb r5, [r0] - lsls r0, r7, 16 - lsrs r2, r0, 16 - cmp r2, 0x5 - bls _080BB542 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BB4AC - - thumb_func_start ResetSecretBase -ResetSecretBase: @ 80BB594 - push {lr} - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 5 - ldr r1, _080BB5B0 @ =gSaveBlock1 + 0x1A08 - adds r0, r1 - bl sub_80BB4AC - pop {r0} - bx r0 - .align 2, 0 -_080BB5B0: .4byte gSaveBlock1 + 0x1A08 - thumb_func_end ResetSecretBase - - thumb_func_start ResetSecretBases -ResetSecretBases: @ 80BB5B4 - push {r4,lr} - movs r4, 0 -_080BB5B8: - lsls r0, r4, 24 - lsrs r0, 24 - bl ResetSecretBase - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x13 - bls _080BB5B8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end ResetSecretBases - - thumb_func_start sub_80BB5D0 -sub_80BB5D0: @ 80BB5D0 - ldr r0, _080BB5DC @ =gUnknown_020387DC - ldr r1, _080BB5E0 @ =gSpecialVar_0x8004 - ldrh r1, [r1] - strb r1, [r0] - bx lr - .align 2, 0 -_080BB5DC: .4byte gUnknown_020387DC -_080BB5E0: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80BB5D0 - - thumb_func_start sub_80BB5E4 -sub_80BB5E4: @ 80BB5E4 - push {r4,lr} - ldr r0, _080BB5F4 @ =gScriptResult - movs r1, 0 - strh r1, [r0] - movs r3, 0 - adds r4, r0, 0 - b _080BB5FE - .align 2, 0 -_080BB5F4: .4byte gScriptResult -_080BB5F8: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 -_080BB5FE: - cmp r3, 0x13 - bhi _080BB626 - ldr r2, _080BB62C @ =gUnknown_020387DC - ldr r1, _080BB630 @ =gSaveBlock1 - lsls r0, r3, 2 - adds r0, r3 - lsls r0, 5 - adds r0, r1 - ldr r1, _080BB634 @ =0x00001a08 - adds r0, r1 - ldrb r1, [r2] - ldrb r0, [r0] - cmp r1, r0 - bne _080BB5F8 - movs r0, 0x1 - strh r0, [r4] - ldr r0, _080BB638 @ =0x00004054 - adds r1, r3, 0 - bl VarSet -_080BB626: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BB62C: .4byte gUnknown_020387DC -_080BB630: .4byte gSaveBlock1 -_080BB634: .4byte 0x00001a08 -_080BB638: .4byte 0x00004054 - thumb_func_end sub_80BB5E4 - - thumb_func_start sub_80BB63C -sub_80BB63C: @ 80BB63C - push {lr} - ldr r0, _080BB654 @ =gSaveBlock1 - ldr r1, _080BB658 @ =0x00001a08 - adds r0, r1 - ldrb r1, [r0] - cmp r1, 0 - beq _080BB660 - ldr r1, _080BB65C @ =gScriptResult - movs r0, 0x1 - strh r0, [r1] - b _080BB664 - .align 2, 0 -_080BB654: .4byte gSaveBlock1 -_080BB658: .4byte 0x00001a08 -_080BB65C: .4byte gScriptResult -_080BB660: - ldr r0, _080BB668 @ =gScriptResult - strh r1, [r0] -_080BB664: - pop {r0} - bx r0 - .align 2, 0 -_080BB668: .4byte gScriptResult - thumb_func_end sub_80BB63C - - thumb_func_start sub_80BB66C -sub_80BB66C: @ 80BB66C - 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 - adds r1, r0, 0 - ldr r2, _080BB6A4 @ =0x00000fff - adds r0, r2, 0 - ands r1, r0 - adds r0, r1, 0 - subs r0, 0x90 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080BB6A8 - movs r0, 0x1 - b _080BB702 - .align 2, 0 -_080BB6A4: .4byte 0x00000fff -_080BB6A8: - adds r0, r1, 0 - subs r0, 0x92 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080BB6B8 - movs r0, 0x2 - b _080BB702 -_080BB6B8: - adds r0, r1, 0 - subs r0, 0x9A - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080BB6C8 - movs r0, 0x3 - b _080BB702 -_080BB6C8: - adds r0, r1, 0 - subs r0, 0x94 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bhi _080BB6D8 - movs r0, 0x4 - b _080BB702 -_080BB6D8: - adds r0, r1, 0 - subs r0, 0x96 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _080BB6EC - cmp r1, 0x9C - beq _080BB6EC - cmp r1, 0x9D - bne _080BB6F0 -_080BB6EC: - movs r0, 0x5 - b _080BB702 -_080BB6F0: - adds r0, r1, 0 - subs r0, 0x98 - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bls _080BB700 - movs r0, 0 - b _080BB702 -_080BB700: - movs r0, 0x6 -_080BB702: - add sp, 0x4 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BB66C - - thumb_func_start sub_80BB70C -sub_80BB70C: @ 80BB70C - push {r4,lr} - ldr r4, _080BB720 @ =gSpecialVar_0x8007 - bl sub_80BB66C - lsls r0, 24 - lsrs r0, 24 - strh r0, [r4] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BB720: .4byte gSpecialVar_0x8007 - thumb_func_end sub_80BB70C - - thumb_func_start unref_sub_80BB724 -unref_sub_80BB724: @ 80BB724 - push {r4-r6,lr} - adds r4, r0, 0 - lsls r1, 24 - movs r2, 0 - ldr r6, _080BB748 @ =0x00000fff - lsrs r3, r1, 24 - ldr r5, _080BB74C @ =0x000001ff -_080BB732: - lsls r0, r2, 1 - adds r0, r4 - ldrh r1, [r0] - adds r0, r6, 0 - ands r0, r1 - cmp r0, r3 - bne _080BB750 - lsls r0, r2, 16 - asrs r0, 16 - b _080BB75E - .align 2, 0 -_080BB748: .4byte 0x00000fff -_080BB74C: .4byte 0x000001ff -_080BB750: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, r5 - bls _080BB732 - movs r0, 0x1 - negs r0, r0 -_080BB75E: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end unref_sub_80BB724 - - thumb_func_start sub_80BB764 -sub_80BB764: @ 80BB764 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r9, r0 - mov r10, r1 - lsls r2, 16 - lsrs r2, 16 - mov r8, r2 - movs r0, 0 - mov r12, r0 - ldr r1, _080BB7C8 @ =gMapHeader - ldr r0, [r1] - ldr r3, [r0, 0x4] - cmp r12, r3 - bge _080BB7EE - ldr r0, [r0] - str r0, [sp, 0x4] - str r3, [sp] -_080BB78E: - movs r2, 0 - mov r1, r12 - lsls r7, r1, 16 - ldr r0, [sp, 0x4] - cmp r2, r0 - bge _080BB7DC - ldr r0, _080BB7C8 @ =gMapHeader - ldr r1, [r0] - asrs r0, r7, 16 - ldr r4, [r1] - adds r6, r0, 0 - muls r6, r4 - ldr r5, [r1, 0xC] -_080BB7A8: - lsls r0, r2, 16 - asrs r3, r0, 16 - adds r0, r6, r3 - lsls r0, 1 - adds r0, r5 - ldrh r1, [r0] - ldr r0, _080BB7CC @ =0x000003ff - ands r0, r1 - cmp r0, r8 - bne _080BB7D0 - mov r1, r9 - strh r2, [r1] - mov r1, r12 - mov r0, r10 - strh r1, [r0] - b _080BB7EE - .align 2, 0 -_080BB7C8: .4byte gMapHeader -_080BB7CC: .4byte 0x000003ff -_080BB7D0: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - asrs r0, 16 - cmp r0, r4 - blt _080BB7A8 -_080BB7DC: - movs r1, 0x80 - lsls r1, 9 - adds r0, r7, r1 - lsrs r1, r0, 16 - mov r12, r1 - asrs r0, 16 - ldr r1, [sp] - cmp r0, r1 - blt _080BB78E -_080BB7EE: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BB764 - - thumb_func_start sub_80BB800 -sub_80BB800: @ 80BB800 - push {r4-r7,lr} - mov r7, r8 - push {r7} - 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 MapGridGetMetatileIdAt - movs r5, 0 - mov r12, r4 - lsls r0, 16 - asrs r3, r0, 16 - ldr r1, _080BB84C @ =gUnknown_083D1358 - mov r8, r1 - adds r7, r0, 0 - mov r4, sp - mov r6, r12 -_080BB834: - ldr r0, _080BB84C @ =gUnknown_083D1358 - lsls r1, r5, 2 - adds r2, r1, r0 - ldrh r0, [r2] - cmp r0, r3 - bne _080BB850 - movs r3, 0 - ldrsh r0, [r4, r3] - movs r5, 0 - ldrsh r1, [r6, r5] - ldrh r3, [r2, 0x2] - b _080BB878 - .align 2, 0 -_080BB84C: .4byte gUnknown_083D1358 -_080BB850: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x6 - bls _080BB834 - movs r5, 0 - mov r4, sp - mov r6, r12 -_080BB860: - lsls r0, r5, 2 - mov r1, r8 - adds r3, r0, r1 - ldrh r1, [r3, 0x2] - asrs r0, r7, 16 - cmp r1, r0 - bne _080BB892 - movs r2, 0 - ldrsh r0, [r4, r2] - movs r5, 0 - ldrsh r1, [r6, r5] - ldrh r3, [r3] -_080BB878: - movs r5, 0xC0 - lsls r5, 4 - adds r2, r5, 0 - orrs r2, r3 - bl MapGridSetMetatileIdAt - movs r1, 0 - ldrsh r0, [r4, r1] - movs r2, 0 - ldrsh r1, [r6, r2] - bl CurrentMapDrawMetatileAt - b _080BB89C -_080BB892: - adds r0, r5, 0x1 - lsls r0, 16 - lsrs r5, r0, 16 - cmp r5, 0x6 - bls _080BB860 -_080BB89C: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BB800 - - thumb_func_start sub_80BB8A8 -sub_80BB8A8: @ 80BB8A8 - push {lr} - adds r2, r0, 0 - movs r1, 0 -_080BB8AE: - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080BB8BA - adds r0, r1, 0 - b _080BB8C6 -_080BB8BA: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x6 - bls _080BB8AE - movs r0, 0x7 -_080BB8C6: - pop {r1} - bx r1 - thumb_func_end sub_80BB8A8 - - thumb_func_start sub_80BB8CC -sub_80BB8CC: @ 80BB8CC - push {r4-r6,lr} - ldr r2, _080BB948 @ =gSaveBlock1 - ldr r0, _080BB94C @ =gUnknown_020387DC - ldrb r1, [r0] - ldr r3, _080BB950 @ =0x00001a08 - adds r0, r2, r3 - strb r1, [r0] - movs r3, 0 - ldr r0, _080BB954 @ =0x00001a11 - adds r2, r0 - ldr r4, _080BB958 @ =gSaveBlock2 + 0xA -_080BB8E2: - adds r1, r3, r2 - adds r0, r3, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x3 - bls _080BB8E2 - ldr r0, _080BB95C @ =0x00004054 - movs r1, 0 - bl VarSet - ldr r6, _080BB960 @ =gSaveBlock2 - adds r0, r6, 0 - bl sub_80BB8A8 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _080BB964 @ =gSaveBlock1 + 0x1A0A - adds r0, r5, 0 - movs r1, 0xFF - movs r2, 0x7 - bl memset - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl StringCopyN - ldrb r0, [r6, 0x8] - subs r5, 0x1 - movs r1, 0x1 - ands r1, r0 - lsls r1, 4 - ldrb r2, [r5] - movs r0, 0x11 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r5] - ldr r0, _080BB968 @ =0x00004026 - ldr r1, _080BB96C @ =gMapHeader - ldrb r1, [r1, 0x14] - bl VarSet - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BB948: .4byte gSaveBlock1 -_080BB94C: .4byte gUnknown_020387DC -_080BB950: .4byte 0x00001a08 -_080BB954: .4byte 0x00001a11 -_080BB958: .4byte gSaveBlock2 + 0xA -_080BB95C: .4byte 0x00004054 -_080BB960: .4byte gSaveBlock2 -_080BB964: .4byte gSaveBlock1 + 0x1A0A -_080BB968: .4byte 0x00004026 -_080BB96C: .4byte gMapHeader - thumb_func_end sub_80BB8CC - - thumb_func_start sub_80BB970 -sub_80BB970: @ 80BB970 - push {r4-r7,lr} - adds r5, r0, 0 - movs r2, 0 - b _080BBA06 -_080BB978: - ldr r0, [r5, 0x10] - lsls r1, r2, 1 - adds r1, r2 - lsls r1, 2 - adds r3, r1, r0 - ldrb r0, [r3, 0x5] - adds r7, r2, 0x1 - cmp r0, 0x8 - bne _080BBA02 - movs r2, 0 - ldr r4, _080BB9E0 @ =gSaveBlock1 - adds r6, r1, 0 -_080BB990: - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 5 - adds r0, r4 - ldr r1, _080BB9E4 @ =0x00001a08 - adds r0, r1 - ldrb r1, [r0] - ldr r0, [r3, 0x8] - cmp r1, r0 - bne _080BB9F8 - ldrh r0, [r3] - adds r0, 0x7 - ldrh r1, [r3, 0x2] - adds r1, 0x7 - bl MapGridGetMetatileIdAt - movs r3, 0 - lsls r0, 16 - asrs r4, r0, 16 -_080BB9B6: - ldr r0, _080BB9E8 @ =gUnknown_083D1358 - lsls r1, r3, 2 - adds r2, r1, r0 - ldrh r0, [r2] - cmp r0, r4 - bne _080BB9EC - ldr r1, [r5, 0x10] - adds r1, r6, r1 - ldrh r0, [r1] - adds r0, 0x7 - ldrh r1, [r1, 0x2] - adds r1, 0x7 - ldrh r3, [r2, 0x2] - movs r4, 0xC0 - lsls r4, 4 - adds r2, r4, 0 - orrs r2, r3 - bl MapGridSetMetatileIdAt - b _080BBA02 - .align 2, 0 -_080BB9E0: .4byte gSaveBlock1 -_080BB9E4: .4byte 0x00001a08 -_080BB9E8: .4byte gUnknown_083D1358 -_080BB9EC: - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x6 - bls _080BB9B6 - b _080BBA02 -_080BB9F8: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x13 - bls _080BB990 -_080BBA02: - lsls r0, r7, 16 - lsrs r2, r0, 16 -_080BBA06: - ldrb r0, [r5, 0x3] - cmp r2, r0 - bcc _080BB978 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BB970 - - thumb_func_start sub_80BBA14 -sub_80BBA14: @ 80BBA14 - push {lr} - ldr r0, _080BBA40 @ =gUnknown_020387DC - ldrb r0, [r0] - movs r1, 0xA - bl __udivsi3 - ldr r2, _080BBA44 @ =gUnknown_083D1374 - lsls r0, 26 - asrs r0, 24 - adds r1, r0, r2 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - adds r0, 0x1 - adds r0, r2 - movs r2, 0 - ldrsb r2, [r0, r2] - movs r0, 0x19 - bl warp1_set_2 - pop {r0} - bx r0 - .align 2, 0 -_080BBA40: .4byte gUnknown_020387DC -_080BBA44: .4byte gUnknown_083D1374 - thumb_func_end sub_80BBA14 - - thumb_func_start sub_80BBA48 -sub_80BBA48: @ 80BBA48 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _080BBA6C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r2, r0, r1 - movs r1, 0x8 - ldrsh r0, [r2, r1] - cmp r0, 0x1 - beq _080BBA7C - cmp r0, 0x1 - bgt _080BBA70 - cmp r0, 0 - beq _080BBA76 - b _080BBAD0 - .align 2, 0 -_080BBA6C: .4byte gTasks -_080BBA70: - cmp r0, 0x2 - beq _080BBA94 - b _080BBAD0 -_080BBA76: - movs r0, 0x1 - strh r0, [r2, 0x8] - b _080BBAD0 -_080BBA7C: - ldr r0, _080BBA90 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080BBAD0 - movs r0, 0x2 - strh r0, [r2, 0x8] - b _080BBAD0 - .align 2, 0 -_080BBA90: .4byte gPaletteFade -_080BBA94: - ldr r0, _080BBAD8 @ =0x00004054 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - ldr r2, _080BBADC @ =gSaveBlock1 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r1, r2 - ldr r0, _080BBAE0 @ =0x00001a18 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0xFE - bhi _080BBAB6 - adds r0, 0x1 - strb r0, [r1] -_080BBAB6: - bl sub_80BBA14 - bl warp_in - ldr r0, _080BBAE4 @ =gUnknown_0300485C - ldr r1, _080BBAE8 @ =sub_8080990 - str r1, [r0] - ldr r0, _080BBAEC @ =CB2_LoadMap - bl SetMainCallback2 - adds r0, r4, 0 - bl DestroyTask -_080BBAD0: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BBAD8: .4byte 0x00004054 -_080BBADC: .4byte gSaveBlock1 -_080BBAE0: .4byte 0x00001a18 -_080BBAE4: .4byte gUnknown_0300485C -_080BBAE8: .4byte sub_8080990 -_080BBAEC: .4byte CB2_LoadMap - thumb_func_end sub_80BBA48 - - thumb_func_start sub_80BBAF0 -sub_80BBAF0: @ 80BBAF0 - push {lr} - ldr r0, _080BBB1C @ =sub_80BBA48 - movs r1, 0 - bl CreateTask - movs r0, 0x1 - movs r1, 0 - bl fade_screen - ldr r0, _080BBB20 @ =gSaveBlock1 - movs r1, 0x4 - ldrsb r1, [r0, r1] - movs r2, 0x5 - ldrsb r2, [r0, r2] - movs r3, 0x1 - negs r3, r3 - movs r0, 0 - bl saved_warp2_set - pop {r0} - bx r0 - .align 2, 0 -_080BBB1C: .4byte sub_80BBA48 -_080BBB20: .4byte gSaveBlock1 - thumb_func_end sub_80BBAF0 - - thumb_func_start sub_80BBB24 -sub_80BBB24: @ 80BBB24 - push {lr} - ldr r0, _080BBB40 @ =gMapHeader - ldrb r0, [r0, 0x17] - cmp r0, 0x9 - bne _080BBB48 - ldr r0, _080BBB44 @ =0x00004097 - bl VarGet - lsls r0, 16 - cmp r0, 0 - bne _080BBB48 - movs r0, 0 - b _080BBB4A - .align 2, 0 -_080BBB40: .4byte gMapHeader -_080BBB44: .4byte 0x00004097 -_080BBB48: - movs r0, 0x1 -_080BBB4A: - pop {r1} - bx r1 - thumb_func_end sub_80BBB24 - - thumb_func_start sub_80BBB50 -sub_80BBB50: @ 80BBB50 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _080BBB88 @ =gPlayerAvatar - ldrb r1, [r0, 0x5] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BBB8C @ =gMapObjects - adds r0, r1 - movs r1, 0x2 - bl FieldObjectTurn - bl sub_807D770 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BBB80 - bl EnableBothScriptContexts - adds r0, r4, 0 - bl DestroyTask -_080BBB80: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BBB88: .4byte gPlayerAvatar -_080BBB8C: .4byte gMapObjects - thumb_func_end sub_80BBB50 - - thumb_func_start sub_80BBB90 -sub_80BBB90: @ 80BBB90 - push {r4,lr} - sub sp, 0x4 - bl ScriptContext2_Enable - bl HideMapNamePopup - mov r4, sp - adds r4, 0x2 - movs r2, 0x88 - lsls r2, 2 - mov r0, sp - adds r1, r4, 0 - bl sub_80BB764 - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - adds r0, 0x7 - movs r2, 0 - ldrsh r1, [r4, r2] - adds r1, 0x7 - movs r2, 0xE2 - lsls r2, 4 - bl MapGridSetMetatileIdAt - mov r0, sp - movs r1, 0 - ldrsh r0, [r0, r1] - adds r0, 0x7 - movs r2, 0 - ldrsh r1, [r4, r2] - adds r1, 0x7 - bl CurrentMapDrawMetatileAt - bl pal_fill_black - ldr r0, _080BBBE8 @ =sub_80BBB50 - movs r1, 0 - bl CreateTask - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BBBE8: .4byte sub_80BBB50 - thumb_func_end sub_80BBB90 - - thumb_func_start sub_80BBBEC -sub_80BBBEC: @ 80BBBEC - push {r4-r6,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r6, r0, 24 - ldr r0, _080BBC5C @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080BBC52 - ldr r0, _080BBC60 @ =gUnknown_020387DC - ldrb r0, [r0] - movs r1, 0xA - bl __udivsi3 - ldr r1, _080BBC64 @ =gSaveBlock1 - movs r5, 0x4 - ldrsb r5, [r1, r5] - ldrb r1, [r1, 0x5] - lsls r1, 24 - asrs r1, 24 - movs r2, 0x1 - negs r2, r2 - ldr r4, _080BBC68 @ =gUnknown_083D1374 - lsls r0, 26 - asrs r0, 24 - adds r3, r0, 0x2 - adds r3, r4 - ldrb r3, [r3] - lsls r3, 24 - asrs r3, 24 - adds r0, 0x3 - adds r0, r4 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - str r0, [sp] - adds r0, r5, 0 - bl warp1_set - bl warp_in - ldr r1, _080BBC6C @ =gUnknown_0300485C - ldr r0, _080BBC70 @ =sub_80BBB90 - str r0, [r1] - ldr r0, _080BBC74 @ =CB2_LoadMap - bl SetMainCallback2 - adds r0, r6, 0 - bl DestroyTask -_080BBC52: - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BBC5C: .4byte gPaletteFade -_080BBC60: .4byte gUnknown_020387DC -_080BBC64: .4byte gSaveBlock1 -_080BBC68: .4byte gUnknown_083D1374 -_080BBC6C: .4byte gUnknown_0300485C -_080BBC70: .4byte sub_80BBB90 -_080BBC74: .4byte CB2_LoadMap - thumb_func_end sub_80BBBEC - - thumb_func_start sub_80BBC78 -sub_80BBC78: @ 80BBC78 - push {lr} - ldr r0, _080BBCA0 @ =sub_80BBBEC - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080BBCA4 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - movs r0, 0 - strh r0, [r1, 0x8] - movs r0, 0x1 - movs r1, 0 - bl fade_screen - pop {r0} - bx r0 - .align 2, 0 -_080BBCA0: .4byte sub_80BBBEC -_080BBCA4: .4byte gTasks - thumb_func_end sub_80BBC78 - - thumb_func_start CurrentMapIsSecretBase -CurrentMapIsSecretBase: @ 80BBCA8 - push {lr} - ldr r1, _080BBCC0 @ =gSaveBlock1 - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x19 - bne _080BBCC4 - ldrb r0, [r1, 0x5] - cmp r0, 0x17 - bhi _080BBCC4 - movs r0, 0x1 - b _080BBCC6 - .align 2, 0 -_080BBCC0: .4byte gSaveBlock1 -_080BBCC4: - movs r0, 0 -_080BBCC6: - pop {r1} - bx r1 - thumb_func_end CurrentMapIsSecretBase - - thumb_func_start sub_80BBCCC -sub_80BBCCC: @ 80BBCCC - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - bl CurrentMapIsSecretBase - lsls r0, 24 - cmp r0, 0 - beq _080BBDBC - ldr r0, _080BBD70 @ =0x00004054 - bl VarGet - lsls r0, 16 - lsrs r5, r0, 16 - movs r1, 0 - mov r0, sp - strh r1, [r0] - ldr r6, _080BBD74 @ =gSaveBlock1 - mov r4, sp - ldr r0, _080BBD78 @ =0x00001a2a - adds r7, r6, r0 -_080BBCFC: - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 5 - ldrh r1, [r4] - adds r2, r0, r1 - ldr r1, _080BBD7C @ =0x00001a1a - adds r0, r6, r1 - adds r1, r2, r0 - ldrb r0, [r1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x77 - bhi _080BBD3A - ldr r0, _080BBD80 @ =gDecorations - ldrb r3, [r1] - lsls r1, r3, 5 - adds r1, r0 - ldrb r0, [r1, 0x11] - cmp r0, 0x4 - beq _080BBD3A - adds r0, r2, r7 - ldrb r2, [r0] - lsrs r0, r2, 4 - adds r0, 0x7 - movs r1, 0xF - ands r1, r2 - adds r1, 0x7 - adds r2, r3, 0 - bl sub_80FF394 -_080BBD3A: - ldrh r0, [r4] - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - strh r0, [r4] - cmp r0, 0xF - bls _080BBCFC - cmp r5, 0 - beq _080BBD88 - mov r4, sp - adds r4, 0x2 - movs r2, 0x88 - lsls r2, 2 - mov r0, sp - adds r1, r4, 0 - bl sub_80BB764 - mov r0, sp - ldrh r0, [r0] - adds r0, 0x7 - ldrh r1, [r4] - adds r1, 0x7 - ldr r2, _080BBD84 @ =0x00000e21 - bl MapGridSetMetatileIdAt - b _080BBDBC - .align 2, 0 -_080BBD70: .4byte 0x00004054 -_080BBD74: .4byte gSaveBlock1 -_080BBD78: .4byte 0x00001a2a -_080BBD7C: .4byte 0x00001a1a -_080BBD80: .4byte gDecorations -_080BBD84: .4byte 0x00000e21 -_080BBD88: - mov r0, r8 - cmp r0, 0x1 - bne _080BBDBC - ldr r0, _080BBDC8 @ =0x00004089 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - bne _080BBDBC - mov r4, sp - adds r4, 0x2 - movs r2, 0x88 - lsls r2, 2 - mov r0, sp - adds r1, r4, 0 - bl sub_80BB764 - mov r0, sp - ldrh r0, [r0] - adds r0, 0x7 - ldrh r1, [r4] - adds r1, 0x7 - ldr r2, _080BBDCC @ =0x00000e0a - bl MapGridSetMetatileIdAt -_080BBDBC: - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BBDC8: .4byte 0x00004089 -_080BBDCC: .4byte 0x00000e0a - thumb_func_end sub_80BBCCC - - thumb_func_start sub_80BBDD0 -sub_80BBDD0: @ 80BBDD0 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - ldr r0, _080BBE00 @ =0x00004054 - bl VarGet - lsls r0, 16 - lsrs r4, r0, 16 - bl CurrentMapIsSecretBase - lsls r0, 24 - cmp r0, 0 - bne _080BBE08 - ldr r0, _080BBE04 @ =gSaveBlock1 + 0x2688 - str r0, [sp, 0x4] - adds r0, 0xC - str r0, [sp, 0x8] - movs r1, 0xC - str r1, [sp, 0xC] - b _080BBE1E - .align 2, 0 -_080BBE00: .4byte 0x00004054 -_080BBE04: .4byte gSaveBlock1 + 0x2688 -_080BBE08: - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 5 - ldr r0, _080BBF7C @ =gSaveBlock1 + 0x1A1A - adds r2, r1, r0 - str r2, [sp, 0x4] - adds r0, 0x10 - adds r1, r0 - str r1, [sp, 0x8] - movs r3, 0x10 - str r3, [sp, 0xC] -_080BBE1E: - movs r6, 0 - ldr r4, [sp, 0xC] - cmp r6, r4 - bcc _080BBE28 - b _080BBF6C -_080BBE28: - ldr r5, _080BBF80 @ =gSaveBlock1 - mov r10, r5 -_080BBE2C: - ldr r1, [sp, 0x4] - adds r0, r1, r6 - ldrb r1, [r0] - mov r9, r0 - adds r2, r6, 0x1 - str r2, [sp, 0x10] - cmp r1, 0 - bne _080BBE3E - b _080BBF5E -_080BBE3E: - ldrb r0, [r0] - lsls r0, 5 - ldr r3, _080BBF84 @ =gDecorations - adds r0, r3 - ldrb r0, [r0, 0x11] - cmp r0, 0x4 - beq _080BBE4E - b _080BBF5E -_080BBE4E: - movs r5, 0 - ldr r0, _080BBF88 @ =gMapHeader - ldr r2, [r0, 0x4] - ldrb r3, [r2] - mov r8, r0 - cmp r5, r3 - bcs _080BBE8E - ldr r0, [r2, 0x4] - ldrh r1, [r0, 0x14] - ldr r4, _080BBF8C @ =gSpecialVar_0x8004 - ldrh r0, [r4] - adds r0, 0xAE - adds r7, r4, 0 - cmp r1, r0 - beq _080BBE8E - adds r4, r2, 0 - adds r2, r3, 0 -_080BBE70: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, r2 - bcs _080BBE8E - ldr r1, [r4, 0x4] - lsls r0, r5, 1 - adds r0, r5 - lsls r0, 3 - adds r0, r1 - ldrh r1, [r0, 0x14] - ldrh r0, [r7] - adds r0, 0xAE - cmp r1, r0 - bne _080BBE70 -_080BBE8E: - mov r1, r8 - ldr r0, [r1, 0x4] - ldrb r0, [r0] - cmp r5, r0 - beq _080BBF5E - ldr r7, _080BBF90 @ =gSpecialVar_0x8006 - ldr r2, [sp, 0x8] - adds r1, r2, r6 - ldrb r0, [r1] - lsrs r0, 4 - strh r0, [r7] - ldr r6, _080BBF94 @ =gSpecialVar_0x8007 - ldrb r1, [r1] - movs r0, 0xF - ands r0, r1 - strh r0, [r6] - ldrh r0, [r7] - adds r0, 0x7 - ldrh r1, [r6] - adds r1, 0x7 - bl MapGridGetMetatileBehaviorAt - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - bl sub_80572D8 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BBEDA - adds r0, r4, 0 - bl sub_80572EC - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BBF5E -_080BBEDA: - mov r3, r8 - ldr r0, [r3, 0x4] - ldr r1, [r0, 0x4] - lsls r4, r5, 1 - adds r4, r5 - lsls r4, 3 - adds r1, r4, r1 - ldr r5, _080BBF98 @ =0x00003f20 - adds r0, r5, 0 - ldrb r1, [r1, 0x1] - adds r0, r1 - ldr r1, _080BBF9C @ =gScriptResult - strh r0, [r1] - ldrh r0, [r1] - mov r2, r9 - ldrb r1, [r2] - lsls r1, 5 - ldr r3, _080BBFA0 @ =gDecorations + 0x1C - adds r1, r3 - ldr r1, [r1] - ldrh r1, [r1] - bl VarSet - mov r5, r8 - ldr r0, [r5, 0x4] - ldr r0, [r0, 0x4] - adds r4, r0 - ldrb r0, [r4] - ldr r1, _080BBF9C @ =gScriptResult - strh r0, [r1] - ldr r2, _080BBF8C @ =gSpecialVar_0x8004 - ldrh r0, [r2] - adds r0, 0xAE - lsls r0, 16 - lsrs r0, 16 - bl FlagReset - ldr r3, _080BBF9C @ =gScriptResult - ldrb r0, [r3] - mov r4, r10 - ldrb r1, [r4, 0x5] - ldrb r2, [r4, 0x4] - bl show_sprite - ldr r5, _080BBF9C @ =gScriptResult - ldrb r0, [r5] - ldrb r1, [r4, 0x5] - ldrb r2, [r4, 0x4] - movs r4, 0 - ldrsh r3, [r7, r4] - movs r5, 0 - ldrsh r4, [r6, r5] - str r4, [sp] - bl sub_805C0F8 - ldr r1, _080BBF9C @ =gScriptResult - ldrb r0, [r1] - mov r2, r10 - ldrb r1, [r2, 0x5] - ldrb r2, [r2, 0x4] - bl sub_805C78C - ldr r3, _080BBF8C @ =gSpecialVar_0x8004 - ldrh r0, [r3] - adds r0, 0x1 - strh r0, [r3] -_080BBF5E: - ldr r4, [sp, 0x10] - lsls r0, r4, 24 - lsrs r6, r0, 24 - ldr r5, [sp, 0xC] - cmp r6, r5 - bcs _080BBF6C - b _080BBE2C -_080BBF6C: - 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 -_080BBF7C: .4byte gSaveBlock1 + 0x1A1A -_080BBF80: .4byte gSaveBlock1 -_080BBF84: .4byte gDecorations -_080BBF88: .4byte gMapHeader -_080BBF8C: .4byte gSpecialVar_0x8004 -_080BBF90: .4byte gSpecialVar_0x8006 -_080BBF94: .4byte gSpecialVar_0x8007 -_080BBF98: .4byte 0x00003f20 -_080BBF9C: .4byte gScriptResult -_080BBFA0: .4byte gDecorations + 0x1C - thumb_func_end sub_80BBDD0 - - thumb_func_start sub_80BBFA4 -sub_80BBFA4: @ 80BBFA4 - push {r4,r5,lr} - ldr r0, _080BBFCC @ =0x00004054 - bl VarGet - ldr r5, _080BBFD0 @ =0x0000401f - ldr r4, _080BBFD4 @ =gUnknown_083D13EC - lsls r0, 24 - lsrs r0, 24 - bl sub_80BCCA4 - lsls r0, 24 - lsrs r0, 24 - adds r0, r4 - ldrb r1, [r0] - adds r0, r5, 0 - bl VarSet - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BBFCC: .4byte 0x00004054 -_080BBFD0: .4byte 0x0000401f -_080BBFD4: .4byte gUnknown_083D13EC - thumb_func_end sub_80BBFA4 - - thumb_func_start sub_80BBFD8 -sub_80BBFD8: @ 80BBFD8 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r3, 0 - ldrb r0, [r4, 0x3] - cmp r3, r0 - bge _080BC030 - ldr r6, _080BC01C @ =gUnknown_020387DC -_080BBFE8: - lsls r3, 16 - asrs r1, r3, 16 - ldr r2, [r4, 0x10] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - adds r2, r0, r2 - ldrb r0, [r2, 0x5] - cmp r0, 0x8 - bne _080BC020 - movs r0, 0 - ldrsh r1, [r5, r0] - ldrh r0, [r2] - adds r0, 0x7 - cmp r1, r0 - bne _080BC020 - movs r0, 0x2 - ldrsh r1, [r5, r0] - ldrh r0, [r2, 0x2] - adds r0, 0x7 - cmp r1, r0 - bne _080BC020 - ldr r0, [r2, 0x8] - strb r0, [r6] - b _080BC030 - .align 2, 0 -_080BC01C: .4byte gUnknown_020387DC -_080BC020: - movs r1, 0x80 - lsls r1, 9 - adds r0, r3, r1 - lsrs r3, r0, 16 - asrs r0, 16 - ldrb r1, [r4, 0x3] - cmp r0, r1 - blt _080BBFE8 -_080BC030: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BBFD8 - - thumb_func_start sub_80BC038 -sub_80BC038: @ 80BC038 - push {lr} - bl sub_80BBFD8 - bl sub_80BB5E4 - ldr r0, _080BC04C @ =gUnknown_081A2E14 - bl ScriptContext1_SetupScript - pop {r0} - bx r0 - .align 2, 0 -_080BC04C: .4byte gUnknown_081A2E14 - thumb_func_end sub_80BC038 - - thumb_func_start sub_80BC050 -sub_80BC050: @ 80BC050 - push {lr} - bl sub_80BB5D0 - bl sub_80BB5E4 - ldr r0, _080BC068 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0x1 - beq _080BC06C - movs r0, 0x1 - b _080BC06E - .align 2, 0 -_080BC068: .4byte gScriptResult -_080BC06C: - movs r0, 0 -_080BC06E: - pop {r1} - bx r1 - thumb_func_end sub_80BC050 - - thumb_func_start sub_80BC074 -sub_80BC074: @ 80BC074 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - ldr r1, _080BC098 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x1 - beq _080BC0AC - cmp r0, 0x1 - bgt _080BC09C - cmp r0, 0 - beq _080BC0A2 - b _080BC0E4 - .align 2, 0 -_080BC098: .4byte gTasks -_080BC09C: - cmp r0, 0x2 - beq _080BC0C4 - b _080BC0E4 -_080BC0A2: - bl ScriptContext2_Enable - movs r0, 0x1 - strh r0, [r4, 0x8] - b _080BC0E4 -_080BC0AC: - ldr r0, _080BC0C0 @ =gPaletteFade - ldrb r1, [r0, 0x7] - movs r0, 0x80 - ands r0, r1 - cmp r0, 0 - bne _080BC0E4 - movs r0, 0x2 - strh r0, [r4, 0x8] - b _080BC0E4 - .align 2, 0 -_080BC0C0: .4byte gPaletteFade -_080BC0C4: - movs r0, 0x7E - bl copy_saved_warp2_bank_and_enter_x_to_warp1 - bl warp_in - ldr r0, _080BC0EC @ =gUnknown_0300485C - ldr r1, _080BC0F0 @ =mapldr_default - str r1, [r0] - ldr r0, _080BC0F4 @ =CB2_LoadMap - bl SetMainCallback2 - bl ScriptContext2_Disable - adds r0, r5, 0 - bl DestroyTask -_080BC0E4: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BC0EC: .4byte gUnknown_0300485C -_080BC0F0: .4byte mapldr_default -_080BC0F4: .4byte CB2_LoadMap - thumb_func_end sub_80BC074 - - thumb_func_start sub_80BC0F8 -sub_80BC0F8: @ 80BC0F8 - push {lr} - ldr r0, _080BC110 @ =sub_80BC074 - movs r1, 0 - bl CreateTask - movs r0, 0x1 - movs r1, 0 - bl fade_screen - pop {r0} - bx r0 - .align 2, 0 -_080BC110: .4byte sub_80BC074 - thumb_func_end sub_80BC0F8 - - thumb_func_start sub_80BC114 -sub_80BC114: @ 80BC114 - push {lr} - ldr r0, _080BC12C @ =gSaveBlock1 - ldr r1, _080BC130 @ =0x00001a08 - adds r0, r1 - ldr r1, _080BC134 @ =gUnknown_020387DC - ldrb r0, [r0] - ldrb r1, [r1] - cmp r0, r1 - beq _080BC13C - ldr r1, _080BC138 @ =gScriptResult - movs r0, 0x1 - b _080BC140 - .align 2, 0 -_080BC12C: .4byte gSaveBlock1 -_080BC130: .4byte 0x00001a08 -_080BC134: .4byte gUnknown_020387DC -_080BC138: .4byte gScriptResult -_080BC13C: - ldr r1, _080BC148 @ =gScriptResult - movs r0, 0 -_080BC140: - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080BC148: .4byte gScriptResult - thumb_func_end sub_80BC114 - - thumb_func_start sub_80BC14C -sub_80BC14C: @ 80BC14C - push {r4,r5,lr} - lsls r0, 24 - lsrs r3, r0, 24 - movs r2, 0 - ldr r5, _080BC174 @ =gSaveBlock1 - ldr r4, _080BC178 @ =0x00001a08 -_080BC158: - lsls r0, r2, 16 - asrs r1, r0, 16 - lsls r0, r1, 2 - adds r0, r1 - lsls r0, 5 - adds r0, r5 - adds r0, r4 - ldrb r0, [r0] - cmp r0, r3 - bne _080BC17C - lsls r0, r2, 24 - lsrs r0, 24 - b _080BC18A - .align 2, 0 -_080BC174: .4byte gSaveBlock1 -_080BC178: .4byte 0x00001a08 -_080BC17C: - adds r0, r1, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - asrs r0, 16 - cmp r0, 0x13 - ble _080BC158 - movs r0, 0 -_080BC18A: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80BC14C - .section .text_80BC1D0 - thumb_func_start GetSecretBaseMapName -GetSecretBaseMapName: @ 80BC1D0 - push {r4-r6,lr} - mov r6, r8 - push {r6} - mov r8, r0 - ldr r6, _080BC214 @ =gUnknown_020387DC - ldr r5, _080BC218 @ =gSaveBlock1 - ldr r4, _080BC21C @ =0x00004054 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r1, r5 - ldr r0, _080BC220 @ =0x00001a08 - adds r1, r0 - ldrb r0, [r1] - strb r0, [r6] - adds r0, r4, 0 - bl VarGet - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - mov r0, r8 - bl sub_80BC190 - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_080BC214: .4byte gUnknown_020387DC -_080BC218: .4byte gSaveBlock1 -_080BC21C: .4byte 0x00004054 -_080BC220: .4byte 0x00001a08 - thumb_func_end GetSecretBaseMapName - - thumb_func_start sub_80BC224 -sub_80BC224: @ 80BC224 - push {r4,r5,lr} - ldr r0, _080BC25C @ =0x00004054 - bl VarGet - lsls r0, 24 - lsrs r0, 24 - lsls r4, r0, 2 - adds r4, r0 - lsls r4, 5 - ldr r0, _080BC260 @ =gSaveBlock1 + 0x1A0A - adds r4, r0 - ldr r5, _080BC264 @ =gStringVar1 - adds r0, r4, 0 - bl sub_80BB8A8 - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - adds r0, r5, 0 - adds r1, r4, 0 - bl StringCopyN - movs r1, 0xFF - strb r1, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BC25C: .4byte 0x00004054 -_080BC260: .4byte gSaveBlock1 + 0x1A0A -_080BC264: .4byte gStringVar1 - thumb_func_end sub_80BC224 - - thumb_func_start sub_80BC268 -sub_80BC268: @ 80BC268 - push {lr} - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080BC288 @ =gSaveBlock1 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 5 - adds r1, r2 - ldr r0, _080BC28C @ =0x00001a09 - adds r1, r0 - ldrb r0, [r1] - lsrs r0, 6 - cmp r0, 0 - bne _080BC290 - movs r0, 0 - b _080BC292 - .align 2, 0 -_080BC288: .4byte gSaveBlock1 -_080BC28C: .4byte 0x00001a09 -_080BC290: - movs r0, 0x1 -_080BC292: - pop {r1} - bx r1 - thumb_func_end sub_80BC268 - - thumb_func_start sub_80BC298 -sub_80BC298: @ 80BC298 - push {r4,r5,lr} - adds r5, r0, 0 - movs r1, 0x1A - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x1B - bl GetMonData - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x1C - bl GetMonData - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x1D - bl GetMonData - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x1E - bl GetMonData - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r5, 0 - movs r1, 0x1F - bl GetMonData - adds r4, r0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r4, 0 - movs r1, 0x6 - bl __udivsi3 - lsls r0, 24 - lsrs r0, 24 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_80BC298 - - thumb_func_start sub_80BC300 -sub_80BC300: @ 80BC300 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xC - movs r0, 0 - mov r10, r0 - movs r6, 0 - mov r9, r6 -_080BC314: - movs r4, 0 - lsls r3, r6, 2 - lsls r2, r6, 1 - ldr r7, _080BC424 @ =gPlayerParty - adds r1, r6, 0x1 - str r1, [sp] - adds r1, r3, 0 -_080BC322: - adds r0, r1, r4 - lsls r0, 1 - ldr r5, _080BC428 @ =gSaveBlock1 + 0x1A54 - adds r0, r5, r0 - mov r5, r9 - strh r5, [r0] - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - cmp r4, 0x3 - bls _080BC322 - ldr r1, _080BC42C @ =gSaveBlock1 + 0x1A84 - adds r0, r1, r2 - strh r5, [r0] - ldr r5, _080BC430 @ =gSaveBlock1 + 0x1A90 - adds r0, r5, r2 - mov r1, r9 - strh r1, [r0] - ldr r2, _080BC434 @ =gSaveBlock1 + 0x1A9C - adds r0, r2, r6 - mov r5, r9 - strb r5, [r0] - ldr r1, _080BC438 @ =gSaveBlock1 + 0x1A3C - adds r0, r1, r3 - mov r2, r9 - str r2, [r0] - ldr r3, _080BC43C @ =gSaveBlock1 + 0x1AA2 - adds r0, r3, r6 - strb r2, [r0] - movs r0, 0x64 - adds r5, r6, 0 - muls r5, r0 - adds r4, r5, r7 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _080BC408 - adds r0, r4, 0 - movs r1, 0x2D - bl GetMonData - cmp r0, 0 - bne _080BC408 - movs r4, 0 - mov r0, r10 - lsls r0, 2 - mov r8, r0 - mov r1, r10 - lsls r7, r1, 1 - adds r1, 0x1 - str r1, [sp, 0x4] - ldr r2, _080BC424 @ =gPlayerParty -_080BC38E: - adds r1, r4, 0 - adds r1, 0xD - adds r0, r5, r2 - str r2, [sp, 0x8] - bl GetMonData - mov r3, r8 - adds r1, r3, r4 - lsls r1, 1 - ldr r3, _080BC428 @ =gSaveBlock1 + 0x1A54 - adds r1, r3, r1 - strh r0, [r1] - adds r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - ldr r2, [sp, 0x8] - cmp r4, 0x3 - bls _080BC38E - movs r0, 0x64 - adds r4, r6, 0 - muls r4, r0 - ldr r0, _080BC424 @ =gPlayerParty - adds r4, r0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - ldr r5, _080BC42C @ =gSaveBlock1 + 0x1A84 - adds r1, r5, r7 - strh r0, [r1] - adds r0, r4, 0 - movs r1, 0xC - bl GetMonData - ldr r2, _080BC430 @ =gSaveBlock1 + 0x1A90 - adds r1, r2, r7 - strh r0, [r1] - adds r0, r4, 0 - movs r1, 0x38 - bl GetMonData - ldr r1, _080BC434 @ =gSaveBlock1 + 0x1A9C - add r1, r10 - strb r0, [r1] - adds r0, r4, 0 - movs r1, 0 - bl GetMonData - ldr r1, _080BC438 @ =gSaveBlock1 + 0x1A3C - add r1, r8 - str r0, [r1] - adds r0, r4, 0 - bl sub_80BC298 - ldr r1, _080BC43C @ =gSaveBlock1 + 0x1AA2 - add r1, r10 - strb r0, [r1] - ldr r3, [sp, 0x4] - lsls r0, r3, 16 - lsrs r0, 16 - mov r10, r0 -_080BC408: - ldr r5, [sp] - lsls r0, r5, 16 - lsrs r6, r0, 16 - cmp r6, 0x5 - bls _080BC314 - add sp, 0xC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BC424: .4byte gPlayerParty -_080BC428: .4byte gSaveBlock1 + 0x1A54 -_080BC42C: .4byte gSaveBlock1 + 0x1A84 -_080BC430: .4byte gSaveBlock1 + 0x1A90 -_080BC434: .4byte gSaveBlock1 + 0x1A9C -_080BC438: .4byte gSaveBlock1 + 0x1A3C -_080BC43C: .4byte gSaveBlock1 + 0x1AA2 - thumb_func_end sub_80BC300 - - thumb_func_start sub_80BC440 -sub_80BC440: @ 80BC440 - push {r4,r5,lr} - ldr r4, _080BC45C @ =gSaveBlock1 - ldr r0, _080BC460 @ =0x00001a16 - adds r4, r0 - ldrh r5, [r4] - movs r0, 0 - bl ResetSecretBase - strh r5, [r4] - bl sub_80BC0F8 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BC45C: .4byte gSaveBlock1 -_080BC460: .4byte 0x00001a16 - thumb_func_end sub_80BC440 - - thumb_func_start SecretBasePC_PackUp -SecretBasePC_PackUp: @ 80BC464 - push {lr} - movs r0, 0x14 - bl IncrementGameStat - bl sub_80BC440 - pop {r0} - bx r0 - thumb_func_end SecretBasePC_PackUp - thumb_func_start sub_80BC474 sub_80BC474: @ 80BC474 push {r4-r7,lr} @@ -7,51 +7,6 @@ .text - thumb_func_start ClearTVShowData -ClearTVShowData: @ 80BD7A8 - push {r4-r7,lr} - movs r3, 0 - ldr r6, _080BD7F0 @ =gSaveBlock1 - movs r4, 0 - ldr r0, _080BD7F4 @ =0x0000273a - adds r5, r6, r0 -_080BD7B4: - lsls r2, r3, 3 - adds r2, r3 - lsls r2, 2 - adds r1, r2, r6 - ldr r7, _080BD7F8 @ =0x00002738 - adds r0, r1, r7 - strb r4, [r0] - ldr r0, _080BD7FC @ =0x00002739 - adds r1, r0 - strb r4, [r1] - movs r1, 0 - adds r3, 0x1 -_080BD7CC: - adds r0, r1, r2 - adds r0, r5 - strb r4, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x21 - bls _080BD7CC - lsls r0, r3, 24 - lsrs r3, r0, 24 - cmp r3, 0x18 - bls _080BD7B4 - bl sub_80BEBF4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BD7F0: .4byte gSaveBlock1 -_080BD7F4: .4byte 0x0000273a -_080BD7F8: .4byte 0x00002738 -_080BD7FC: .4byte 0x00002739 - thumb_func_end ClearTVShowData - thumb_func_start special_0x44 special_0x44: @ 80BD800 push {r4-r7,lr} @@ -776,4512 +731,11 @@ _080BDD5C: _080BDD5E: pop {r1} bx r1 - thumb_func_end sub_80BDD18 - - thumb_func_start GabbyAndTySetScriptVarsToFieldObjectLocalIds -GabbyAndTySetScriptVarsToFieldObjectLocalIds: @ 80BDD64 - push {lr} - bl GabbyAndTyGetBattleNum - lsls r0, 24 - lsrs r0, 24 - subs r0, 0x1 - cmp r0, 0x7 - bhi _080BDE3C - lsls r0, 2 - ldr r1, _080BDD80 @ =_080BDD84 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080BDD80: .4byte _080BDD84 - .align 2, 0 -_080BDD84: - .4byte _080BDDA4 - .4byte _080BDDB8 - .4byte _080BDDCC - .4byte _080BDDE0 - .4byte _080BDDF4 - .4byte _080BDE08 - .4byte _080BDE1C - .4byte _080BDE30 -_080BDDA4: - ldr r1, _080BDDB0 @ =gSpecialVar_0x8004 - movs r0, 0xE - strh r0, [r1] - ldr r1, _080BDDB4 @ =gSpecialVar_0x8005 - movs r0, 0xD - b _080BDE3A - .align 2, 0 -_080BDDB0: .4byte gSpecialVar_0x8004 -_080BDDB4: .4byte gSpecialVar_0x8005 -_080BDDB8: - ldr r1, _080BDDC4 @ =gSpecialVar_0x8004 - movs r0, 0x5 - strh r0, [r1] - ldr r1, _080BDDC8 @ =gSpecialVar_0x8005 - movs r0, 0x6 - b _080BDE3A - .align 2, 0 -_080BDDC4: .4byte gSpecialVar_0x8004 -_080BDDC8: .4byte gSpecialVar_0x8005 -_080BDDCC: - ldr r1, _080BDDD8 @ =gSpecialVar_0x8004 - movs r0, 0x12 - strh r0, [r1] - ldr r1, _080BDDDC @ =gSpecialVar_0x8005 - movs r0, 0x11 - b _080BDE3A - .align 2, 0 -_080BDDD8: .4byte gSpecialVar_0x8004 -_080BDDDC: .4byte gSpecialVar_0x8005 -_080BDDE0: - ldr r1, _080BDDEC @ =gSpecialVar_0x8004 - movs r0, 0x15 - strh r0, [r1] - ldr r1, _080BDDF0 @ =gSpecialVar_0x8005 - movs r0, 0x16 - b _080BDE3A - .align 2, 0 -_080BDDEC: .4byte gSpecialVar_0x8004 -_080BDDF0: .4byte gSpecialVar_0x8005 -_080BDDF4: - ldr r1, _080BDE00 @ =gSpecialVar_0x8004 - movs r0, 0x8 - strh r0, [r1] - ldr r1, _080BDE04 @ =gSpecialVar_0x8005 - movs r0, 0x9 - b _080BDE3A - .align 2, 0 -_080BDE00: .4byte gSpecialVar_0x8004 -_080BDE04: .4byte gSpecialVar_0x8005 -_080BDE08: - ldr r1, _080BDE14 @ =gSpecialVar_0x8004 - movs r0, 0x13 - strh r0, [r1] - ldr r1, _080BDE18 @ =gSpecialVar_0x8005 - movs r0, 0x14 - b _080BDE3A - .align 2, 0 -_080BDE14: .4byte gSpecialVar_0x8004 -_080BDE18: .4byte gSpecialVar_0x8005 -_080BDE1C: - ldr r1, _080BDE28 @ =gSpecialVar_0x8004 - movs r0, 0x17 - strh r0, [r1] - ldr r1, _080BDE2C @ =gSpecialVar_0x8005 - movs r0, 0x18 - b _080BDE3A - .align 2, 0 -_080BDE28: .4byte gSpecialVar_0x8004 -_080BDE2C: .4byte gSpecialVar_0x8005 -_080BDE30: - ldr r1, _080BDE40 @ =gSpecialVar_0x8004 - movs r0, 0xA - strh r0, [r1] - ldr r1, _080BDE44 @ =gSpecialVar_0x8005 - movs r0, 0xB -_080BDE3A: - strh r0, [r1] -_080BDE3C: - pop {r0} - bx r0 - .align 2, 0 -_080BDE40: .4byte gSpecialVar_0x8004 -_080BDE44: .4byte gSpecialVar_0x8005 - thumb_func_end GabbyAndTySetScriptVarsToFieldObjectLocalIds - - thumb_func_start sub_80BDE48 -sub_80BDE48: @ 80BDE48 - push {lr} - ldr r0, _080BDE60 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0x6 - bhi _080BDEA6 - lsls r0, 2 - ldr r1, _080BDE64 @ =_080BDE68 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080BDE60: .4byte gSpecialVar_0x8005 -_080BDE64: .4byte _080BDE68 - .align 2, 0 -_080BDE68: - .4byte _080BDE84 - .4byte _080BDE8A - .4byte _080BDE90 - .4byte _080BDE96 - .4byte _080BDEA6 - .4byte _080BDE9C - .4byte _080BDEA2 -_080BDE84: - bl sub_80BE5FC - b _080BDEA6 -_080BDE8A: - bl sub_80BE65C - b _080BDEA6 -_080BDE90: - bl sub_80BE6A0 - b _080BDEA6 -_080BDE96: - bl nullsub_21 - b _080BDEA6 -_080BDE9C: - bl sub_80BE188 - b _080BDEA6 -_080BDEA2: - bl sub_80BE320 -_080BDEA6: - pop {r0} - bx r0 - thumb_func_end sub_80BDE48 - - thumb_func_start sub_80BDEAC -sub_80BDEAC: @ 80BDEAC - push {lr} - adds r1, r0, 0 - movs r2, GAME_LANGUAGE - ldrb r0, [r1] - cmp r0, 0xFC - bne _080BDEC0 - ldrb r0, [r1, 0x1] - cmp r0, 0x15 - bne _080BDEC0 - movs r2, 0x1 -_080BDEC0: - adds r0, r2, 0 - pop {r1} - bx r1 - thumb_func_end sub_80BDEAC - - thumb_func_start sub_80BDEC8 -sub_80BDEC8: @ 80BDEC8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - movs r4, 0 - bl sub_80BEB20 - bl sub_80BE778 - ldr r5, _080BDEE8 @ =gUnknown_030042E0 - ldrh r0, [r5, 0x28] - cmp r0, 0 - bne _080BDEEC - bl sub_80BE074 - b _080BE012 .align 2, 0 -_080BDEE8: .4byte gUnknown_030042E0 -_080BDEEC: - bl sub_80BE028 - ldr r0, _080BDF98 @ =0x0000ffff - bl sub_80BF77C - lsls r0, 24 - cmp r0, 0 - beq _080BDEFE - b _080BE012 -_080BDEFE: - ldrh r1, [r5, 0x28] - movs r0, 0xB - muls r0, r1 - ldr r1, _080BDF9C @ =gSpeciesNames - adds r0, r1 - adds r1, r5, 0 - adds r1, 0x2A - bl StringCompareWithoutExtCtrlCodes - cmp r0, 0 - bne _080BDF16 - b _080BE012 -_080BDF16: - ldr r0, _080BDFA0 @ =gSaveBlock1 + 0x2738 - bl sub_80BF74C - ldr r1, _080BDFA4 @ =gUnknown_03005D38 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BE012 - movs r0, 0x15 - bl sub_80BF1B4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BE012 - movs r2, 0 - adds r7, r5, 0 - adds r1, r7, 0 - adds r1, 0x36 -_080BDF42: - adds r0, r2, r1 - ldrb r0, [r0] - adds r0, r4, r0 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xA - bls _080BDF42 - cmp r4, 0 - bne _080BDF64 - ldrb r1, [r7, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080BE012 -_080BDF64: - movs r4, 0 - ldr r0, _080BDFA4 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BDFA0 @ =gSaveBlock1 + 0x2738 - adds r5, r0, r1 - movs r0, 0x15 - strb r0, [r5] - strb r4, [r5, 0x1] - ldrb r1, [r7, 0x5] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080BDFAC - movs r4, 0x1 - movs r0, 0x1 - adds r3, r5, 0 - adds r3, 0x13 - ldr r1, _080BDFA8 @ =gSaveBlock2 - mov r8, r1 - adds r6, r5, 0x4 - b _080BDFDE - .align 2, 0 -_080BDF98: .4byte 0x0000ffff -_080BDF9C: .4byte gSpeciesNames -_080BDFA0: .4byte gSaveBlock1 + 0x2738 -_080BDFA4: .4byte gUnknown_03005D38 -_080BDFA8: .4byte gSaveBlock2 -_080BDFAC: - movs r2, 0 - ldr r0, _080BE01C @ =gUnknown_02024C04 - mov r12, r0 - adds r3, r5, 0 - adds r3, 0x13 - ldr r1, _080BE020 @ =gSaveBlock2 - mov r8, r1 - adds r6, r5, 0x4 - adds r1, r7, 0 - adds r1, 0x36 -_080BDFC0: - adds r0, r2, r1 - ldrb r0, [r0] - adds r0, r4, r0 - lsls r0, 16 - lsrs r4, r0, 16 - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xA - bls _080BDFC0 - cmp r4, 0xFF - bls _080BDFDA - movs r4, 0xFF -_080BDFDA: - mov r1, r12 - ldrh r0, [r1] -_080BDFDE: - strb r4, [r5, 0x12] - strb r0, [r5, 0xF] - adds r0, r3, 0 - mov r1, r8 - bl StringCopy - ldr r4, _080BE024 @ =gUnknown_0300430A - adds r0, r6, 0 - adds r1, r4, 0 - bl StringCopy - subs r4, 0x2A - ldrh r0, [r4, 0x28] - strh r0, [r5, 0x10] - adds r0, r5, 0 - bl sub_80BE138 - movs r0, GAME_LANGUAGE - strb r0, [r5, 0x2] - adds r0, r6, 0 - bl sub_80BDEAC - strb r0, [r5, 0x3] - adds r0, r6, 0 - bl StripExtCtrlCodes -_080BE012: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BE01C: .4byte gUnknown_02024C04 -_080BE020: .4byte gSaveBlock2 -_080BE024: .4byte gUnknown_0300430A - thumb_func_end sub_80BDEC8 - - thumb_func_start sub_80BE028 -sub_80BE028: @ 80BE028 - push {r4,lr} - ldr r4, _080BE064 @ =gSaveBlock1 + 0x2A98 - ldrb r0, [r4] - cmp r0, 0x19 - beq _080BE048 - ldr r1, _080BE068 @ =0xfffffca0 - adds r0, r4, r1 - movs r1, 0x18 - bl sub_80BF55C - movs r0, 0x5 - bl GetGameStat - strh r0, [r4, 0x6] - movs r0, 0x19 - strb r0, [r4] -_080BE048: - ldrh r0, [r4, 0x2] - adds r0, 0x1 - strh r0, [r4, 0x2] - ldr r1, _080BE06C @ =gUnknown_030042E0 - ldrh r0, [r1, 0x28] - strh r0, [r4, 0x4] - ldrh r0, [r1, 0x6] - strh r0, [r4, 0x8] - ldr r0, _080BE070 @ =gMapHeader - ldrb r0, [r0, 0x14] - strb r0, [r4, 0xA] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BE064: .4byte gSaveBlock1 + 0x2A98 -_080BE068: .4byte 0xfffffca0 -_080BE06C: .4byte gUnknown_030042E0 -_080BE070: .4byte gMapHeader - thumb_func_end sub_80BE028 - - thumb_func_start sub_80BE074 -sub_80BE074: @ 80BE074 - push {r4-r7,lr} - ldr r0, _080BE118 @ =0x0000ffff - bl sub_80BF77C - lsls r0, 24 - cmp r0, 0 - bne _080BE112 - movs r1, 0 - movs r5, 0 - ldr r2, _080BE11C @ =gUnknown_03004316 -_080BE088: - adds r0, r1, r2 - ldrb r0, [r0] - adds r0, r5, r0 - lsls r0, 16 - lsrs r5, r0, 16 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xA - bls _080BE088 - cmp r5, 0xFF - bls _080BE0A2 - movs r5, 0xFF -_080BE0A2: - cmp r5, 0x2 - bls _080BE112 - ldr r7, _080BE120 @ =gUnknown_02024D26 - ldrb r0, [r7] - cmp r0, 0x1 - bne _080BE112 - ldr r6, _080BE124 @ =gSaveBlock1 + 0x2738 - adds r0, r6, 0 - bl sub_80BF74C - ldr r4, _080BE128 @ =gUnknown_03005D38 - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BE112 - movs r0, 0x17 - bl sub_80BF1B4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BE112 - movs r0, 0 - ldrsb r0, [r4, r0] - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - adds r4, r6 - movs r1, 0 - movs r0, 0x17 - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r1, _080BE12C @ =gUnknown_030042E0 - ldrh r0, [r1, 0x6] - strh r0, [r4, 0xC] - ldrh r0, [r1, 0x20] - strh r0, [r4, 0xE] - strb r5, [r4, 0x10] - ldrb r0, [r7] - strb r0, [r4, 0x11] - ldr r0, _080BE130 @ =gMapHeader - ldrb r0, [r0, 0x14] - strb r0, [r4, 0x12] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, _080BE134 @ =gSaveBlock2 - bl StringCopy - adds r0, r4, 0 - bl sub_80BE138 - movs r0, GAME_LANGUAGE - strb r0, [r4, 0x2] -_080BE112: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BE118: .4byte 0x0000ffff -_080BE11C: .4byte gUnknown_03004316 -_080BE120: .4byte gUnknown_02024D26 -_080BE124: .4byte gSaveBlock1 + 0x2738 -_080BE128: .4byte gUnknown_03005D38 -_080BE12C: .4byte gUnknown_030042E0 -_080BE130: .4byte gMapHeader -_080BE134: .4byte gSaveBlock2 - thumb_func_end sub_80BE074 - - thumb_func_start sub_80BE138 -sub_80BE138: @ 80BE138 - push {r4,lr} - adds r4, r0, 0 - bl GetPlayerTrainerId - strb r0, [r4, 0x1E] - lsrs r2, r0, 8 - strb r2, [r4, 0x1F] - adds r1, r4, 0 - adds r1, 0x20 - strb r0, [r1] - adds r1, 0x1 - strb r2, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r0, r4, 0 - adds r0, 0x23 - strb r2, [r0] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80BE138 - - thumb_func_start sub_80BE160 -sub_80BE160: @ 80BE160 - push {r4,lr} - adds r4, r0, 0 - bl GetPlayerTrainerId - adds r1, r4, 0 - adds r1, 0x20 - strb r0, [r1] - lsrs r1, r0, 8 - adds r2, r4, 0 - adds r2, 0x21 - strb r1, [r2] - adds r2, 0x1 - strb r0, [r2] - adds r0, r4, 0 - adds r0, 0x23 - strb r1, [r0] - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80BE160 - - thumb_func_start sub_80BE188 -sub_80BE188: @ 80BE188 - push {r4-r6,lr} - ldr r6, _080BE22C @ =gSaveBlock1 + 0x2A98 - ldrb r1, [r6] - cmp r1, 0x6 - bne _080BE224 - ldr r0, _080BE230 @ =gUnknown_03005D38 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - ldr r2, _080BE234 @ =0xfffffca0 - adds r0, r6, r2 - adds r4, r0 - strb r1, [r4] - movs r0, 0x1 - strb r0, [r4, 0x1] - ldrh r0, [r6, 0x2] - strh r0, [r4, 0x2] - adds r0, r4, 0 - adds r0, 0x16 - ldr r1, _080BE238 @ =gSaveBlock2 - bl StringCopy - adds r5, r4, 0 - adds r5, 0x8 - adds r1, r6, 0 - adds r1, 0x8 - adds r0, r5, 0 - bl StringCopy - ldrb r0, [r6, 0x13] - lsls r0, 29 - lsrs r0, 29 - ldrb r2, [r4, 0x13] - movs r3, 0x8 - negs r3, r3 - adds r1, r3, 0 - ands r1, r2 - orrs r1, r0 - strb r1, [r4, 0x13] - ldrb r2, [r6, 0x13] - movs r0, 0x18 - ands r0, r2 - movs r2, 0x19 - negs r2, r2 - ands r2, r1 - orrs r2, r0 - strb r2, [r4, 0x13] - ldrh r0, [r6, 0x14] - strh r0, [r4, 0x14] - ldrb r0, [r6, 0x13] - movs r1, 0x60 - ands r1, r0 - movs r0, 0x61 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - strb r0, [r4, 0x13] - ldrb r1, [r6, 0x13] - lsls r1, 29 - lsrs r1, 29 - ands r0, r3 - orrs r0, r1 - strb r0, [r4, 0x13] - adds r0, r4, 0 - bl sub_80BE160 - movs r0, GAME_LANGUAGE - strb r0, [r4, 0x1E] - adds r0, r5, 0 - bl sub_80BDEAC - strb r0, [r4, 0x1F] - adds r0, r5, 0 - bl StripExtCtrlCodes -_080BE224: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BE22C: .4byte gSaveBlock1 + 0x2A98 -_080BE230: .4byte gUnknown_03005D38 -_080BE234: .4byte 0xfffffca0 -_080BE238: .4byte gSaveBlock2 - thumb_func_end sub_80BE188 - - thumb_func_start sub_80BE23C -sub_80BE23C: @ 80BE23C - push {r4-r6,lr} - lsls r0, 16 - lsrs r6, r0, 16 - ldr r4, _080BE278 @ =gSaveBlock1 + 0x2A98 - bl sub_80BF484 - ldr r0, _080BE27C @ =0xfffffca0 - adds r5, r4, r0 - adds r0, r5, 0 - bl sub_80BF720 - ldr r1, _080BE280 @ =gUnknown_03005D38 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BE270 - adds r0, r5, 0 - movs r1, 0x18 - bl sub_80BF55C - strh r6, [r4, 0x14] - movs r0, 0x6 - strb r0, [r4] -_080BE270: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BE278: .4byte gSaveBlock1 + 0x2A98 -_080BE27C: .4byte 0xfffffca0 -_080BE280: .4byte gUnknown_03005D38 - thumb_func_end sub_80BE23C - - thumb_func_start sub_80BE284 -sub_80BE284: @ 80BE284 - push {r4-r7,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r7, _080BE304 @ =gSaveBlock1 + 0x2A98 - ldr r1, _080BE308 @ =0xfffffca0 - adds r0, r7, r1 - bl sub_80BF720 - ldr r1, _080BE30C @ =gUnknown_03005D38 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BE2FE - movs r3, 0x3 - adds r1, r4, 0 - ands r1, r3 - lsls r1, 5 - ldrb r2, [r7, 0x13] - movs r0, 0x61 - negs r0, r0 - ands r0, r2 - orrs r0, r1 - ldr r1, _080BE310 @ =gScriptContestCategory - ldrb r2, [r1] - movs r1, 0x7 - ands r1, r2 - movs r2, 0x8 - negs r2, r2 - ands r0, r2 - orrs r0, r1 - ldr r1, _080BE314 @ =gScriptContestRank - ldrb r1, [r1] - ands r3, r1 - lsls r3, 3 - movs r1, 0x19 - negs r1, r1 - ands r0, r1 - orrs r0, r3 - strb r0, [r7, 0x13] - ldr r6, _080BE318 @ =gUnknown_02038694 - ldrb r0, [r6] - movs r5, 0x64 - muls r0, r5 - ldr r4, _080BE31C @ =gPlayerParty - adds r0, r4 - movs r1, 0xB - movs r2, 0 - bl GetMonData - strh r0, [r7, 0x2] - ldrb r0, [r6] - muls r0, r5 - adds r0, r4 - adds r2, r7, 0 - adds r2, 0x8 - movs r1, 0x2 - bl GetMonData -_080BE2FE: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BE304: .4byte gSaveBlock1 + 0x2A98 -_080BE308: .4byte 0xfffffca0 -_080BE30C: .4byte gUnknown_03005D38 -_080BE310: .4byte gScriptContestCategory -_080BE314: .4byte gScriptContestRank -_080BE318: .4byte gUnknown_02038694 -_080BE31C: .4byte gPlayerParty - thumb_func_end sub_80BE284 - - thumb_func_start sub_80BE320 -sub_80BE320: @ 80BE320 - push {r4-r6,lr} - ldr r0, _080BE384 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BE388 @ =gSaveBlock1 + 0x2738 - adds r6, r0, r1 - movs r0, 0x7 - strb r0, [r6] - movs r0, 0x1 - strb r0, [r6, 0x1] - adds r0, r6, 0x2 - ldr r4, _080BE38C @ =gSaveBlock2 - adds r1, r4, 0 - bl StringCopy - adds r0, r6, 0 - adds r0, 0xC - ldr r2, _080BE390 @ =0x00000484 - adds r1, r4, r2 - bl StringCopy - movs r1, 0x90 - lsls r1, 3 - adds r0, r4, r1 - ldrh r0, [r0] - strh r0, [r6, 0xA] - ldr r2, _080BE394 @ =0x00000482 - adds r0, r4, r2 - ldrh r0, [r0] - strh r0, [r6, 0x14] - movs r0, 0xAF - lsls r0, 3 - adds r5, r4, r0 - ldrb r0, [r5] - bl sub_8135D3C - strh r0, [r6, 0x16] - ldr r1, _080BE398 @ =0x00000555 - adds r4, r1 - ldrb r0, [r4] - strb r0, [r6, 0x1C] - ldrb r0, [r5] - cmp r0, 0 - bne _080BE39C - movs r0, 0x32 - b _080BE39E - .align 2, 0 -_080BE384: .4byte gUnknown_03005D38 -_080BE388: .4byte gSaveBlock1 + 0x2738 -_080BE38C: .4byte gSaveBlock2 -_080BE390: .4byte 0x00000484 -_080BE394: .4byte 0x00000482 -_080BE398: .4byte 0x00000555 -_080BE39C: - movs r0, 0x64 -_080BE39E: - strb r0, [r6, 0x1A] - ldr r0, _080BE3B8 @ =gSpecialVar_0x8004 - ldrh r0, [r0] - strb r0, [r6, 0x1B] - adds r0, r6, 0 - bl sub_80BE160 - movs r0, GAME_LANGUAGE - strb r0, [r6, 0x1D] - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BE3B8: .4byte gSpecialVar_0x8004 - thumb_func_end sub_80BE320 - - thumb_func_start sub_80BE3BC -sub_80BE3BC: @ 80BE3BC - push {r4-r7,lr} - ldr r0, _080BE460 @ =0x00005555 - bl sub_80BF77C - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0 - bne _080BE458 - ldr r6, _080BE464 @ =gSaveBlock1 + 0x2738 - adds r0, r6, 0 - bl sub_80BF74C - ldr r5, _080BE468 @ =gUnknown_03005D38 - strb r0, [r5] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BE458 - movs r0, 0x16 - bl sub_80BF1B4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BE458 - bl sub_80BF20C - ldr r2, _080BE46C @ =gUnknown_02038724 - ldrh r0, [r2, 0x2] - cmp r0, 0x13 - bls _080BE458 - movs r1, 0 - ldrsb r1, [r5, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r5, r0, r6 - movs r0, 0x16 - strb r0, [r5] - strb r4, [r5, 0x1] - ldr r0, _080BE470 @ =gMapHeader - ldrb r0, [r0, 0x14] - strb r0, [r5, 0x12] - movs r4, 0 - adds r7, r5, 0x6 - mov r12, r2 - adds r6, r5, 0 - adds r6, 0xC -_080BE420: - lsls r2, r4, 1 - adds r3, r7, r2 - lsls r1, r4, 2 - add r1, r12 - ldrh r0, [r1] - strh r0, [r3] - adds r2, r6, r2 - ldrh r0, [r1, 0x2] - strh r0, [r2] - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x2 - bls _080BE420 - movs r0, 0x1 - bl GetPriceReduction - strb r0, [r5, 0x2] - adds r0, r5, 0 - adds r0, 0x13 - ldr r1, _080BE474 @ =gSaveBlock2 - bl StringCopy - adds r0, r5, 0 - bl sub_80BE138 - movs r0, GAME_LANGUAGE - strb r0, [r5, 0x3] -_080BE458: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BE460: .4byte 0x00005555 -_080BE464: .4byte gSaveBlock1 + 0x2738 -_080BE468: .4byte gUnknown_03005D38 -_080BE46C: .4byte gUnknown_02038724 -_080BE470: .4byte gMapHeader -_080BE474: .4byte gSaveBlock2 - thumb_func_end sub_80BE3BC - + thumb_func_end sub_80BDD18 .section .text_80BE8EC - thumb_func_start sub_80BE8EC -sub_80BE8EC: @ 80BE8EC - push {r4-r7,lr} - lsls r0, 16 - lsrs r4, r0, 16 - ldr r1, _080BE930 @ =gSaveBlock1 - ldr r2, _080BE934 @ =0x00002afc - adds r0, r1, r2 - ldrh r0, [r0] - cmp r0, 0 - bne _080BE94C - movs r3, 0 - adds r5, r1, 0 - ldr r7, _080BE938 @ =0x00002738 - adds r6, r5, r7 -_080BE906: - lsls r0, r3, 3 - adds r0, r3 - lsls r2, r0, 2 - adds r1, r2, r5 - ldr r7, _080BE938 @ =0x00002738 - adds r0, r1, r7 - ldrb r0, [r0] - cmp r0, 0x29 - bne _080BE942 - adds r7, 0x1 - adds r0, r1, r7 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080BE942 - adds r1, r2, r6 - ldrh r0, [r1, 0x16] - cmp r0, r4 - bcs _080BE93C - movs r0, 0 - strh r0, [r1, 0x16] - b _080BE94C - .align 2, 0 -_080BE930: .4byte gSaveBlock1 -_080BE934: .4byte 0x00002afc -_080BE938: .4byte 0x00002738 -_080BE93C: - subs r0, r4 - strh r0, [r1, 0x16] - b _080BE94C -_080BE942: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x17 - bls _080BE906 -_080BE94C: - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BE8EC - - thumb_func_start UpdateMassOutbreakTimeLeft -UpdateMassOutbreakTimeLeft: @ 80BE954 - push {lr} - lsls r0, 16 - lsrs r1, r0, 16 - ldr r0, _080BE96C @ =gSaveBlock1 - ldr r3, _080BE970 @ =0x00002b0e - adds r2, r0, r3 - ldrh r0, [r2] - cmp r0, r1 - bhi _080BE974 - bl EndMassOutbreak - b _080BE978 - .align 2, 0 -_080BE96C: .4byte gSaveBlock1 -_080BE970: .4byte 0x00002b0e -_080BE974: - subs r0, r1 - strh r0, [r2] -_080BE978: - pop {r0} - bx r0 - thumb_func_end UpdateMassOutbreakTimeLeft - - thumb_func_start sub_80BE97C -sub_80BE97C: @ 80BE97C - push {r4,lr} - lsls r0, 24 - cmp r0, 0 - beq _080BE9A4 - ldr r4, _080BE9A0 @ =gUnknown_020387E2 - ldrh r0, [r4] - lsrs r0, 8 - cmp r0, 0x4 - bls _080BE992 - bl sub_80BE9D4 -_080BE992: - ldrb r0, [r4] - strh r0, [r4] - cmp r0, 0xFF - beq _080BE9C8 - adds r0, 0x1 - b _080BE9C6 - .align 2, 0 -_080BE9A0: .4byte gUnknown_020387E2 -_080BE9A4: - ldr r4, _080BE9D0 @ =gUnknown_020387E2 - ldrb r0, [r4] - cmp r0, 0x4 - bls _080BE9B0 - bl sub_80BE9D4 -_080BE9B0: - ldrh r0, [r4] - movs r1, 0xFF - lsls r1, 8 - ands r1, r0 - strh r1, [r4] - lsrs r0, r1, 8 - cmp r0, 0xFF - beq _080BE9C8 - movs r2, 0x80 - lsls r2, 1 - adds r0, r1, r2 -_080BE9C6: - strh r0, [r4] -_080BE9C8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BE9D0: .4byte gUnknown_020387E2 - thumb_func_end sub_80BE97C - - thumb_func_start sub_80BE9D4 -sub_80BE9D4: @ 80BE9D4 - push {r4,r5,lr} - ldr r5, _080BEA3C @ =gSaveBlock1 + 0x2738 - adds r0, r5, 0 - bl sub_80BF74C - ldr r4, _080BEA40 @ =gUnknown_03005D38 - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BEA36 - movs r0, 0x18 - bl sub_80BF1B4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BEA36 - movs r0, 0 - ldrsb r0, [r4, r0] - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - adds r4, r5 - movs r1, 0 - movs r0, 0x18 - strb r0, [r4] - strb r1, [r4, 0x1] - ldr r1, _080BEA44 @ =gUnknown_020387E2 - ldrh r0, [r1] - strb r0, [r4, 0x2] - ldrh r0, [r1] - lsrs r0, 8 - strb r0, [r4, 0x3] - ldr r0, _080BEA48 @ =gUnknown_020387E0 - ldrh r0, [r0] - strh r0, [r4, 0x4] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, _080BEA4C @ =gSaveBlock2 - bl StringCopy - adds r0, r4, 0 - bl sub_80BE138 - movs r0, GAME_LANGUAGE - strb r0, [r4, 0x6] -_080BEA36: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BEA3C: .4byte gSaveBlock1 + 0x2738 -_080BEA40: .4byte gUnknown_03005D38 -_080BEA44: .4byte gUnknown_020387E2 -_080BEA48: .4byte gUnknown_020387E0 -_080BEA4C: .4byte gSaveBlock2 - thumb_func_end sub_80BE9D4 - - thumb_func_start sub_80BEA50 -sub_80BEA50: @ 80BEA50 - ldr r1, _080BEA58 @ =gUnknown_020387E0 - strh r0, [r1] - bx lr - .align 2, 0 -_080BEA58: .4byte gUnknown_020387E0 - thumb_func_end sub_80BEA50 - - thumb_func_start sub_80BEA5C -sub_80BEA5C: @ 80BEA5C - push {lr} - ldr r1, _080BEA78 @ =gSaveBlock1 + 0x2A98 - ldrb r0, [r1] - cmp r0, 0x19 - bne _080BEA84 - ldrh r0, [r1, 0x2] - cmp r0, 0x13 - bhi _080BEA80 - ldr r2, _080BEA7C @ =0xfffffca0 - adds r0, r1, r2 - movs r1, 0x18 - bl sub_80BF55C - b _080BEA84 - .align 2, 0 -_080BEA78: .4byte gSaveBlock1 + 0x2A98 -_080BEA7C: .4byte 0xfffffca0 -_080BEA80: - bl sub_80BEA88 -_080BEA84: - pop {r0} - bx r0 - thumb_func_end sub_80BEA5C - - thumb_func_start sub_80BEA88 -sub_80BEA88: @ 80BEA88 - push {r4-r7,lr} - ldr r5, _080BEB0C @ =gSaveBlock1 + 0x2A98 - ldr r0, _080BEB10 @ =0x0000ffff - bl sub_80BF77C - lsls r0, 24 - lsrs r6, r0, 24 - cmp r6, 0 - bne _080BEB04 - ldr r0, _080BEB14 @ =0xfffffca0 - adds r7, r5, r0 - adds r0, r7, 0 - bl sub_80BF74C - ldr r4, _080BEB18 @ =gUnknown_03005D38 - strb r0, [r4] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BEB04 - movs r0, 0x19 - bl sub_80BF1B4 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BEB04 - movs r0, 0 - ldrsb r0, [r4, r0] - lsls r4, r0, 3 - adds r4, r0 - lsls r4, 2 - adds r4, r7 - movs r0, 0x19 - strb r0, [r4] - strb r6, [r4, 0x1] - ldrh r0, [r5, 0x2] - strh r0, [r4, 0x2] - movs r0, 0x5 - bl GetGameStat - ldrh r1, [r5, 0x6] - subs r0, r1 - strh r0, [r4, 0x6] - ldrh r0, [r5, 0x4] - strh r0, [r4, 0x4] - ldrh r0, [r5, 0x8] - strh r0, [r4, 0x8] - ldrb r0, [r5, 0xA] - strb r0, [r4, 0xA] - adds r0, r4, 0 - adds r0, 0x13 - ldr r1, _080BEB1C @ =gSaveBlock2 - bl StringCopy - adds r0, r4, 0 - bl sub_80BE138 - movs r0, GAME_LANGUAGE - strb r0, [r4, 0xB] -_080BEB04: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BEB0C: .4byte gSaveBlock1 + 0x2A98 -_080BEB10: .4byte 0x0000ffff -_080BEB14: .4byte 0xfffffca0 -_080BEB18: .4byte gUnknown_03005D38 -_080BEB1C: .4byte gSaveBlock2 - thumb_func_end sub_80BEA88 - - thumb_func_start sub_80BEB20 -sub_80BEB20: @ 80BEB20 - push {r4-r6,lr} - ldr r0, _080BEBAC @ =0x00000804 - bl FlagGet - lsls r0, 24 - cmp r0, 0 - beq _080BEBA6 - ldr r6, _080BEBB0 @ =gSaveBlock1 + 0x2ABC - adds r0, r6, 0 - bl sub_80BEBC8 - ldr r5, _080BEBB4 @ =gUnknown_03005D38 - strb r0, [r5] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BEBA6 - ldr r0, _080BEBB8 @ =0x0000028f - bl sub_80BF77C - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BEBA6 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - lsls r0, r4, 24 - lsrs r0, 24 - bl sub_80BEE48 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BEBA6 - movs r0, 0 - ldrsb r0, [r5, r0] - lsls r0, 2 - ldr r1, _080BEBBC @ =0xffffd544 - adds r2, r6, r1 - adds r0, r6, r0 - strb r4, [r0] - movs r0, 0 - ldrsb r0, [r5, r0] - lsls r0, 2 - adds r0, r2 - ldr r1, _080BEBC0 @ =0x00002abe - adds r0, r1 - movs r1, 0x4 - strh r1, [r0] - movs r0, 0 - ldrsb r0, [r5, r0] - lsls r0, 2 - adds r0, r2 - ldr r1, _080BEBC4 @ =0x00002abd - adds r0, r1 - movs r1, 0x1 - strb r1, [r0] -_080BEBA6: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BEBAC: .4byte 0x00000804 -_080BEBB0: .4byte gSaveBlock1 + 0x2ABC -_080BEBB4: .4byte gUnknown_03005D38 -_080BEBB8: .4byte 0x0000028f -_080BEBBC: .4byte 0xffffd544 -_080BEBC0: .4byte 0x00002abe -_080BEBC4: .4byte 0x00002abd - thumb_func_end sub_80BEB20 - - thumb_func_start sub_80BEBC8 -sub_80BEBC8: @ 80BEBC8 - push {lr} - adds r2, r0, 0 - movs r1, 0 -_080BEBCE: - lsls r0, r1, 24 - asrs r1, r0, 24 - lsls r0, r1, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080BEBE0 - adds r0, r1, 0 - b _080BEBF0 -_080BEBE0: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - asrs r0, 24 - cmp r0, 0xF - ble _080BEBCE - movs r0, 0x1 - negs r0, r0 -_080BEBF0: - pop {r1} - bx r1 - thumb_func_end sub_80BEBC8 - - thumb_func_start sub_80BEBF4 -sub_80BEBF4: @ 80BEBF4 - push {r4,lr} - movs r4, 0 -_080BEBF8: - adds r0, r4, 0 - bl sub_80BEC10 - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _080BEBF8 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80BEBF4 - - thumb_func_start sub_80BEC10 -sub_80BEC10: @ 80BEC10 - lsls r0, 24 - ldr r1, _080BEC30 @ =gSaveBlock1 - lsrs r0, 22 - adds r0, r1 - ldr r2, _080BEC34 @ =0x00002abc - adds r1, r0, r2 - movs r2, 0 - strb r2, [r1] - ldr r3, _080BEC38 @ =0x00002abd - adds r1, r0, r3 - strb r2, [r1] - ldr r1, _080BEC3C @ =0x00002abe - adds r0, r1 - strh r2, [r0] - bx lr - .align 2, 0 -_080BEC30: .4byte gSaveBlock1 -_080BEC34: .4byte 0x00002abc -_080BEC38: .4byte 0x00002abd -_080BEC3C: .4byte 0x00002abe - thumb_func_end sub_80BEC10 - - thumb_func_start sub_80BEC40 -sub_80BEC40: @ 80BEC40 - push {r4-r7,lr} - movs r1, 0 - ldr r6, _080BEC80 @ =gSaveBlock1 -_080BEC46: - ldr r3, _080BEC80 @ =gSaveBlock1 - lsls r2, r1, 2 - adds r0, r2, r3 - ldr r4, _080BEC84 @ =0x00002abc - adds r0, r4 - ldrb r0, [r0] - adds r5, r1, 0x1 - cmp r0, 0 - bne _080BEC92 - lsls r0, r5, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bhi _080BEC92 - adds r4, r3, r4 - adds r3, r2, r4 -_080BEC64: - lsls r2, r1, 2 - adds r0, r2, r6 - ldr r7, _080BEC84 @ =0x00002abc - adds r0, r7 - ldrb r0, [r0] - cmp r0, 0 - beq _080BEC88 - adds r0, r2, r4 - ldr r0, [r0] - str r0, [r3] - adds r0, r1, 0 - bl sub_80BEC10 - b _080BEC92 - .align 2, 0 -_080BEC80: .4byte gSaveBlock1 -_080BEC84: .4byte 0x00002abc -_080BEC88: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _080BEC64 -_080BEC92: - lsls r0, r5, 24 - lsrs r1, r0, 24 - cmp r1, 0xE - bls _080BEC46 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BEC40 - - thumb_func_start sub_80BECA0 -sub_80BECA0: @ 80BECA0 - push {r4,lr} - movs r2, 0 - ldr r3, _080BECCC @ =gSaveBlock1 -_080BECA6: - lsls r0, r2, 2 - adds r1, r0, r3 - ldr r4, _080BECD0 @ =0x00002abc - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _080BECD4 - adds r4, 0x1 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0x1 - bne _080BECD4 - adds r4, 0x1 - adds r0, r1, r4 - ldrh r0, [r0] - cmp r0, 0x2 - bhi _080BECD4 - adds r0, r2, 0 - b _080BECE0 - .align 2, 0 -_080BECCC: .4byte gSaveBlock1 -_080BECD0: .4byte 0x00002abc -_080BECD4: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xF - bls _080BECA6 - movs r0, 0xFF -_080BECE0: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BECA0 - - thumb_func_start sub_80BECE8 -sub_80BECE8: @ 80BECE8 - push {r4,lr} - bl sub_80BECA0 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xFF - bne _080BED00 - ldr r1, _080BECFC @ =gScriptResult - movs r0, 0 - b _080BED86 - .align 2, 0 -_080BECFC: .4byte gScriptResult -_080BED00: - ldr r0, _080BED2C @ =gSaveBlock1 - lsls r1, 2 - adds r4, r1, r0 - ldr r0, _080BED30 @ =0x00002abe - adds r1, r4, r0 - ldrh r0, [r1] - cmp r0, 0 - bne _080BED5C - ldr r2, _080BED34 @ =0x00002abd - adds r1, r4, r2 - movs r0, 0x2 - strb r0, [r1] - ldr r0, _080BED38 @ =gLocalTime - ldrb r0, [r0, 0x2] - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x13 - bgt _080BED40 - ldr r1, _080BED3C @ =gTVNewsTextGroup2 - subs r2, 0x1 - b _080BED44 - .align 2, 0 -_080BED2C: .4byte gSaveBlock1 -_080BED30: .4byte 0x00002abe -_080BED34: .4byte 0x00002abd -_080BED38: .4byte gLocalTime -_080BED3C: .4byte gTVNewsTextGroup2 -_080BED40: - ldr r1, _080BED54 @ =gTVNewsTextGroup3 - ldr r2, _080BED58 @ =0x00002abc -_080BED44: - adds r0, r4, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl ShowFieldMessage - b _080BED82 - .align 2, 0 -_080BED54: .4byte gTVNewsTextGroup3 -_080BED58: .4byte 0x00002abc -_080BED5C: - ldrh r1, [r1] - ldr r0, _080BED90 @ =gStringVar1 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - ldr r0, _080BED94 @ =0x00002abd - adds r1, r4, r0 - movs r0, 0 - strb r0, [r1] - ldr r1, _080BED98 @ =gTVNewsTextGroup1 - ldr r2, _080BED9C @ =0x00002abc - adds r0, r4, r2 - ldrb r0, [r0] - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - bl ShowFieldMessage -_080BED82: - ldr r1, _080BEDA0 @ =gScriptResult - movs r0, 0x1 -_080BED86: - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BED90: .4byte gStringVar1 -_080BED94: .4byte 0x00002abd -_080BED98: .4byte gTVNewsTextGroup1 -_080BED9C: .4byte 0x00002abc -_080BEDA0: .4byte gScriptResult - thumb_func_end sub_80BECE8 - - thumb_func_start GetPriceReduction -GetPriceReduction: @ 80BEDA4 - push {r4,r5,lr} - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0 - bne _080BEDB4 - b _080BEDF6 -_080BEDB0: - movs r0, 0x1 - b _080BEDF8 -_080BEDB4: - movs r2, 0 - ldr r4, _080BEDE0 @ =gSaveBlock1 -_080BEDB8: - lsls r0, r2, 2 - adds r1, r0, r4 - ldr r5, _080BEDE4 @ =0x00002abc - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, r3 - bne _080BEDEC - ldr r2, _080BEDE8 @ =0x00002abd - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0x2 - bne _080BEDF6 - adds r0, r3, 0 - bl IsPriceDiscounted - lsls r0, 24 - cmp r0, 0 - bne _080BEDB0 - b _080BEDF6 - .align 2, 0 -_080BEDE0: .4byte gSaveBlock1 -_080BEDE4: .4byte 0x00002abc -_080BEDE8: .4byte 0x00002abd -_080BEDEC: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xF - bls _080BEDB8 -_080BEDF6: - movs r0, 0 -_080BEDF8: - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end GetPriceReduction - - thumb_func_start IsPriceDiscounted -IsPriceDiscounted: @ 80BEE00 - push {lr} - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BEE12 - cmp r0, 0x3 - beq _080BEE30 -_080BEE0E: - movs r0, 0x1 - b _080BEE3C -_080BEE12: - ldr r0, _080BEE28 @ =gSaveBlock1 - ldrh r1, [r0, 0x4] - movs r0, 0x80 - lsls r0, 1 - cmp r1, r0 - bne _080BEE3A - ldr r0, _080BEE2C @ =gScriptLastTalked - ldrh r0, [r0] - cmp r0, 0x1A - beq _080BEE0E - b _080BEE3A - .align 2, 0 -_080BEE28: .4byte gSaveBlock1 -_080BEE2C: .4byte gScriptLastTalked -_080BEE30: - ldr r0, _080BEE40 @ =gSaveBlock1 - ldrh r1, [r0, 0x4] - ldr r0, _080BEE44 @ =0x0000160d - cmp r1, r0 - beq _080BEE0E -_080BEE3A: - movs r0, 0 -_080BEE3C: - pop {r1} - bx r1 - .align 2, 0 -_080BEE40: .4byte gSaveBlock1 -_080BEE44: .4byte 0x0000160d - thumb_func_end IsPriceDiscounted - - thumb_func_start sub_80BEE48 -sub_80BEE48: @ 80BEE48 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - bne _080BEE56 -_080BEE52: - movs r0, 0x1 - b _080BEE74 -_080BEE56: - movs r1, 0 - ldr r4, _080BEE7C @ =gSaveBlock1 - ldr r3, _080BEE80 @ =0x00002abc -_080BEE5C: - lsls r0, r1, 2 - adds r0, r4 - adds r0, r3 - ldrb r0, [r0] - cmp r0, r2 - beq _080BEE52 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _080BEE5C - movs r0, 0 -_080BEE74: - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_080BEE7C: .4byte gSaveBlock1 -_080BEE80: .4byte 0x00002abc - thumb_func_end sub_80BEE48 - - thumb_func_start sub_80BEE84 -sub_80BEE84: @ 80BEE84 - push {r4-r7,lr} - mov r7, r8 - push {r7} - lsls r0, 16 - lsrs r7, r0, 16 - movs r5, 0 - ldr r0, _080BEEB8 @ =gSaveBlock1 - mov r8, r0 -_080BEE94: - lsls r0, r5, 2 - mov r1, r8 - adds r2, r0, r1 - ldr r3, _080BEEBC @ =0x00002abc - adds r1, r2, r3 - ldrb r1, [r1] - adds r6, r0, 0 - cmp r1, 0 - beq _080BEEEC - ldr r1, _080BEEC0 @ =0x00002abe - adds r0, r2, r1 - ldrh r0, [r0] - cmp r0, r7 - bcs _080BEEC4 - adds r0, r5, 0 - bl sub_80BEC10 - b _080BEEEC - .align 2, 0 -_080BEEB8: .4byte gSaveBlock1 -_080BEEBC: .4byte 0x00002abc -_080BEEC0: .4byte 0x00002abe -_080BEEC4: - ldr r3, _080BEF04 @ =0x00002abd - adds r4, r2, r3 - ldrb r0, [r4] - cmp r0, 0 - bne _080BEEDE - ldr r0, _080BEF08 @ =0x00000804 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080BEEDE - strb r0, [r4] -_080BEEDE: - mov r0, r8 - adds r1, r6, r0 - ldr r3, _080BEF0C @ =0x00002abe - adds r1, r3 - ldrh r0, [r1] - subs r0, r7 - strh r0, [r1] -_080BEEEC: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xF - bls _080BEE94 - bl sub_80BEC40 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BEF04: .4byte 0x00002abd -_080BEF08: .4byte 0x00000804 -_080BEF0C: .4byte 0x00002abe - thumb_func_end sub_80BEE84 - - thumb_func_start sub_80BEF10 -sub_80BEF10: @ 80BEF10 - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r2, r1, 0 - cmp r1, 0x1 - beq _080BEF50 - cmp r1, 0x1 - bgt _080BEF2A - cmp r1, 0 - beq _080BEF34 - b _080BEF98 -_080BEF2A: - cmp r2, 0x2 - beq _080BEF6C - cmp r2, 0x3 - beq _080BEF88 - b _080BEF98 -_080BEF34: - ldr r1, _080BEF48 @ =gUnknown_083D1464 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BEF4C @ =gUnknown_083CE048 - ldr r1, [r1, 0x14] - bl StringCopy - b _080BEF98 - .align 2, 0 -_080BEF48: .4byte gUnknown_083D1464 -_080BEF4C: .4byte gUnknown_083CE048 -_080BEF50: - ldr r1, _080BEF64 @ =gUnknown_083D1464 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BEF68 @ =gUnknown_083CE048 - ldr r1, [r1, 0x18] - bl StringCopy - b _080BEF98 - .align 2, 0 -_080BEF64: .4byte gUnknown_083D1464 -_080BEF68: .4byte gUnknown_083CE048 -_080BEF6C: - ldr r1, _080BEF80 @ =gUnknown_083D1464 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BEF84 @ =gUnknown_083CE048 - ldr r1, [r1, 0x1C] - bl StringCopy - b _080BEF98 - .align 2, 0 -_080BEF80: .4byte gUnknown_083D1464 -_080BEF84: .4byte gUnknown_083CE048 -_080BEF88: - ldr r1, _080BEF9C @ =gUnknown_083D1464 - lsls r0, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BEFA0 @ =gUnknown_083CE048 - ldr r1, [r1, 0x20] - bl StringCopy -_080BEF98: - pop {r0} - bx r0 - .align 2, 0 -_080BEF9C: .4byte gUnknown_083D1464 -_080BEFA0: .4byte gUnknown_083CE048 - thumb_func_end sub_80BEF10 - - thumb_func_start CopyContestCategoryToStringVar -CopyContestCategoryToStringVar: @ 80BEFA4 - push {lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r1, 24 - lsrs r0, r1, 24 - cmp r0, 0x4 - bhi _080BF054 - lsls r0, 2 - ldr r1, _080BEFBC @ =_080BEFC0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080BEFBC: .4byte _080BEFC0 - .align 2, 0 -_080BEFC0: - .4byte _080BEFD4 - .4byte _080BEFF0 - .4byte _080BF00C - .4byte _080BF028 - .4byte _080BF044 -_080BEFD4: - ldr r1, _080BEFE8 @ =gUnknown_083D1464 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BEFEC @ =gUnknown_083CE048 - ldr r1, [r1] - bl StringCopy - b _080BF054 - .align 2, 0 -_080BEFE8: .4byte gUnknown_083D1464 -_080BEFEC: .4byte gUnknown_083CE048 -_080BEFF0: - ldr r1, _080BF004 @ =gUnknown_083D1464 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BF008 @ =gUnknown_083CE048 - ldr r1, [r1, 0x4] - bl StringCopy - b _080BF054 - .align 2, 0 -_080BF004: .4byte gUnknown_083D1464 -_080BF008: .4byte gUnknown_083CE048 -_080BF00C: - ldr r1, _080BF020 @ =gUnknown_083D1464 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BF024 @ =gUnknown_083CE048 - ldr r1, [r1, 0x8] - bl StringCopy - b _080BF054 - .align 2, 0 -_080BF020: .4byte gUnknown_083D1464 -_080BF024: .4byte gUnknown_083CE048 -_080BF028: - ldr r1, _080BF03C @ =gUnknown_083D1464 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BF040 @ =gUnknown_083CE048 - ldr r1, [r1, 0xC] - bl StringCopy - b _080BF054 - .align 2, 0 -_080BF03C: .4byte gUnknown_083D1464 -_080BF040: .4byte gUnknown_083CE048 -_080BF044: - ldr r1, _080BF058 @ =gUnknown_083D1464 - lsls r0, r2, 2 - adds r0, r1 - ldr r0, [r0] - ldr r1, _080BF05C @ =gUnknown_083CE048 - ldr r1, [r1, 0x10] - bl StringCopy -_080BF054: - pop {r0} - bx r0 - .align 2, 0 -_080BF058: .4byte gUnknown_083D1464 -_080BF05C: .4byte gUnknown_083CE048 - thumb_func_end CopyContestCategoryToStringVar - - thumb_func_start SetContestCategoryStringVarForInterview -SetContestCategoryStringVarForInterview: @ 80BF060 - push {lr} - ldr r0, _080BF080 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BF084 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrb r1, [r0, 0x13] - lsls r1, 29 - lsrs r1, 29 - movs r0, 0x1 - bl CopyContestCategoryToStringVar - pop {r0} - bx r0 - .align 2, 0 -_080BF080: .4byte gSpecialVar_0x8004 -_080BF084: .4byte gSaveBlock1 + 0x2738 - thumb_func_end SetContestCategoryStringVarForInterview - - thumb_func_start sub_80BF088 -sub_80BF088: @ 80BF088 - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - bl sub_80BF0B8 - adds r3, r0, 0 - ldr r0, _080BF0B4 @ =gUnknown_083D1464 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - lsls r3, 24 - lsrs r3, 24 - adds r1, r5, 0 - movs r2, 0 - bl ConvertIntToDecimalStringN - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080BF0B4: .4byte gUnknown_083D1464 - thumb_func_end sub_80BF088 - - thumb_func_start sub_80BF0B8 -sub_80BF0B8: @ 80BF0B8 - push {r4,lr} - adds r4, r0, 0 - movs r1, 0xA - bl __divsi3 - cmp r0, 0 - beq _080BF144 - adds r0, r4, 0 - movs r1, 0x64 - bl __divsi3 - cmp r0, 0 - bne _080BF0D6 - movs r0, 0x2 - b _080BF14E -_080BF0D6: - movs r1, 0xFA - lsls r1, 2 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080BF0E8 - movs r0, 0x3 - b _080BF14E -_080BF0E8: - ldr r1, _080BF0F8 @ =0x00002710 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080BF0FC - movs r0, 0x4 - b _080BF14E - .align 2, 0 -_080BF0F8: .4byte 0x00002710 -_080BF0FC: - ldr r1, _080BF10C @ =0x000186a0 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080BF110 - movs r0, 0x5 - b _080BF14E - .align 2, 0 -_080BF10C: .4byte 0x000186a0 -_080BF110: - ldr r1, _080BF120 @ =0x000f4240 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080BF124 - movs r0, 0x6 - b _080BF14E - .align 2, 0 -_080BF120: .4byte 0x000f4240 -_080BF124: - ldr r1, _080BF134 @ =0x00989680 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - bne _080BF138 - movs r0, 0x7 - b _080BF14E - .align 2, 0 -_080BF134: .4byte 0x00989680 -_080BF138: - ldr r1, _080BF148 @ =0x05f5e100 - adds r0, r4, 0 - bl __divsi3 - cmp r0, 0 - beq _080BF14C -_080BF144: - movs r0, 0x1 - b _080BF14E - .align 2, 0 -_080BF148: .4byte 0x05f5e100 -_080BF14C: - movs r0, 0x8 -_080BF14E: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BF0B8 - - thumb_func_start sub_80BF154 -sub_80BF154: @ 80BF154 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r1, 0 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - movs r7, 0 - movs r5, 0 -_080BF166: - lsls r4, r5, 1 - adds r0, r6, 0x6 - adds r1, r0, r4 - ldrh r0, [r1] - cmp r0, 0 - beq _080BF186 - bl ItemId_GetPrice - lsls r0, 16 - lsrs r0, 16 - adds r1, r6, 0 - adds r1, 0xC - adds r1, r4 - ldrh r1, [r1] - muls r0, r1 - adds r7, r0 -_080BF186: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _080BF166 - ldrb r0, [r6, 0x2] - cmp r0, 0x1 - bne _080BF1A0 - asrs r1, r7, 1 - mov r0, r8 - bl sub_80BF088 - b _080BF1A8 -_080BF1A0: - mov r0, r8 - adds r1, r7, 0 - bl sub_80BF088 -_080BF1A8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BF154 - - thumb_func_start sub_80BF1B4 -sub_80BF1B4: @ 80BF1B4 - push {r4-r7,lr} - lsls r0, 24 - lsrs r6, r0, 24 - ldr r7, _080BF1F4 @ =gSaveBlock1 + 0x2738 - bl GetPlayerTrainerId - adds r5, r0, 0 - movs r4, 0x5 -_080BF1C4: - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 2 - adds r1, r0, r7 - ldrb r0, [r1] - cmp r0, r6 - bne _080BF1F8 - movs r3, 0xFF - adds r0, r5, 0 - ands r0, r3 - adds r2, r1, 0 - adds r2, 0x22 - ldrb r2, [r2] - cmp r0, r2 - bne _080BF1F8 - lsrs r0, r5, 8 - ands r0, r3 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080BF1F8 - movs r0, 0x1 - b _080BF204 - .align 2, 0 -_080BF1F4: .4byte gSaveBlock1 + 0x2738 -_080BF1F8: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x17 - bls _080BF1C4 - movs r0, 0 -_080BF204: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_80BF1B4 - - thumb_func_start sub_80BF20C -sub_80BF20C: @ 80BF20C - push {r4-r7,lr} - movs r2, 0 -_080BF210: - adds r1, r2, 0x1 - lsls r0, r1, 24 - lsrs r5, r0, 24 - adds r7, r1, 0 - cmp r5, 0x2 - bhi _080BF248 - ldr r6, _080BF258 @ =gUnknown_02038724 - lsls r0, r2, 2 - adds r4, r0, r6 -_080BF222: - lsls r0, r5, 2 - adds r3, r0, r6 - ldrh r0, [r4, 0x2] - ldrh r1, [r3, 0x2] - cmp r0, r1 - bcs _080BF23E - ldrh r1, [r4] - adds r2, r0, 0 - ldrh r0, [r3] - strh r0, [r4] - ldrh r0, [r3, 0x2] - strh r0, [r4, 0x2] - strh r1, [r3] - strh r2, [r3, 0x2] -_080BF23E: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _080BF222 -_080BF248: - lsls r0, r7, 24 - lsrs r2, r0, 24 - cmp r2, 0x1 - bls _080BF210 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BF258: .4byte gUnknown_02038724 - thumb_func_end sub_80BF20C - - thumb_func_start sub_80BF25C -sub_80BF25C: @ 80BF25C - push {r4-r6,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r1, 0 - ldr r3, _080BF28C @ =gSaveBlock1 - ldr r0, _080BF290 @ =0x00002738 - adds r4, r3, r0 -_080BF26A: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r2, r0, r3 - ldr r6, _080BF290 @ =0x00002738 - adds r0, r2, r6 - ldrb r0, [r0] - cmp r0, r5 - bne _080BF2AE - ldr r3, _080BF294 @ =0x00002739 - adds r0, r2, r3 - ldrb r2, [r0] - cmp r2, 0x1 - bne _080BF29C - ldr r0, _080BF298 @ =gScriptResult - strh r2, [r0] - b _080BF2BC - .align 2, 0 -_080BF28C: .4byte gSaveBlock1 -_080BF290: .4byte 0x00002738 -_080BF294: .4byte 0x00002739 -_080BF298: .4byte gScriptResult -_080BF29C: - adds r0, r4, 0 - bl sub_80BF55C - adds r0, r4, 0 - bl sub_80BF588 - bl sub_80BF6D8 - b _080BF2BC -_080BF2AE: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x4 - bls _080BF26A - bl sub_80BF6D8 -_080BF2BC: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80BF25C - - thumb_func_start sub_80BF2C4 -sub_80BF2C4: @ 80BF2C4 - push {lr} - ldr r1, _080BF2E0 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, _080BF2E4 @ =gSpecialVar_0x8005 - ldrh r0, [r0] - subs r0, 0x1 - cmp r0, 0x6 - bhi _080BF330 - lsls r0, 2 - ldr r1, _080BF2E8 @ =_080BF2EC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080BF2E0: .4byte gScriptResult -_080BF2E4: .4byte gSpecialVar_0x8005 -_080BF2E8: .4byte _080BF2EC - .align 2, 0 -_080BF2EC: - .4byte _080BF308 - .4byte _080BF30E - .4byte _080BF314 - .4byte _080BF31A - .4byte _080BF320 - .4byte _080BF326 - .4byte _080BF32C -_080BF308: - bl sub_80BF334 - b _080BF330 -_080BF30E: - bl sub_80BF3A4 - b _080BF330 -_080BF314: - bl sub_80BF3DC - b _080BF330 -_080BF31A: - bl sub_80BF46C - b _080BF330 -_080BF320: - bl sub_80BF478 - b _080BF330 -_080BF326: - bl sub_80BF484 - b _080BF330 -_080BF32C: - bl sub_80BF4BC -_080BF330: - pop {r0} - bx r0 - thumb_func_end sub_80BF2C4 - - thumb_func_start sub_80BF334 -sub_80BF334: @ 80BF334 - push {r4,lr} - movs r0, 0x1 - bl sub_80BF25C - ldr r0, _080BF38C @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080BF384 - ldr r4, _080BF390 @ =gStringVar1 - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x64 - muls r0, r1 - ldr r1, _080BF394 @ =gPlayerParty - adds r0, r1 - movs r1, 0xB - movs r2, 0 - bl GetMonData - movs r1, 0xB - muls r1, r0 - ldr r0, _080BF398 @ =gSpeciesNames - adds r1, r0 - adds r0, r4, 0 - bl StringCopy - ldr r0, _080BF39C @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BF3A0 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - adds r0, 0x4 - movs r1, 0x6 - bl sub_80EB6FC -_080BF384: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BF38C: .4byte gScriptResult -_080BF390: .4byte gStringVar1 -_080BF394: .4byte gPlayerParty -_080BF398: .4byte gSpeciesNames -_080BF39C: .4byte gUnknown_03005D38 -_080BF3A0: .4byte gSaveBlock1 + 0x2738 - thumb_func_end sub_80BF334 - - thumb_func_start sub_80BF3A4 -sub_80BF3A4: @ 80BF3A4 - push {lr} - movs r0, 0x2 - bl sub_80BF25C - ldr r0, _080BF3D0 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080BF3CC - ldr r0, _080BF3D4 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BF3D8 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - adds r0, 0x4 - movs r1, 0x6 - bl sub_80EB6FC -_080BF3CC: - pop {r0} - bx r0 - .align 2, 0 -_080BF3D0: .4byte gScriptResult -_080BF3D4: .4byte gUnknown_03005D38 -_080BF3D8: .4byte gSaveBlock1 + 0x2738 - thumb_func_end sub_80BF3A4 - - thumb_func_start sub_80BF3DC -sub_80BF3DC: @ 80BF3DC - push {r4-r6,lr} - movs r0, 0x3 - bl sub_80BF25C - ldr r0, _080BF450 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080BF448 - ldr r6, _080BF454 @ =gStringVar1 - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - movs r5, 0x64 - muls r0, r5 - ldr r4, _080BF458 @ =gPlayerParty - adds r0, r4 - movs r1, 0xB - movs r2, 0 - bl GetMonData - movs r1, 0xB - muls r1, r0 - ldr r0, _080BF45C @ =gSpeciesNames - adds r1, r0 - adds r0, r6, 0 - bl StringCopy - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - muls r0, r5 - adds r0, r4 - ldr r4, _080BF460 @ =gStringVar2 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - ldr r0, _080BF464 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BF468 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - adds r0, 0x1C - movs r1, 0x2 - bl sub_80EB6FC -_080BF448: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BF450: .4byte gScriptResult -_080BF454: .4byte gStringVar1 -_080BF458: .4byte gPlayerParty -_080BF45C: .4byte gSpeciesNames -_080BF460: .4byte gStringVar2 -_080BF464: .4byte gUnknown_03005D38 -_080BF468: .4byte gSaveBlock1 + 0x2738 - thumb_func_end sub_80BF3DC - - thumb_func_start sub_80BF46C -sub_80BF46C: @ 80BF46C - ldr r1, _080BF474 @ =gScriptResult - movs r0, 0x1 - strh r0, [r1] - bx lr - .align 2, 0 -_080BF474: .4byte gScriptResult - thumb_func_end sub_80BF46C - - thumb_func_start sub_80BF478 -sub_80BF478: @ 80BF478 - push {lr} - movs r0, 0x5 - bl sub_80BF25C - pop {r0} - bx r0 - thumb_func_end sub_80BF478 - - thumb_func_start sub_80BF484 -sub_80BF484: @ 80BF484 - push {lr} - movs r0, 0x6 - bl sub_80BF25C - ldr r0, _080BF4B0 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080BF4AC - ldr r0, _080BF4B4 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BF4B8 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - adds r0, 0x4 - movs r1, 0x2 - bl sub_80EB6FC -_080BF4AC: - pop {r0} - bx r0 - .align 2, 0 -_080BF4B0: .4byte gScriptResult -_080BF4B4: .4byte gUnknown_03005D38 -_080BF4B8: .4byte gSaveBlock1 + 0x2738 - thumb_func_end sub_80BF484 - - thumb_func_start sub_80BF4BC -sub_80BF4BC: @ 80BF4BC - push {lr} - movs r0, 0x7 - bl sub_80BF25C - ldr r0, _080BF4E8 @ =gScriptResult - ldrh r0, [r0] - cmp r0, 0 - bne _080BF4E4 - ldr r0, _080BF4EC @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080BF4F0 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - adds r0, 0x18 - movs r1, 0x1 - bl sub_80EB6FC -_080BF4E4: - pop {r0} - bx r0 - .align 2, 0 -_080BF4E8: .4byte gScriptResult -_080BF4EC: .4byte gUnknown_03005D38 -_080BF4F0: .4byte gSaveBlock1 + 0x2738 - thumb_func_end sub_80BF4BC - -.section .text_80BF544 - - thumb_func_start sub_80BF544 -sub_80BF544: @ 80BF544 - push {lr} - bl GetLeadMonIndex - lsls r0, 24 - lsrs r0, 24 - bl sub_80BF4F4 - lsls r0, 24 - lsrs r0, 24 - pop {r1} - bx r1 - thumb_func_end sub_80BF544 - - thumb_func_start sub_80BF55C -sub_80BF55C: @ 80BF55C - push {lr} - lsls r1, 24 - lsrs r1, 24 - lsls r2, r1, 3 - adds r2, r1 - lsls r2, 2 - adds r2, r0 - movs r0, 0 - strb r0, [r2] - strb r0, [r2, 0x1] - movs r1, 0 - adds r2, 0x2 - movs r3, 0 -_080BF576: - adds r0, r2, r1 - strb r3, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x21 - bls _080BF576 - pop {r0} - bx r0 - thumb_func_end sub_80BF55C - - thumb_func_start sub_80BF588 -sub_80BF588: @ 80BF588 - push {r4-r7,lr} - adds r4, r0, 0 - movs r5, 0 -_080BF58E: - lsls r0, r5, 3 - adds r0, r5 - lsls r1, r0, 2 - adds r0, r1, r4 - ldrb r0, [r0] - cmp r0, 0 - bne _080BF5D2 - adds r0, r5, 0x1 - b _080BF5CA -_080BF5A0: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r3, r0, r4 - ldrb r0, [r3] - cmp r0, 0 - beq _080BF5C8 - adds r1, r4 - adds r0, r3, 0 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - adds r0, r4, 0 - adds r1, r2, 0 - bl sub_80BF55C - b _080BF5D2 -_080BF5C8: - adds r0, r2, 0x1 -_080BF5CA: - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x4 - bls _080BF5A0 -_080BF5D2: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _080BF58E - movs r5, 0x5 -_080BF5DE: - lsls r0, r5, 3 - adds r0, r5 - lsls r1, r0, 2 - adds r0, r1, r4 - ldrb r0, [r0] - adds r5, 0x1 - cmp r0, 0 - bne _080BF62A - lsls r0, r5, 24 - b _080BF624 -_080BF5F2: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r3, r0, r4 - ldrb r0, [r3] - cmp r0, 0 - beq _080BF620 - adds r1, r4 - adds r0, r3, 0 - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldm r0!, {r3,r6,r7} - stm r1!, {r3,r6,r7} - ldr r0, _080BF61C @ =gSaveBlock1 + 0x2738 - adds r1, r2, 0 - bl sub_80BF55C - b _080BF62A - .align 2, 0 -_080BF61C: .4byte gSaveBlock1 + 0x2738 -_080BF620: - adds r0, r2, 0x1 - lsls r0, 24 -_080BF624: - lsrs r2, r0, 24 - cmp r2, 0x17 - bls _080BF5F2 -_080BF62A: - lsls r0, r5, 24 - lsrs r5, r0, 24 - cmp r5, 0x17 - bls _080BF5DE - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BF588 - - thumb_func_start sub_80BF638 -sub_80BF638: @ 80BF638 - push {r4,r5,lr} - adds r4, r0, 0 - adds r0, r1, 0 - lsls r4, 24 - lsrs r4, 24 - lsls r0, 16 - lsrs r0, 16 - bl sub_80BF674 - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - ldr r0, _080BF66C @ =gUnknown_083D1464 - lsls r4, 2 - adds r4, r0 - ldr r0, [r4] - movs r1, 0xB - muls r1, r5 - ldr r2, _080BF670 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - adds r0, r5, 0 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_080BF66C: .4byte gUnknown_083D1464 -_080BF670: .4byte gSpeciesNames - thumb_func_end sub_80BF638 - - thumb_func_start sub_80BF674 -sub_80BF674: @ 80BF674 - push {r4-r6,lr} - lsls r0, 16 - lsrs r5, r0, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - ldr r1, _080BF694 @ =0x0000019b - bl __umodsi3 - adds r0, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 - adds r6, r4, 0 - b _080BF6B2 - .align 2, 0 -_080BF694: .4byte 0x0000019b -_080BF698: - cmp r4, 0x1 - bne _080BF6A4 - ldr r4, _080BF6A0 @ =0x0000019b - b _080BF6AA - .align 2, 0 -_080BF6A0: .4byte 0x0000019b -_080BF6A4: - subs r0, r4, 0x1 - lsls r0, 16 - lsrs r4, r0, 16 -_080BF6AA: - cmp r4, r6 - bne _080BF6B2 - adds r4, r5, 0 - b _080BF6CE -_080BF6B2: - adds r0, r4, 0 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetNationalPokedexFlag - lsls r0, 24 - asrs r0, 24 - cmp r0, 0x1 - bne _080BF698 - cmp r4, r5 - beq _080BF698 -_080BF6CE: - adds r0, r4, 0 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80BF674 - - thumb_func_start sub_80BF6D8 -sub_80BF6D8: @ 80BF6D8 - push {lr} - ldr r0, _080BF700 @ =gSaveBlock1 + 0x2738 - bl sub_80BF720 - ldr r1, _080BF704 @ =gUnknown_03005D38 - strb r0, [r1] - ldr r2, _080BF708 @ =gSpecialVar_0x8006 - ldrb r1, [r1] - lsls r1, 24 - asrs r1, 24 - strh r1, [r2] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - bne _080BF710 - ldr r1, _080BF70C @ =gScriptResult - movs r0, 0x1 - b _080BF714 - .align 2, 0 -_080BF700: .4byte gSaveBlock1 + 0x2738 -_080BF704: .4byte gUnknown_03005D38 -_080BF708: .4byte gSpecialVar_0x8006 -_080BF70C: .4byte gScriptResult -_080BF710: - ldr r1, _080BF71C @ =gScriptResult - movs r0, 0 -_080BF714: - strh r0, [r1] - pop {r0} - bx r0 - .align 2, 0 -_080BF71C: .4byte gScriptResult - thumb_func_end sub_80BF6D8 - - thumb_func_start sub_80BF720 -sub_80BF720: @ 80BF720 - push {lr} - adds r2, r0, 0 - movs r1, 0 -_080BF726: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080BF73A - lsls r0, r1, 24 - asrs r0, 24 - b _080BF748 -_080BF73A: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x4 - bls _080BF726 - movs r0, 0x1 - negs r0, r0 -_080BF748: - pop {r1} - bx r1 - thumb_func_end sub_80BF720 - - thumb_func_start sub_80BF74C -sub_80BF74C: @ 80BF74C - push {lr} - adds r2, r0, 0 - movs r1, 0x5 -_080BF752: - lsls r0, r1, 24 - asrs r1, r0, 24 - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080BF768 - adds r0, r1, 0 - b _080BF778 -_080BF768: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - asrs r0, 24 - cmp r0, 0x17 - ble _080BF752 - movs r0, 0x1 - negs r0, r0 -_080BF778: - pop {r1} - bx r1 - thumb_func_end sub_80BF74C - - thumb_func_start sub_80BF77C -sub_80BF77C: @ 80BF77C - push {r4,lr} - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - bl Random - lsls r0, 16 - lsrs r0, 16 - cmp r0, r4 - bls _080BF794 - movs r0, 0x1 - b _080BF796 -_080BF794: - movs r0, 0 -_080BF796: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BF77C - - thumb_func_start sub_80BF79C -sub_80BF79C: @ 80BF79C - push {r4-r6,lr} - adds r4, r0, 0 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x6 - bl __umodsi3 - lsls r0, 24 - lsrs r2, r0, 24 - adds r5, r4, 0x4 - ldr r6, _080BF7B8 @ =0x0000ffff - b _080BF7C2 - .align 2, 0 -_080BF7B8: .4byte 0x0000ffff -_080BF7BC: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 -_080BF7C2: - cmp r2, 0x6 - bne _080BF7C8 - movs r2, 0 -_080BF7C8: - lsls r1, r2, 1 - adds r0, r5, r1 - ldrh r0, [r0] - adds r3, r4, 0x4 - cmp r0, r6 - beq _080BF7BC - ldr r0, _080BF7E4 @ =gStringVar3 - adds r1, r3, r1 - ldrh r1, [r1] - bl sub_80EB3FC - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BF7E4: .4byte gStringVar3 - thumb_func_end sub_80BF79C - - thumb_func_start sub_80BF7E8 -sub_80BF7E8: @ 80BF7E8 - push {lr} - adds r2, r0, 0 - movs r3, 0 - movs r1, 0 - ldrb r0, [r2, 0x4] - cmp r0, 0xFF - beq _080BF814 - adds r2, 0x4 -_080BF7F8: - adds r0, r2, r1 - ldrb r0, [r0] - adds r0, r3, r0 - lsls r0, 16 - lsrs r3, r0, 16 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xA - bhi _080BF814 - adds r0, r2, r1 - ldrb r0, [r0] - cmp r0, 0xFF - bne _080BF7F8 -_080BF814: - movs r0, 0x7 - ands r3, r0 - adds r0, r3, 0 - pop {r1} - bx r1 - thumb_func_end sub_80BF7E8 - - thumb_func_start sub_80BF820 -sub_80BF820: @ 80BF820 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x4 - ldr r4, [sp, 0x1C] - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r1, 24 - lsrs r5, r1, 24 - lsls r2, 24 - lsrs r6, r2, 24 - lsls r3, 16 - lsrs r3, 16 - lsls r4, 16 - lsrs r4, 16 - movs r2, 0 - movs r7, 0xFF -_080BF844: - mov r1, sp - adds r0, r1, r2 - ldrb r1, [r0] - orrs r1, r7 - strb r1, [r0] - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x2 - bls _080BF844 - cmp r3, 0 - bne _080BF8A6 - ldr r4, [sp, 0x20] - adds r4, 0xF - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r2, r0, 16 - cmp r6, 0 - bne _080BF874 - mov r0, sp - adds r1, r4, r5 - b _080BF920 -_080BF874: - cmp r6, 0x1 - bne _080BF880 - mov r0, sp - subs r1, r2, r5 - adds r1, r4, r1 - b _080BF920 -_080BF880: - cmp r6, 0x2 - bne _080BF892 - mov r1, sp - adds r0, r4, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r5, 0x1 - adds r0, r4, r0 - b _080BF950 -_080BF892: - mov r1, sp - subs r0, r2, 0x2 - subs r0, r5 - adds r0, r4, r0 - ldrb r0, [r0] - strb r0, [r1] - subs r0, r2, 0x1 - subs r0, r5 - adds r0, r4, r0 - b _080BF950 -_080BF8A6: - cmp r3, 0x1 - bne _080BF8F4 - ldr r4, [sp, 0x20] - adds r4, 0x4 - adds r0, r4, 0 - bl StringLength - lsls r0, 16 - lsrs r2, r0, 16 - cmp r6, 0 - bne _080BF8C2 - mov r0, sp - adds r1, r4, r5 - b _080BF920 -_080BF8C2: - cmp r6, 0x1 - bne _080BF8CE - mov r0, sp - subs r1, r2, r5 - adds r1, r4, r1 - b _080BF920 -_080BF8CE: - cmp r6, 0x2 - bne _080BF8E0 - mov r1, sp - adds r0, r4, r5 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r5, 0x1 - adds r0, r4, r0 - b _080BF950 -_080BF8E0: - mov r1, sp - subs r0, r2, 0x2 - subs r0, r5 - adds r0, r4, r0 - ldrb r0, [r0] - strb r0, [r1] - subs r0, r2, 0x1 - subs r0, r5 - adds r0, r4, r0 - b _080BF950 -_080BF8F4: - movs r0, 0xB - muls r4, r0 - ldr r7, _080BF910 @ =gSpeciesNames - adds r0, r4, r7 - bl StringLength - lsls r0, 16 - lsrs r2, r0, 16 - cmp r6, 0 - bne _080BF914 - mov r0, sp - adds r1, r5, r4 - b _080BF91E - .align 2, 0 -_080BF910: .4byte gSpeciesNames -_080BF914: - cmp r6, 0x1 - bne _080BF926 - mov r0, sp - subs r1, r2, r5 - adds r1, r4 -_080BF91E: - adds r1, r7 -_080BF920: - ldrb r1, [r1] - strb r1, [r0] - b _080BF954 -_080BF926: - cmp r6, 0x2 - bne _080BF93A - mov r1, sp - adds r0, r5, r4 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r1] - adds r0, r4, 0x1 - adds r0, r5, r0 - b _080BF94E -_080BF93A: - mov r1, sp - subs r0, r2, 0x2 - subs r0, r5 - adds r0, r4 - adds r0, r7 - ldrb r0, [r0] - strb r0, [r1] - subs r0, r2, 0x1 - subs r0, r5 - adds r0, r4 -_080BF94E: - adds r0, r7 -_080BF950: - ldrb r0, [r0] - strb r0, [r1, 0x1] -_080BF954: - ldr r0, _080BF970 @ =gUnknown_083D1464 - mov r2, r8 - lsls r1, r2, 2 - adds r1, r0 - ldr r0, [r1] - mov r1, sp - bl StringCopy - add sp, 0x4 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BF970: .4byte gUnknown_083D1464 - thumb_func_end sub_80BF820 - - thumb_func_start sub_80BF974 -sub_80BF974: @ 80BF974 - push {r4,lr} - movs r1, 0 - ldr r4, _080BF994 @ =gSaveBlock1 - ldr r0, _080BF998 @ =gSpecialVar_0x8004 - ldrh r2, [r0] - ldr r3, _080BF99C @ =0x00002738 -_080BF980: - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4 - adds r0, r3 - ldrb r0, [r0] - cmp r0, r2 - bne _080BF9A0 - movs r0, 0x1 - b _080BF9AC - .align 2, 0 -_080BF994: .4byte gSaveBlock1 -_080BF998: .4byte gSpecialVar_0x8004 -_080BF99C: .4byte 0x00002738 -_080BF9A0: - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x4 - bls _080BF980 - movs r0, 0 -_080BF9AC: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BF974 - - thumb_func_start sub_80BF9B4 -sub_80BF9B4: @ 80BF9B4 - push {r4,lr} - ldr r0, _080BF9E0 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BF9E4 @ =gPlayerParty - adds r0, r1 - ldr r4, _080BF9E8 @ =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - ldr r0, _080BF9EC @ =gStringVar3 - adds r1, r4, 0 - bl StringCompareWithoutExtCtrlCodes - cmp r0, 0 - beq _080BF9F0 - bl sub_80BE478 - movs r0, 0x1 - b _080BF9F2 - .align 2, 0 -_080BF9E0: .4byte gSpecialVar_0x8004 -_080BF9E4: .4byte gPlayerParty -_080BF9E8: .4byte gStringVar1 -_080BF9EC: .4byte gStringVar3 -_080BF9F0: - movs r0, 0 -_080BF9F2: - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_80BF9B4 - - thumb_func_start sub_80BF9F8 -sub_80BF9F8: @ 80BF9F8 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - ldr r0, _080BFAA0 @ =gSpecialVar_0x8004 - mov r9, r0 - ldrh r0, [r0] - movs r1, 0x64 - mov r8, r1 - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - ldr r6, _080BFAA4 @ =gPlayerParty - adds r0, r6 - ldr r2, _080BFAA8 @ =gStringVar3 - movs r1, 0x2 - bl GetMonData - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - ldr r1, _080BFAAC @ =gStringVar2 - mov r10, r1 - movs r1, 0x2 - mov r2, r10 - bl GetMonData - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0xB - movs r2, 0 - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - bl GetMonGender - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r1, r9 - ldrh r0, [r1] - mov r1, r8 - muls r1, r0 - adds r0, r1, 0 - adds r0, r6 - movs r1, 0 - movs r2, 0 - bl GetMonData - str r0, [sp] - ldr r0, _080BFAB0 @ =c2_080CC144 - str r0, [sp, 0x4] - movs r0, 0x3 - mov r1, r10 - adds r2, r5, 0 - adds r3, r4, 0 - bl DoNamingScreen - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080BFAA0: .4byte gSpecialVar_0x8004 -_080BFAA4: .4byte gPlayerParty -_080BFAA8: .4byte gStringVar3 -_080BFAAC: .4byte gStringVar2 -_080BFAB0: .4byte c2_080CC144 - thumb_func_end sub_80BF9F8 - - thumb_func_start c2_080CC144 -c2_080CC144: @ 80BFAB4 - push {lr} - ldr r0, _080BFAD4 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BFAD8 @ =gPlayerParty - adds r0, r1 - ldr r2, _080BFADC @ =gStringVar2 - movs r1, 0x2 - bl SetMonData - bl c2_exit_to_overworld_1_continue_scripts_restart_music - pop {r0} - bx r0 - .align 2, 0 -_080BFAD4: .4byte gSpecialVar_0x8004 -_080BFAD8: .4byte gPlayerParty -_080BFADC: .4byte gStringVar2 - thumb_func_end c2_080CC144 - - thumb_func_start sub_80BFAE0 -sub_80BFAE0: @ 80BFAE0 - push {r4,lr} - ldr r0, _080BFB04 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BFB08 @ =gPlayerParty - adds r0, r1 - ldr r4, _080BFB0C @ =gStringVar1 - movs r1, 0x2 - adds r2, r4, 0 - bl GetMonData - adds r0, r4, 0 - bl StringGetEnd10 - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BFB04: .4byte gSpecialVar_0x8004 -_080BFB08: .4byte gPlayerParty -_080BFB0C: .4byte gStringVar1 - thumb_func_end sub_80BFAE0 - - thumb_func_start sub_80BFB10 -sub_80BFB10: @ 80BFB10 - push {r4,lr} - bl GetPlayerTrainerId - adds r4, r0, 0 - ldr r0, _080BFB38 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080BFB3C @ =gPlayerParty - adds r0, r1 - movs r1, 0x1 - movs r2, 0 - bl GetMonData - cmp r4, r0 - bne _080BFB44 - ldr r1, _080BFB40 @ =gScriptResult - movs r0, 0 - b _080BFB48 - .align 2, 0 -_080BFB38: .4byte gSpecialVar_0x8004 -_080BFB3C: .4byte gPlayerParty -_080BFB40: .4byte gScriptResult -_080BFB44: - ldr r1, _080BFB50 @ =gScriptResult - movs r0, 0x1 -_080BFB48: - strh r0, [r1] - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BFB50: .4byte gScriptResult - thumb_func_end sub_80BFB10 - - thumb_func_start sub_80BFB54 -sub_80BFB54: @ 80BFB54 - push {lr} - lsls r0, 24 - lsrs r1, r0, 24 - adds r2, r1, 0 - cmp r1, 0 - beq _080BFB8A - subs r0, r1, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080BFB6E - movs r0, 0x2 - b _080BFB90 -_080BFB6E: - adds r0, r1, 0 - subs r0, 0x15 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080BFB7E - movs r0, 0x3 - b _080BFB90 -_080BFB7E: - adds r0, r2, 0 - subs r0, 0x29 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bls _080BFB8E -_080BFB8A: - movs r0, 0 - b _080BFB90 -_080BFB8E: - movs r0, 0x4 -_080BFB90: - pop {r1} - bx r1 - thumb_func_end sub_80BFB54 - - thumb_func_start GetPlayerTrainerId -GetPlayerTrainerId: @ 80BFB94 - ldr r2, _080BFBAC @ =gSaveBlock2 - ldrb r0, [r2, 0xD] - lsls r0, 24 - ldrb r1, [r2, 0xC] - lsls r1, 16 - orrs r0, r1 - ldrb r1, [r2, 0xB] - lsls r1, 8 - orrs r0, r1 - ldrb r1, [r2, 0xA] - orrs r0, r1 - bx lr - .align 2, 0 -_080BFBAC: .4byte gSaveBlock2 - thumb_func_end GetPlayerTrainerId - - thumb_func_start CheckForBigMovieOrEmergencyNewsOnTV -CheckForBigMovieOrEmergencyNewsOnTV: @ 80BFBB0 - push {lr} - ldr r1, _080BFBD0 @ =gSaveBlock1 - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x1 - bne _080BFBCC - ldr r0, _080BFBD4 @ =gSaveBlock2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _080BFBD8 - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0 - beq _080BFBE0 -_080BFBCC: - movs r0, 0 - b _080BFC0A - .align 2, 0 -_080BFBD0: .4byte gSaveBlock1 -_080BFBD4: .4byte gSaveBlock2 -_080BFBD8: - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0x2 - bne _080BFBCC -_080BFBE0: - ldr r0, _080BFC04 @ =0x0000085d - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BFBFE - movs r0, 0x83 - lsls r0, 4 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BFC08 -_080BFBFE: - movs r0, 0x1 - b _080BFC0A - .align 2, 0 -_080BFC04: .4byte 0x0000085d -_080BFC08: - movs r0, 0x2 -_080BFC0A: - pop {r1} - bx r1 - thumb_func_end CheckForBigMovieOrEmergencyNewsOnTV - - thumb_func_start GetMomOrDadStringForTVMessage -GetMomOrDadStringForTVMessage: @ 80BFC10 - push {r4,lr} - ldr r1, _080BFC40 @ =gSaveBlock1 - movs r0, 0x4 - ldrsb r0, [r1, r0] - cmp r0, 0x1 - bne _080BFC6C - ldr r0, _080BFC44 @ =gSaveBlock2 - ldrb r0, [r0, 0x8] - cmp r0, 0 - bne _080BFC54 - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0 - bne _080BFC6C - ldr r0, _080BFC48 @ =gStringVar1 - ldr r1, _080BFC4C @ =gOtherText_Mom - bl StringCopy - ldr r0, _080BFC50 @ =0x00004003 - movs r1, 0x1 - bl VarSet - b _080BFC6C - .align 2, 0 -_080BFC40: .4byte gSaveBlock1 -_080BFC44: .4byte gSaveBlock2 -_080BFC48: .4byte gStringVar1 -_080BFC4C: .4byte gOtherText_Mom -_080BFC50: .4byte 0x00004003 -_080BFC54: - movs r0, 0x5 - ldrsb r0, [r1, r0] - cmp r0, 0x2 - bne _080BFC6C - ldr r0, _080BFCB4 @ =gStringVar1 - ldr r1, _080BFCB8 @ =gOtherText_Mom - bl StringCopy - ldr r0, _080BFCBC @ =0x00004003 - movs r1, 0x1 - bl VarSet -_080BFC6C: - ldr r4, _080BFCBC @ =0x00004003 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x1 - beq _080BFCAA - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - beq _080BFCC0 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - cmp r0, 0x2 - bls _080BFCD4 - adds r0, r4, 0 - bl VarGet - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080BFCC0 -_080BFCAA: - ldr r0, _080BFCB4 @ =gStringVar1 - ldr r1, _080BFCB8 @ =gOtherText_Mom - bl StringCopy - b _080BFD10 - .align 2, 0 -_080BFCB4: .4byte gStringVar1 -_080BFCB8: .4byte gOtherText_Mom -_080BFCBC: .4byte 0x00004003 -_080BFCC0: - ldr r0, _080BFCCC @ =gStringVar1 - ldr r1, _080BFCD0 @ =gOtherText_Dad - bl StringCopy - b _080BFD10 - .align 2, 0 -_080BFCCC: .4byte gStringVar1 -_080BFCD0: .4byte gOtherText_Dad -_080BFCD4: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080BFD00 - ldr r0, _080BFCF8 @ =gStringVar1 - ldr r1, _080BFCFC @ =gOtherText_Mom - bl StringCopy - adds r0, r4, 0 - movs r1, 0x1 - bl VarSet - b _080BFD10 - .align 2, 0 -_080BFCF8: .4byte gStringVar1 -_080BFCFC: .4byte gOtherText_Mom -_080BFD00: - ldr r0, _080BFD18 @ =gStringVar1 - ldr r1, _080BFD1C @ =gOtherText_Dad - bl StringCopy - adds r0, r4, 0 - movs r1, 0x2 - bl VarSet -_080BFD10: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080BFD18: .4byte gStringVar1 -_080BFD1C: .4byte gOtherText_Dad - thumb_func_end GetMomOrDadStringForTVMessage - - thumb_func_start sub_80BFD20 -sub_80BFD20: @ 80BFD20 - push {lr} - ldr r0, _080BFD3C @ =0x000040bc - movs r1, 0 - bl VarSet - ldr r0, _080BFD40 @ =gSaveBlock1 - ldrb r1, [r0, 0x5] - ldrb r2, [r0, 0x4] - movs r0, 0x5 - bl RemoveFieldObjectByLocalIdAndMap - pop {r0} - bx r0 - .align 2, 0 -_080BFD3C: .4byte 0x000040bc -_080BFD40: .4byte gSaveBlock1 - thumb_func_end sub_80BFD20 - - thumb_func_start sub_80BFD44 -sub_80BFD44: @ 80BFD44 - push {r4-r7,lr} - mov r7, r8 - push {r7} - mov r8, r0 - adds r7, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - movs r4, 0 -_080BFD54: - lsls r0, r4, 3 - subs r0, r4 - lsls r0, 5 - adds r0, r4 - lsls r0, 2 - ldr r5, _080BFD8C @ =0x02007000 - adds r0, r5 - adds r1, r4, 0 - muls r1, r7 - add r1, r8 - movs r2, 0xE1 - lsls r2, 2 - bl memcpy - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x3 - bls _080BFD54 - adds r4, r5, 0 - cmp r6, 0x1 - beq _080BFDBC - cmp r6, 0x1 - bgt _080BFD90 - cmp r6, 0 - beq _080BFD9A - b _080BFDFC - .align 2, 0 -_080BFD8C: .4byte 0x02007000 -_080BFD90: - cmp r6, 0x2 - beq _080BFDCC - cmp r6, 0x3 - beq _080BFDE8 - b _080BFDFC -_080BFD9A: - ldr r0, _080BFDB4 @ =gSaveBlock1 + 0x2738 - movs r2, 0xE1 - lsls r2, 2 - adds r1, r4, r2 - movs r3, 0xE1 - lsls r3, 3 - adds r2, r4, r3 - ldr r5, _080BFDB8 @ =0x00000a8c - adds r3, r4, r5 - bl sub_80BFE24 - b _080BFDFC - .align 2, 0 -_080BFDB4: .4byte gSaveBlock1 + 0x2738 -_080BFDB8: .4byte 0x00000a8c -_080BFDBC: - ldr r1, _080BFDC8 @ =gSaveBlock1 + 0x2738 - movs r0, 0xE1 - lsls r0, 3 - adds r2, r4, r0 - b _080BFDD4 - .align 2, 0 -_080BFDC8: .4byte gSaveBlock1 + 0x2738 -_080BFDCC: - movs r0, 0xE1 - lsls r0, 2 - adds r1, r4, r0 - ldr r2, _080BFDE0 @ =gSaveBlock1 + 0x2738 -_080BFDD4: - ldr r5, _080BFDE4 @ =0x00000a8c - adds r3, r4, r5 - adds r0, r4, 0 - bl sub_80BFE24 - b _080BFDFC - .align 2, 0 -_080BFDE0: .4byte gSaveBlock1 + 0x2738 -_080BFDE4: .4byte 0x00000a8c -_080BFDE8: - movs r0, 0xE1 - lsls r0, 2 - adds r1, r5, r0 - movs r3, 0xE1 - lsls r3, 3 - adds r2, r5, r3 - ldr r3, _080BFE20 @ =gSaveBlock1 + 0x2738 - adds r0, r5, 0 - bl sub_80BFE24 -_080BFDFC: - ldr r4, _080BFE20 @ =gSaveBlock1 + 0x2738 - adds r0, r4, 0 - bl sub_80BF588 - bl sub_80C04A0 - adds r0, r4, 0 - bl sub_80BF588 - bl sub_80C01D4 - bl sub_80C0408 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080BFE20: .4byte gSaveBlock1 + 0x2738 - thumb_func_end sub_80BFD44 - - thumb_func_start sub_80BFE24 -sub_80BFE24: @ 80BFE24 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - str r0, [sp, 0x10] - str r1, [sp, 0x14] - str r2, [sp, 0x18] - str r3, [sp, 0x1C] - add r0, sp, 0x10 - str r0, [sp] - add r0, sp, 0x14 - str r0, [sp, 0x4] - add r0, sp, 0x18 - str r0, [sp, 0x8] - add r0, sp, 0x1C - str r0, [sp, 0xC] - bl GetLinkPlayerCount - ldr r1, _080BFEA0 @ =gUnknown_03000720 - strb r0, [r1] -_080BFE50: - movs r6, 0 - ldr r0, _080BFEA0 @ =gUnknown_03000720 - ldrb r1, [r0] - cmp r6, r1 - bcs _080BFE50 - mov r10, r0 -_080BFE5C: - cmp r6, 0 - bne _080BFE64 - ldr r2, _080BFEA4 @ =gUnknown_020387E4 - strb r6, [r2] -_080BFE64: - lsls r4, r6, 2 - mov r3, sp - adds r0, r3, r4 - ldr r0, [r0] - ldr r0, [r0] - bl sub_80C019C - ldr r1, _080BFEA8 @ =gUnknown_03000722 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - adds r7, r4, 0 - cmp r0, r1 - bne _080BFEAC - ldr r1, _080BFEA4 @ =gUnknown_020387E4 - ldrb r0, [r1] - adds r0, 0x1 - strb r0, [r1] - lsls r0, 24 - lsrs r0, 24 - mov r2, r10 - ldrb r2, [r2] - cmp r0, r2 - beq _080BFF58 - adds r6, 0x1 - mov r9, r6 - b _080BFF3C - .align 2, 0 -_080BFEA0: .4byte gUnknown_03000720 -_080BFEA4: .4byte gUnknown_020387E4 -_080BFEA8: .4byte gUnknown_03000722 -_080BFEAC: - movs r5, 0 - mov r3, r10 - ldrb r0, [r3] - subs r0, 0x1 - adds r2, r6, 0x1 - mov r9, r2 - cmp r5, r0 - bge _080BFF22 - ldr r3, _080BFF4C @ =gUnknown_03000720 - mov r8, r3 -_080BFEC0: - adds r0, r6, r5 - adds r4, r0, 0x1 - mov r0, r8 - ldrb r1, [r0] - adds r0, r4, 0 - bl __modsi3 - lsls r0, 2 - add r0, sp - ldr r0, [r0] - ldr r0, [r0] - bl sub_80BF74C - ldr r1, _080BFF50 @ =gUnknown_03005D38 - strb r0, [r1] - lsls r0, 24 - asrs r0, 24 - movs r1, 0x1 - negs r1, r1 - cmp r0, r1 - beq _080BFF12 - mov r2, r8 - ldrb r1, [r2] - adds r0, r4, 0 - bl __modsi3 - adds r2, r0, 0 - lsls r0, r2, 2 - add r0, sp - ldr r0, [r0] - mov r3, sp - adds r1, r3, r7 - ldr r1, [r1] - lsls r2, 24 - lsrs r2, 24 - bl sub_80BFF68 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080BFF22 -_080BFF12: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - mov r1, r8 - ldrb r0, [r1] - subs r0, 0x1 - cmp r5, r0 - blt _080BFEC0 -_080BFF22: - mov r2, r10 - ldrb r0, [r2] - subs r0, 0x1 - cmp r5, r0 - bne _080BFF3C - mov r3, sp - adds r0, r3, r7 - ldr r0, [r0] - ldr r0, [r0] - ldr r1, _080BFF54 @ =gUnknown_03000722 - ldrb r1, [r1] - bl sub_80BF55C -_080BFF3C: - mov r1, r9 - lsls r0, r1, 24 - lsrs r6, r0, 24 - mov r2, r10 - ldrb r2, [r2] - cmp r6, r2 - bcc _080BFE5C - b _080BFE50 - .align 2, 0 -_080BFF4C: .4byte gUnknown_03000720 -_080BFF50: .4byte gUnknown_03005D38 -_080BFF54: .4byte gUnknown_03000722 -_080BFF58: - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_80BFE24 - - thumb_func_start sub_80BFF68 -sub_80BFF68: @ 80BFF68 - push {r4-r7,lr} - sub sp, 0x4 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r4, [r0] - ldr r6, [r1] - movs r5, 0 - ldr r2, _080BFFA4 @ =gUnknown_03000722 - movs r1, 0 - ldrsb r1, [r2, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - ldrb r0, [r0] - str r2, [sp] - bl sub_80BFB54 - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - ldr r2, [sp] - cmp r0, 0x3 - beq _080BFFD8 - cmp r0, 0x3 - bgt _080BFFA8 - cmp r0, 0x2 - beq _080BFFAE - b _080C0026 - .align 2, 0 -_080BFFA4: .4byte gUnknown_03000722 -_080BFFA8: - cmp r1, 0x4 - beq _080C0000 - b _080C0026 -_080BFFAE: - ldr r0, _080BFFD4 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r6, r1 - adds r2, r7, 0 - bl sub_80C004C - b _080C0022 - .align 2, 0 -_080BFFD4: .4byte gUnknown_03005D38 -_080BFFD8: - ldr r0, _080BFFFC @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r6, r1 - adds r2, r7, 0 - bl sub_80C00B4 - b _080C0022 - .align 2, 0 -_080BFFFC: .4byte gUnknown_03005D38 -_080C0000: - ldr r0, _080C0030 @ =gUnknown_03005D38 - movs r1, 0 - ldrsb r1, [r0, r1] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r0, r4, r0 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r1, r2, 3 - adds r1, r2 - lsls r1, 2 - adds r1, r6, r1 - adds r2, r7, 0 - bl sub_80C0134 -_080C0022: - lsls r0, 24 - lsrs r5, r0, 24 -_080C0026: - cmp r5, 0x1 - beq _080C0034 - movs r0, 0 - b _080C0040 - .align 2, 0 -_080C0030: .4byte gUnknown_03005D38 -_080C0034: - ldr r0, _080C0048 @ =gUnknown_03000722 - ldrb r1, [r0] - adds r0, r6, 0 - bl sub_80BF55C - movs r0, 0x1 -_080C0040: - add sp, 0x4 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080C0048: .4byte gUnknown_03000722 - thumb_func_end sub_80BFF68 - - thumb_func_start sub_80C004C -sub_80C004C: @ 80C004C - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r0, r2, 24 - lsrs r0, 24 - bl GetLinkPlayerTrainerId - adds r5, r0, 0 - movs r2, 0xFF - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x22 - ldrb r1, [r1] - cmp r0, r1 - bne _080C007C - lsrs r0, r5, 8 - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080C007C - movs r0, 0 - b _080C00AC -_080C007C: - adds r1, r4, 0 - adds r1, 0x20 - ldrb r0, [r1] - adds r2, r4, 0 - adds r2, 0x22 - strb r0, [r2] - adds r3, r4, 0 - adds r3, 0x21 - ldrb r0, [r3] - adds r2, 0x1 - strb r0, [r2] - strb r5, [r1] - lsrs r0, r5, 8 - strb r0, [r3] - adds r1, r6, 0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6, 0x1] -_080C00AC: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80C004C - - thumb_func_start sub_80C00B4 -sub_80C00B4: @ 80C00B4 - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r0, r2, 24 - lsrs r0, 24 - bl GetLinkPlayerTrainerId - adds r2, r0, 0 - movs r3, 0xFF - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x20 - ldrb r1, [r1] - cmp r0, r1 - bne _080C00E0 - lsrs r0, r2, 8 - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x21 - ldrb r1, [r1] - cmp r0, r1 - beq _080C0100 -_080C00E0: - movs r3, 0xFF - adds r0, r2, 0 - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x22 - lsrs r5, r2, 8 - ldrb r1, [r1] - cmp r0, r1 - bne _080C0104 - adds r0, r5, 0 - ands r0, r3 - adds r1, r4, 0 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080C0104 -_080C0100: - movs r0, 0 - b _080C012C -_080C0104: - ldrb r1, [r4, 0x1E] - adds r0, r4, 0 - adds r0, 0x20 - strb r1, [r0] - ldrb r0, [r4, 0x1F] - adds r1, r4, 0 - adds r1, 0x21 - strb r0, [r1] - strb r2, [r4, 0x1E] - strb r5, [r4, 0x1F] - adds r1, r6, 0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6, 0x1] -_080C012C: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80C00B4 - - thumb_func_start sub_80C0134 -sub_80C0134: @ 80C0134 - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - lsls r0, r2, 24 - lsrs r0, 24 - bl GetLinkPlayerTrainerId - adds r5, r0, 0 - movs r2, 0xFF - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x22 - ldrb r1, [r1] - cmp r0, r1 - bne _080C0164 - lsrs r0, r5, 8 - ands r0, r2 - adds r1, r4, 0 - adds r1, 0x23 - ldrb r1, [r1] - cmp r0, r1 - bne _080C0164 - movs r0, 0 - b _080C0196 -_080C0164: - adds r1, r4, 0 - adds r1, 0x20 - ldrb r0, [r1] - adds r2, r4, 0 - adds r2, 0x22 - strb r0, [r2] - adds r3, r4, 0 - adds r3, 0x21 - ldrb r0, [r3] - adds r2, 0x1 - strb r0, [r2] - strb r5, [r1] - lsrs r0, r5, 8 - strb r0, [r3] - adds r1, r6, 0 - adds r0, r4, 0 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - movs r0, 0x1 - strb r0, [r6, 0x1] - strh r0, [r6, 0x16] -_080C0196: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80C0134 - - thumb_func_start sub_80C019C -sub_80C019C: @ 80C019C - push {lr} - adds r3, r0, 0 - movs r2, 0 -_080C01A2: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r3 - ldrb r0, [r1, 0x1] - cmp r0, 0 - bne _080C01C2 - ldrb r0, [r1] - subs r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3B - bhi _080C01C2 - lsls r0, r2, 24 - asrs r0, 24 - b _080C01D0 -_080C01C2: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x17 - bls _080C01A2 - movs r0, 0x1 - negs r0, r0 -_080C01D0: - pop {r1} - bx r1 - thumb_func_end sub_80C019C - - thumb_func_start sub_80C01D4 -sub_80C01D4: @ 80C01D4 - push {r4-r6,lr} - movs r6, 0 -_080C01D8: - ldr r0, _080C01F8 @ =gSaveBlock1 - lsls r2, r6, 3 - adds r1, r2, r6 - lsls r1, 2 - adds r1, r0 - ldr r0, _080C01FC @ =0x00002738 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0x29 - bls _080C01EE - b _080C038C -_080C01EE: - lsls r0, 2 - ldr r1, _080C0200 @ =_080C0204 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C01F8: .4byte gSaveBlock1 -_080C01FC: .4byte 0x00002738 -_080C0200: .4byte _080C0204 - .align 2, 0 -_080C0204: - .4byte _080C0394 - .4byte _080C02AC - .4byte _080C0394 - .4byte _080C02BC - .4byte _080C02CC - .4byte _080C02DC - .4byte _080C02F8 - .4byte _080C0308 - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C0324 - .4byte _080C0394 - .4byte _080C0334 - .4byte _080C0350 - .4byte _080C0368 - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C038C - .4byte _080C0394 -_080C02AC: - adds r0, r2, r6 - lsls r0, 2 - ldr r1, _080C02B8 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrh r0, [r0, 0x2] - b _080C035A - .align 2, 0 -_080C02B8: .4byte gSaveBlock1 + 0x2738 -_080C02BC: - adds r0, r2, r6 - lsls r0, 2 - ldr r1, _080C02C8 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrh r0, [r0, 0x2] - b _080C035A - .align 2, 0 -_080C02C8: .4byte gSaveBlock1 + 0x2738 -_080C02CC: - adds r0, r2, r6 - lsls r0, 2 - ldr r1, _080C02D8 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrh r0, [r0, 0x6] - b _080C035A - .align 2, 0 -_080C02D8: .4byte gSaveBlock1 + 0x2738 -_080C02DC: - adds r4, r2, r6 - lsls r4, 2 - ldr r0, _080C02F4 @ =gSaveBlock1 + 0x2738 - adds r4, r0 - ldrh r0, [r4, 0x2] - lsls r5, r6, 24 - lsrs r5, 24 - adds r1, r5, 0 - bl sub_80C03C8 - ldrh r0, [r4, 0x1C] - b _080C037E - .align 2, 0 -_080C02F4: .4byte gSaveBlock1 + 0x2738 -_080C02F8: - adds r0, r2, r6 - lsls r0, 2 - ldr r1, _080C0304 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrh r0, [r0, 0x2] - b _080C035A - .align 2, 0 -_080C0304: .4byte gSaveBlock1 + 0x2738 -_080C0308: - adds r4, r2, r6 - lsls r4, 2 - ldr r0, _080C0320 @ =gSaveBlock1 + 0x2738 - adds r4, r0 - ldrh r0, [r4, 0xA] - lsls r5, r6, 24 - lsrs r5, 24 - adds r1, r5, 0 - bl sub_80C03C8 - ldrh r0, [r4, 0x14] - b _080C037E - .align 2, 0 -_080C0320: .4byte gSaveBlock1 + 0x2738 -_080C0324: - adds r0, r2, r6 - lsls r0, 2 - ldr r1, _080C0330 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrh r0, [r0, 0x10] - b _080C035A - .align 2, 0 -_080C0330: .4byte gSaveBlock1 + 0x2738 -_080C0334: - adds r4, r2, r6 - lsls r4, 2 - ldr r0, _080C034C @ =gSaveBlock1 + 0x2738 - adds r4, r0 - ldrh r0, [r4, 0xC] - lsls r5, r6, 24 - lsrs r5, 24 - adds r1, r5, 0 - bl sub_80C03C8 - ldrh r0, [r4, 0xE] - b _080C037E - .align 2, 0 -_080C034C: .4byte gSaveBlock1 + 0x2738 -_080C0350: - adds r0, r2, r6 - lsls r0, 2 - ldr r1, _080C0364 @ =gSaveBlock1 + 0x2738 - adds r0, r1 - ldrh r0, [r0, 0x4] -_080C035A: - lsls r1, r6, 24 - lsrs r1, 24 - bl sub_80C03C8 - b _080C0394 - .align 2, 0 -_080C0364: .4byte gSaveBlock1 + 0x2738 -_080C0368: - adds r4, r2, r6 - lsls r4, 2 - ldr r0, _080C0388 @ =gSaveBlock1 + 0x2738 - adds r4, r0 - ldrh r0, [r4, 0x8] - lsls r5, r6, 24 - lsrs r5, 24 - adds r1, r5, 0 - bl sub_80C03C8 - ldrh r0, [r4, 0x4] -_080C037E: - adds r1, r5, 0 - bl sub_80C03C8 - b _080C0394 - .align 2, 0 -_080C0388: .4byte gSaveBlock1 + 0x2738 -_080C038C: - lsls r0, r6, 24 - lsrs r0, 24 - bl sub_80C03A8 -_080C0394: - adds r0, r6, 0x1 - lsls r0, 16 - lsrs r6, r0, 16 - cmp r6, 0x17 - bhi _080C03A0 - b _080C01D8 -_080C03A0: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80C01D4 - - thumb_func_start sub_80C03A8 -sub_80C03A8: @ 80C03A8 - lsls r0, 24 - lsrs r0, 24 - ldr r2, _080C03C0 @ =gSaveBlock1 - lsls r1, r0, 3 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldr r0, _080C03C4 @ =0x00002739 - adds r1, r0 - movs r0, 0 - strb r0, [r1] - bx lr - .align 2, 0 -_080C03C0: .4byte gSaveBlock1 -_080C03C4: .4byte 0x00002739 - thumb_func_end sub_80C03A8 - - thumb_func_start sub_80C03C8 -sub_80C03C8: @ 80C03C8 - push {r4,lr} - lsls r0, 16 - lsrs r0, 16 - lsls r1, 24 - lsrs r4, r1, 24 - bl SpeciesToNationalPokedexNum - lsls r0, 16 - lsrs r0, 16 - movs r1, 0 - bl GetNationalPokedexFlag - lsls r0, 24 - asrs r2, r0, 24 - cmp r2, 0 - bne _080C03F8 - ldr r1, _080C0400 @ =gSaveBlock1 - lsls r0, r4, 3 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - ldr r1, _080C0404 @ =0x00002739 - adds r0, r1 - strb r2, [r0] -_080C03F8: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C0400: .4byte gSaveBlock1 -_080C0404: .4byte 0x00002739 - thumb_func_end sub_80C03C8 - - thumb_func_start sub_80C0408 -sub_80C0408: @ 80C0408 - push {r4-r6,lr} - ldr r0, _080C044C @ =0x00000804 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080C0444 - movs r2, 0 - ldr r6, _080C0450 @ =gSaveBlock1 - ldr r4, _080C0454 @ =0x00002739 - movs r3, 0 - ldr r5, _080C0458 @ =0x00002738 -_080C0422: - lsls r0, r2, 3 - adds r0, r2 - lsls r0, 2 - adds r1, r0, r6 - adds r0, r1, r5 - ldrb r0, [r0] - cmp r0, 0x7 - beq _080C0436 - cmp r0, 0x29 - bne _080C043A -_080C0436: - adds r0, r1, r4 - strb r3, [r0] -_080C043A: - adds r0, r2, 0x1 - lsls r0, 16 - lsrs r2, r0, 16 - cmp r2, 0x17 - bls _080C0422 -_080C0444: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080C044C: .4byte 0x00000804 -_080C0450: .4byte gSaveBlock1 -_080C0454: .4byte 0x00002739 -_080C0458: .4byte 0x00002738 - thumb_func_end sub_80C0408 - - thumb_func_start sub_80C045C -sub_80C045C: @ 80C045C - push {r4-r6,lr} - movs r5, 0 - ldr r6, _080C0494 @ =gSaveBlock1 -_080C0462: - lsls r0, r5, 3 - adds r0, r5 - lsls r0, 2 - adds r4, r0, r6 - ldr r1, _080C0498 @ =0x00002738 - adds r0, r4, r1 - ldrb r0, [r0] - bl sub_80BFB54 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x2 - bne _080C0484 - ldr r0, _080C049C @ =0x00002739 - adds r1, r4, r0 - movs r0, 0 - strb r0, [r1] -_080C0484: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x4 - bls _080C0462 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080C0494: .4byte gSaveBlock1 -_080C0498: .4byte 0x00002738 -_080C049C: .4byte 0x00002739 - thumb_func_end sub_80C045C - thumb_func_start sub_80C04A0 sub_80C04A0: @ 80C04A0 push {r4,r5,lr} @@ -5561,295 +1015,7 @@ _080C06B4: .4byte gUnknown_03000721 _080C06B8: .4byte gUnknown_03005D38 thumb_func_end sub_80C05C4 - thumb_func_start sub_80C06BC -sub_80C06BC: @ 80C06BC - push {lr} - ldr r0, [r0] - ldr r1, [r1] - ldr r2, _080C06E0 @ =gUnknown_03000722 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - lsls r2, 2 - adds r1, r2 - ldr r2, _080C06E4 @ =gUnknown_03005D38 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - bl sub_80C06E8 - pop {r0} - bx r0 - .align 2, 0 -_080C06E0: .4byte gUnknown_03000722 -_080C06E4: .4byte gUnknown_03005D38 - thumb_func_end sub_80C06BC - - thumb_func_start sub_80C06E8 -sub_80C06E8: @ 80C06E8 - push {r4-r6,lr} - adds r4, r0, 0 - adds r5, r1, 0 - lsls r2, 24 - lsrs r6, r2, 24 - ldrb r3, [r5] - adds r0, r3, 0 - cmp r0, 0 - bne _080C06FE -_080C06FA: - movs r0, 0 - b _080C072A -_080C06FE: - movs r1, 0 - adds r2, r3, 0 - adds r3, r0, 0 -_080C0704: - lsls r0, r1, 2 - adds r0, r4 - ldrb r0, [r0] - cmp r0, r3 - beq _080C06FA - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _080C0704 - lsls r0, r6, 24 - asrs r0, 22 - adds r0, r4 - strb r2, [r0] - movs r1, 0x1 - strb r1, [r0, 0x1] - ldrh r1, [r5, 0x2] - strh r1, [r0, 0x2] - movs r0, 0x1 -_080C072A: - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_80C06E8 - - thumb_func_start sub_80C0730 -sub_80C0730: @ 80C0730 - push {lr} - lsls r1, 24 - lsrs r2, r1, 24 - lsls r1, r2, 2 - adds r1, r0 - ldrb r0, [r1] - cmp r0, 0 - beq _080C0746 - lsls r0, r2, 24 - asrs r0, 24 - b _080C074A -_080C0746: - movs r0, 0x1 - negs r0, r0 -_080C074A: - pop {r1} - bx r1 - thumb_func_end sub_80C0730 - - thumb_func_start sub_80C0750 -sub_80C0750: @ 80C0750 - push {r4,r5,lr} - movs r4, 0 - ldr r5, _080C0780 @ =gSaveBlock1 -_080C0756: - lsls r0, r4, 2 - adds r0, r5 - ldr r1, _080C0784 @ =0x00002abc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0x3 - bls _080C076A - adds r0, r4, 0 - bl sub_80BEC10 -_080C076A: - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xF - bls _080C0756 - bl sub_80BEC40 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080C0780: .4byte gSaveBlock1 -_080C0784: .4byte 0x00002abc - thumb_func_end sub_80C0750 - - thumb_func_start sub_80C0788 -sub_80C0788: @ 80C0788 - push {r4,lr} - ldr r0, _080C07B8 @ =0x00000804 - bl FlagGet - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _080C07B2 - movs r1, 0 - ldr r4, _080C07BC @ =gSaveBlock1 - ldr r3, _080C07C0 @ =0x00002abd - movs r2, 0 -_080C07A0: - lsls r0, r1, 2 - adds r0, r4 - adds r0, r3 - strb r2, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0xF - bls _080C07A0 -_080C07B2: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080C07B8: .4byte 0x00000804 -_080C07BC: .4byte gSaveBlock1 -_080C07C0: .4byte 0x00002abd - thumb_func_end sub_80C0788 - - thumb_func_start DoTVShow -DoTVShow: @ 80C07C4 - push {lr} - ldr r2, _080C07F8 @ =gSaveBlock1 - ldr r0, _080C07FC @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r2 - ldr r2, _080C0800 @ =0x00002739 - adds r0, r1, r2 - ldrb r0, [r0] - cmp r0, 0 - bne _080C07E0 - b _080C08F8 -_080C07E0: - subs r2, 0x1 - adds r0, r1, r2 - ldrb r0, [r0] - subs r0, 0x1 - cmp r0, 0x28 - bls _080C07EE - b _080C08F8 -_080C07EE: - lsls r0, 2 - ldr r1, _080C0804 @ =_080C0808 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C07F8: .4byte gSaveBlock1 -_080C07FC: .4byte gSpecialVar_0x8004 -_080C0800: .4byte 0x00002739 -_080C0804: .4byte _080C0808 - .align 2, 0 -_080C0808: - .4byte _080C08AC - .4byte _080C08B2 - .4byte _080C08B8 - .4byte _080C08BE - .4byte _080C08E2 - .4byte _080C08CA - .4byte _080C08D0 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08D6 - .4byte _080C08DC - .4byte _080C08E8 - .4byte _080C08EE - .4byte _080C08F4 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08F8 - .4byte _080C08C4 -_080C08AC: - bl DoTVShowPokemonFanClubLetter - b _080C08F8 -_080C08B2: - bl DoTVShowRecentHappenings - b _080C08F8 -_080C08B8: - bl DoTVShowPokemonFanClubOpinions - b _080C08F8 -_080C08BE: - bl nullsub_22 - b _080C08F8 -_080C08C4: - bl DoTVShowPokemonNewsMassOutbreak - b _080C08F8 -_080C08CA: - bl DoTVShowBravoTrainerPokemonProfile - b _080C08F8 -_080C08D0: - bl DoTVShowBravoTrainerBattleTowerProfile - b _080C08F8 -_080C08D6: - bl DoTVShowPokemonTodaySuccessfulCapture - b _080C08F8 -_080C08DC: - bl DoTVShowTodaysSmartShopper - b _080C08F8 -_080C08E2: - bl DoTVShowTheNameRaterShow - b _080C08F8 -_080C08E8: - bl DoTVShowPokemonTodayFailedCapture - b _080C08F8 -_080C08EE: - bl DoTVShowPokemonAngler - b _080C08F8 -_080C08F4: - bl DoTVShowTheWorldOfMasters -_080C08F8: - pop {r0} - bx r0 - thumb_func_end DoTVShow - - thumb_func_start TVShowConvertInternationalString -TVShowConvertInternationalString: @ 80C08FC - push {r4,r5,lr} - adds r5, r0, 0 - lsls r4, r2, 24 - lsrs r4, 24 - bl StringCopy - cmp r4, 0x1 - bhi _080C0914 - adds r0, r5, 0 - movs r1, 0x1 - bl ConvertInternationalString -_080C0914: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end TVShowConvertInternationalString +.section .dotvshow thumb_func_start DoTVShowBravoTrainerPokemonProfile DoTVShowBravoTrainerPokemonProfile: @ 80C091C @@ -6653,1673 +1819,4 @@ _080C1028: .4byte gStringVar1 _080C102C: .4byte gTVSmartShopperTextGroup thumb_func_end DoTVShowTodaysSmartShopper - thumb_func_start DoTVShowTheNameRaterShow -DoTVShowTheNameRaterShow: @ 80C1030 - push {r4-r7,lr} - sub sp, 0x8 - ldr r0, _080C1060 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C1064 @ =gSaveBlock1 + 0x2738 - adds r6, r0, r1 - ldr r1, _080C1068 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, _080C106C @ =gUnknown_020387E8 - ldrb r7, [r0] - adds r2, r0, 0 - cmp r7, 0x12 - bls _080C1054 - b _080C138A -_080C1054: - lsls r0, r7, 2 - ldr r1, _080C1070 @ =_080C1074 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C1060: .4byte gSpecialVar_0x8004 -_080C1064: .4byte gSaveBlock1 + 0x2738 -_080C1068: .4byte gScriptResult -_080C106C: .4byte gUnknown_020387E8 -_080C1070: .4byte _080C1074 - .align 2, 0 -_080C1074: - .4byte _080C10C0 - .4byte _080C1108 - .4byte _080C112A - .4byte _080C1108 - .4byte _080C1108 - .4byte _080C1108 - .4byte _080C1108 - .4byte _080C1108 - .4byte _080C1108 - .4byte _080C1170 - .4byte _080C1170 - .4byte _080C1170 - .4byte _080C136C - .4byte _080C11CC - .4byte _080C1228 - .4byte _080C127C - .4byte _080C12D4 - .4byte _080C1314 - .4byte _080C1370 -_080C10C0: - ldr r0, _080C10F4 @ =gStringVar1 - adds r1, r6, 0 - adds r1, 0xF - ldrb r2, [r6, 0x1E] - bl TVShowConvertInternationalString - ldr r0, _080C10F8 @ =gStringVar2 - ldrh r2, [r6, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C10FC @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C1100 @ =gStringVar3 - adds r1, r6, 0x4 - ldrb r2, [r6, 0x1F] - bl TVShowConvertInternationalString - ldr r4, _080C1104 @ =gUnknown_020387E8 - adds r0, r6, 0 - bl sub_80BF7E8 - adds r0, 0x1 - strb r0, [r4] - b _080C138A - .align 2, 0 -_080C10F4: .4byte gStringVar1 -_080C10F8: .4byte gStringVar2 -_080C10FC: .4byte gSpeciesNames -_080C1100: .4byte gStringVar3 -_080C1104: .4byte gUnknown_020387E8 -_080C1108: - ldrb r0, [r6, 0x1A] - cmp r0, 0 - bne _080C1114 - movs r0, 0x9 - strb r0, [r2] - b _080C138A -_080C1114: - cmp r0, 0x1 - bne _080C111E - movs r0, 0xA - strb r0, [r2] - b _080C138A -_080C111E: - cmp r0, 0x2 - beq _080C1124 - b _080C138A -_080C1124: - movs r0, 0xB - strb r0, [r2] - b _080C138A -_080C112A: - ldr r0, _080C1144 @ =gStringVar1 - adds r1, r6, 0 - adds r1, 0xF - ldrb r2, [r6, 0x1E] - bl TVShowConvertInternationalString - ldrb r0, [r6, 0x1A] - cmp r0, 0 - bne _080C114C - ldr r1, _080C1148 @ =gUnknown_020387E8 - movs r0, 0x9 - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C1144: .4byte gStringVar1 -_080C1148: .4byte gUnknown_020387E8 -_080C114C: - cmp r0, 0x1 - bne _080C115C - ldr r1, _080C1158 @ =gUnknown_020387E8 - movs r0, 0xA - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C1158: .4byte gUnknown_020387E8 -_080C115C: - cmp r0, 0x2 - beq _080C1162 - b _080C138A -_080C1162: - ldr r1, _080C116C @ =gUnknown_020387E8 - movs r0, 0xB - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C116C: .4byte gUnknown_020387E8 -_080C1170: - movs r5, 0 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0x1 - movs r2, 0 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C11BC @ =gStringVar3 - ldr r4, _080C11C0 @ =gStringVar1 - ldrb r2, [r6, 0x1F] - adds r1, r4, 0 - bl TVShowConvertInternationalString - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C11C4 @ =gStringVar2 - ldrb r2, [r6, 0x1F] - adds r1, r4, 0 - bl TVShowConvertInternationalString - adds r1, r6, 0x4 - ldrb r2, [r6, 0x1F] - adds r0, r4, 0 - bl TVShowConvertInternationalString - ldr r1, _080C11C8 @ =gUnknown_020387E8 - movs r0, 0xC - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C11BC: .4byte gStringVar3 -_080C11C0: .4byte gStringVar1 -_080C11C4: .4byte gStringVar2 -_080C11C8: .4byte gUnknown_020387E8 -_080C11CC: - movs r5, 0 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C1218 @ =gStringVar3 - ldr r4, _080C121C @ =gStringVar1 - ldrb r2, [r6, 0x1F] - adds r1, r4, 0 - bl TVShowConvertInternationalString - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0 - bl sub_80BF820 - ldr r0, _080C1220 @ =gStringVar2 - ldrb r2, [r6, 0x1E] - adds r1, r4, 0 - bl TVShowConvertInternationalString - adds r1, r6, 0 - adds r1, 0xF - ldrb r2, [r6, 0x1E] - adds r0, r4, 0 - bl TVShowConvertInternationalString - ldr r1, _080C1224 @ =gUnknown_020387E8 - movs r0, 0xE - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C1218: .4byte gStringVar3 -_080C121C: .4byte gStringVar1 -_080C1220: .4byte gStringVar2 -_080C1224: .4byte gUnknown_020387E8 -_080C1228: - movs r5, 0 - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_80BF820 - ldr r0, _080C1270 @ =gStringVar3 - ldr r4, _080C1274 @ =gStringVar1 - ldrb r2, [r6, 0x1E] - adds r1, r4, 0 - bl TVShowConvertInternationalString - str r5, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C1278 @ =gStringVar2 - ldrb r2, [r6, 0x1F] - adds r1, r4, 0 - bl TVShowConvertInternationalString - adds r1, r6, 0 - adds r1, 0xF - ldrb r2, [r6, 0x1E] - adds r0, r4, 0 - bl TVShowConvertInternationalString - b _080C1354 - .align 2, 0 -_080C1270: .4byte gStringVar3 -_080C1274: .4byte gStringVar1 -_080C1278: .4byte gStringVar2 -_080C127C: - movs r0, 0 - str r0, [sp] - str r6, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C12C4 @ =gStringVar1 - ldr r4, _080C12C8 @ =gStringVar2 - ldrb r2, [r6, 0x1F] - adds r1, r4, 0 - bl TVShowConvertInternationalString - ldrh r1, [r6, 0x2] - movs r0, 0xB - muls r1, r0 - ldr r0, _080C12CC @ =gSpeciesNames - adds r1, r0 - adds r0, r4, 0 - bl StringCopy - ldrh r0, [r6, 0x2] - str r0, [sp] - str r6, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x2 - bl sub_80BF820 - ldr r1, _080C12D0 @ =gUnknown_020387E8 - movs r0, 0x10 - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C12C4: .4byte gStringVar1 -_080C12C8: .4byte gStringVar2 -_080C12CC: .4byte gSpeciesNames -_080C12D0: .4byte gUnknown_020387E8 -_080C12D4: - movs r0, 0 - str r0, [sp] - str r6, [sp, 0x4] - movs r1, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C1308 @ =gStringVar3 - ldr r1, _080C130C @ =gStringVar1 - ldrb r2, [r6, 0x1F] - bl TVShowConvertInternationalString - ldrh r0, [r6, 0x2] - str r0, [sp] - str r6, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0x2 - movs r3, 0x2 - bl sub_80BF820 - ldr r1, _080C1310 @ =gUnknown_020387E8 - movs r0, 0x11 - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C1308: .4byte gStringVar3 -_080C130C: .4byte gStringVar1 -_080C1310: .4byte gUnknown_020387E8 -_080C1314: - movs r0, 0 - str r0, [sp] - str r6, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0x2 - movs r3, 0x1 - bl sub_80BF820 - ldr r0, _080C135C @ =gStringVar1 - ldr r4, _080C1360 @ =gStringVar2 - ldrb r2, [r6, 0x1F] - adds r1, r4, 0 - bl TVShowConvertInternationalString - ldrh r0, [r6, 0x1C] - str r0, [sp] - str r6, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0x3 - movs r3, 0x2 - bl sub_80BF820 - ldrh r1, [r6, 0x1C] - movs r0, 0xB - muls r1, r0 - ldr r0, _080C1364 @ =gSpeciesNames - adds r1, r0 - adds r0, r4, 0 - bl StringCopy -_080C1354: - ldr r1, _080C1368 @ =gUnknown_020387E8 - movs r0, 0x12 - strb r0, [r1] - b _080C138A - .align 2, 0 -_080C135C: .4byte gStringVar1 -_080C1360: .4byte gStringVar2 -_080C1364: .4byte gSpeciesNames -_080C1368: .4byte gUnknown_020387E8 -_080C136C: - movs r7, 0x12 - strb r7, [r2] -_080C1370: - ldr r0, _080C13A0 @ =gStringVar1 - adds r1, r6, 0x4 - ldrb r2, [r6, 0x1F] - bl TVShowConvertInternationalString - ldr r0, _080C13A4 @ =gStringVar2 - adds r1, r6, 0 - adds r1, 0xF - ldrb r2, [r6, 0x1E] - bl TVShowConvertInternationalString - bl TVShowDone -_080C138A: - ldr r0, _080C13A8 @ =gTVNameRaterTextGroup - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - add sp, 0x8 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080C13A0: .4byte gStringVar1 -_080C13A4: .4byte gStringVar2 -_080C13A8: .4byte gTVNameRaterTextGroup - thumb_func_end DoTVShowTheNameRaterShow - - thumb_func_start DoTVShowPokemonTodaySuccessfulCapture -DoTVShowPokemonTodaySuccessfulCapture: @ 80C13AC - push {r4-r6,lr} - ldr r0, _080C13D8 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C13DC @ =gSaveBlock1 + 0x2738 - adds r5, r0, r1 - ldr r1, _080C13E0 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, _080C13E4 @ =gUnknown_020387E8 - ldrb r6, [r0] - adds r2, r0, 0 - cmp r6, 0xB - bls _080C13CE - b _080C15DC -_080C13CE: - lsls r0, r6, 2 - ldr r1, _080C13E8 @ =_080C13EC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C13D8: .4byte gSpecialVar_0x8004 -_080C13DC: .4byte gSaveBlock1 + 0x2738 -_080C13E0: .4byte gScriptResult -_080C13E4: .4byte gUnknown_020387E8 -_080C13E8: .4byte _080C13EC - .align 2, 0 -_080C13EC: - .4byte _080C141C - .4byte _080C1470 - .4byte _080C1476 - .4byte _080C14B0 - .4byte _080C14E8 - .4byte _080C14EE - .4byte _080C1524 - .4byte _080C1578 - .4byte _080C1578 - .4byte _080C15A8 - .4byte _080C15A8 - .4byte _080C15D8 -_080C141C: - ldr r0, _080C1450 @ =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl TVShowConvertInternationalString - ldr r0, _080C1454 @ =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1458 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C145C @ =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl TVShowConvertInternationalString - ldrb r0, [r5, 0xF] - cmp r0, 0x1 - bne _080C1464 - ldr r1, _080C1460 @ =gUnknown_020387E8 - movs r0, 0x5 - strb r0, [r1] - b _080C15DC - .align 2, 0 -_080C1450: .4byte gStringVar1 -_080C1454: .4byte gStringVar2 -_080C1458: .4byte gSpeciesNames -_080C145C: .4byte gStringVar3 -_080C1460: .4byte gUnknown_020387E8 -_080C1464: - ldr r1, _080C146C @ =gUnknown_020387E8 - movs r0, 0x1 - strb r0, [r1] - b _080C15DC - .align 2, 0 -_080C146C: .4byte gUnknown_020387E8 -_080C1470: - movs r0, 0x2 - strb r0, [r2] - b _080C15DC -_080C1476: - ldr r4, _080C149C @ =gStringVar2 - ldrb r0, [r5, 0xF] - bl ItemId_GetItem - adds r1, r0, 0 - adds r0, r4, 0 - bl StringCopy - ldrb r1, [r5, 0x12] - movs r0, 0x2 - bl sub_80BF088 - ldrb r0, [r5, 0x12] - cmp r0, 0x3 - bhi _080C14A4 - ldr r1, _080C14A0 @ =gUnknown_020387E8 - movs r0, 0x3 - strb r0, [r1] - b _080C15DC - .align 2, 0 -_080C149C: .4byte gStringVar2 -_080C14A0: .4byte gUnknown_020387E8 -_080C14A4: - ldr r1, _080C14AC @ =gUnknown_020387E8 - movs r0, 0x4 - strb r0, [r1] - b _080C15DC - .align 2, 0 -_080C14AC: .4byte gUnknown_020387E8 -_080C14B0: - ldr r0, _080C14D8 @ =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl TVShowConvertInternationalString - ldr r0, _080C14DC @ =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C14E0 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C14E4 @ =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl TVShowConvertInternationalString - b _080C150A - .align 2, 0 -_080C14D8: .4byte gStringVar1 -_080C14DC: .4byte gStringVar2 -_080C14E0: .4byte gSpeciesNames -_080C14E4: .4byte gStringVar3 -_080C14E8: - movs r0, 0x6 - strb r0, [r2] - b _080C15DC -_080C14EE: - ldr r0, _080C1514 @ =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl TVShowConvertInternationalString - ldr r0, _080C1518 @ =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C151C @ =gSpeciesNames - adds r1, r2 - bl StringCopy -_080C150A: - ldr r1, _080C1520 @ =gUnknown_020387E8 - movs r0, 0x6 - strb r0, [r1] - b _080C15DC - .align 2, 0 -_080C1514: .4byte gStringVar1 -_080C1518: .4byte gStringVar2 -_080C151C: .4byte gSpeciesNames -_080C1520: .4byte gUnknown_020387E8 -_080C1524: - ldr r0, _080C1564 @ =gStringVar1 - adds r1, r5, 0 - adds r1, 0x13 - ldrb r2, [r5, 0x2] - bl TVShowConvertInternationalString - ldr r0, _080C1568 @ =gStringVar2 - ldrh r2, [r5, 0x10] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C156C @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C1570 @ =gStringVar3 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl TVShowConvertInternationalString - ldr r4, _080C1574 @ =gUnknown_020387E8 - bl Random - ldrb r2, [r4] - adds r2, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - ands r0, r1 - adds r0, r2 - strb r0, [r4] - b _080C15DC - .align 2, 0 -_080C1564: .4byte gStringVar1 -_080C1568: .4byte gStringVar2 -_080C156C: .4byte gSpeciesNames -_080C1570: .4byte gStringVar3 -_080C1574: .4byte gUnknown_020387E8 -_080C1578: - ldr r0, _080C159C @ =gStringVar1 - ldrh r1, [r5, 0x10] - movs r4, 0xB - muls r1, r4 - ldr r2, _080C15A0 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C15A4 @ =gStringVar2 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl TVShowConvertInternationalString - ldrh r1, [r5, 0x10] - movs r0, 0x2 - bl sub_80BF638 - b _080C15C2 - .align 2, 0 -_080C159C: .4byte gStringVar1 -_080C15A0: .4byte gSpeciesNames -_080C15A4: .4byte gStringVar2 -_080C15A8: - ldr r0, _080C15C8 @ =gStringVar1 - ldrh r1, [r5, 0x10] - movs r4, 0xB - muls r1, r4 - ldr r2, _080C15CC @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C15D0 @ =gStringVar2 - adds r1, r5, 0x4 - ldrb r2, [r5, 0x3] - bl TVShowConvertInternationalString -_080C15C2: - ldr r0, _080C15D4 @ =gUnknown_020387E8 - strb r4, [r0] - b _080C15DC - .align 2, 0 -_080C15C8: .4byte gStringVar1 -_080C15CC: .4byte gSpeciesNames -_080C15D0: .4byte gStringVar2 -_080C15D4: .4byte gUnknown_020387E8 -_080C15D8: - bl TVShowDone -_080C15DC: - ldr r0, _080C15F0 @ =gTVPokemonTodayTextGroup - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080C15F0: .4byte gTVPokemonTodayTextGroup - thumb_func_end DoTVShowPokemonTodaySuccessfulCapture - - thumb_func_start DoTVShowPokemonTodayFailedCapture -DoTVShowPokemonTodayFailedCapture: @ 80C15F4 - push {r4,r5,lr} - ldr r0, _080C1620 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C1624 @ =gSaveBlock1 + 0x2738 - adds r4, r0, r1 - ldr r1, _080C1628 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, _080C162C @ =gUnknown_020387E8 - ldrb r5, [r0] - cmp r5, 0x6 - bls _080C1614 - b _080C173C -_080C1614: - lsls r0, r5, 2 - ldr r1, _080C1630 @ =_080C1634 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C1620: .4byte gSpecialVar_0x8004 -_080C1624: .4byte gSaveBlock1 + 0x2738 -_080C1628: .4byte gScriptResult -_080C162C: .4byte gUnknown_020387E8 -_080C1630: .4byte _080C1634 - .align 2, 0 -_080C1634: - .4byte _080C1650 - .4byte _080C1684 - .4byte _080C16D8 - .4byte _080C16D8 - .4byte _080C171C - .4byte _080C171C - .4byte _080C1738 -_080C1650: - ldr r0, _080C1674 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl TVShowConvertInternationalString - ldr r0, _080C1678 @ =gStringVar2 - ldrh r2, [r4, 0xC] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C167C @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r1, _080C1680 @ =gUnknown_020387E8 - movs r0, 0x1 - strb r0, [r1] - b _080C173C - .align 2, 0 -_080C1674: .4byte gStringVar1 -_080C1678: .4byte gStringVar2 -_080C167C: .4byte gSpeciesNames -_080C1680: .4byte gUnknown_020387E8 -_080C1684: - ldr r0, _080C16B8 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl TVShowConvertInternationalString - ldr r0, _080C16BC @ =gStringVar2 - ldrb r1, [r4, 0x12] - movs r2, 0 - bl sub_80FBFB4 - ldr r0, _080C16C0 @ =gStringVar3 - ldrh r2, [r4, 0xE] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C16C4 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r0, [r4, 0x11] - cmp r0, 0x1 - bne _080C16CC - ldr r1, _080C16C8 @ =gUnknown_020387E8 - movs r0, 0x3 - strb r0, [r1] - b _080C173C - .align 2, 0 -_080C16B8: .4byte gStringVar1 -_080C16BC: .4byte gStringVar2 -_080C16C0: .4byte gStringVar3 -_080C16C4: .4byte gSpeciesNames -_080C16C8: .4byte gUnknown_020387E8 -_080C16CC: - ldr r1, _080C16D4 @ =gUnknown_020387E8 - movs r0, 0x2 - strb r0, [r1] - b _080C173C - .align 2, 0 -_080C16D4: .4byte gUnknown_020387E8 -_080C16D8: - ldr r0, _080C1708 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl TVShowConvertInternationalString - ldrb r1, [r4, 0x10] - movs r0, 0x1 - bl sub_80BF088 - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - lsls r0, 16 - cmp r0, 0 - bne _080C1710 - ldr r1, _080C170C @ =gUnknown_020387E8 - movs r0, 0x5 - strb r0, [r1] - b _080C173C - .align 2, 0 -_080C1708: .4byte gStringVar1 -_080C170C: .4byte gUnknown_020387E8 -_080C1710: - ldr r1, _080C1718 @ =gUnknown_020387E8 - movs r0, 0x4 - strb r0, [r1] - b _080C173C - .align 2, 0 -_080C1718: .4byte gUnknown_020387E8 -_080C171C: - ldr r0, _080C1730 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x2] - bl TVShowConvertInternationalString - ldr r1, _080C1734 @ =gUnknown_020387E8 - movs r0, 0x6 - strb r0, [r1] - b _080C173C - .align 2, 0 -_080C1730: .4byte gStringVar1 -_080C1734: .4byte gUnknown_020387E8 -_080C1738: - bl TVShowDone -_080C173C: - ldr r0, _080C1750 @ =gTVPokemonTodayFailedCaptureTextGroup - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080C1750: .4byte gTVPokemonTodayFailedCaptureTextGroup - thumb_func_end DoTVShowPokemonTodayFailedCapture - - thumb_func_start DoTVShowPokemonFanClubLetter -DoTVShowPokemonFanClubLetter: @ 80C1754 - push {r4-r7,lr} - ldr r0, _080C1780 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C1784 @ =gSaveBlock1 + 0x2738 - adds r5, r0, r1 - ldr r1, _080C1788 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, _080C178C @ =gUnknown_020387E8 - ldrb r7, [r0] - adds r6, r0, 0 - cmp r7, 0x33 - bls _080C1776 - b _080C1960 -_080C1776: - lsls r0, r7, 2 - ldr r1, _080C1790 @ =_080C1794 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C1780: .4byte gSpecialVar_0x8004 -_080C1784: .4byte gSaveBlock1 + 0x2738 -_080C1788: .4byte gScriptResult -_080C178C: .4byte gUnknown_020387E8 -_080C1790: .4byte _080C1794 - .align 2, 0 -_080C1794: - .4byte _080C1864 - .4byte _080C1898 - .4byte _080C18C4 - .4byte _080C18CA - .4byte _080C18E2 - .4byte _080C18E2 - .4byte _080C18E2 - .4byte _080C18F4 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1960 - .4byte _080C1916 - .4byte _080C193C -_080C1864: - ldr r0, _080C1888 @ =gStringVar1 - adds r1, r5, 0 - adds r1, 0x10 - ldrb r2, [r5, 0x18] - bl TVShowConvertInternationalString - ldr r0, _080C188C @ =gStringVar2 - ldrh r2, [r5, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1890 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r1, _080C1894 @ =gUnknown_020387E8 - movs r0, 0x32 - strb r0, [r1] - b _080C1960 - .align 2, 0 -_080C1888: .4byte gStringVar1 -_080C188C: .4byte gStringVar2 -_080C1890: .4byte gSpeciesNames -_080C1894: .4byte gUnknown_020387E8 -_080C1898: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - ands r0, r1 - adds r2, r0, 0x1 - cmp r2, 0x1 - bne _080C18B8 - ldr r1, _080C18B4 @ =gUnknown_020387E8 - movs r0, 0x2 - strb r0, [r1] - b _080C1960 - .align 2, 0 -_080C18B4: .4byte gUnknown_020387E8 -_080C18B8: - ldr r1, _080C18C0 @ =gUnknown_020387E8 - adds r0, r2, 0x2 - strb r0, [r1] - b _080C1960 - .align 2, 0 -_080C18C0: .4byte gUnknown_020387E8 -_080C18C4: - movs r0, 0x33 - strb r0, [r6] - b _080C1960 -_080C18CA: - bl Random - ldrb r4, [r6] - adds r4, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, r4 - strb r0, [r6] - b _080C1960 -_080C18E2: - adds r0, r5, 0 - bl sub_80BF79C - ldr r1, _080C18F0 @ =gUnknown_020387E8 - movs r0, 0x7 - strb r0, [r1] - b _080C1960 - .align 2, 0 -_080C18F0: .4byte gUnknown_020387E8 -_080C18F4: - bl Random - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x1F - bl __umodsi3 - adds r0, 0x46 - lsls r0, 16 - lsrs r2, r0, 16 - movs r0, 0x2 - adds r1, r2, 0 - bl sub_80BF088 - bl TVShowDone - b _080C1960 -_080C1916: - ldr r4, _080C1934 @ =gStringVar4 - adds r1, r5, 0x4 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl ShowFieldMessage - ldr r1, _080C1938 @ =gUnknown_020387E8 - movs r0, 0x1 - strb r0, [r1] - b _080C196C - .align 2, 0 -_080C1934: .4byte gStringVar4 -_080C1938: .4byte gUnknown_020387E8 -_080C193C: - ldr r4, _080C1958 @ =gStringVar4 - adds r1, r5, 0x4 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl ShowFieldMessage - ldr r1, _080C195C @ =gUnknown_020387E8 - movs r0, 0x3 - strb r0, [r1] - b _080C196C - .align 2, 0 -_080C1958: .4byte gStringVar4 -_080C195C: .4byte gUnknown_020387E8 -_080C1960: - ldr r0, _080C1974 @ =gTVFanClubTextGroup - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage -_080C196C: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080C1974: .4byte gTVFanClubTextGroup - thumb_func_end DoTVShowPokemonFanClubLetter - - thumb_func_start DoTVShowRecentHappenings -DoTVShowRecentHappenings: @ 80C1978 - push {r4-r7,lr} - ldr r0, _080C19A4 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C19A8 @ =gSaveBlock1 + 0x2738 - adds r5, r0, r1 - ldr r1, _080C19AC @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r0, _080C19B0 @ =gUnknown_020387E8 - ldrb r6, [r0] - adds r7, r0, 0 - cmp r6, 0x32 - bls _080C199A - b _080C1AF0 -_080C199A: - lsls r0, r6, 2 - ldr r1, _080C19B4 @ =_080C19B8 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C19A4: .4byte gSpecialVar_0x8004 -_080C19A8: .4byte gSaveBlock1 + 0x2738 -_080C19AC: .4byte gScriptResult -_080C19B0: .4byte gUnknown_020387E8 -_080C19B4: .4byte _080C19B8 - .align 2, 0 -_080C19B8: - .4byte _080C1A84 - .4byte _080C1AA8 - .4byte _080C1AC0 - .4byte _080C1AC0 - .4byte _080C1AC0 - .4byte _080C1AC6 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1AF0 - .4byte _080C1ACC -_080C1A84: - ldr r0, _080C1AA0 @ =gStringVar1 - adds r1, r5, 0 - adds r1, 0x10 - ldrb r2, [r5, 0x18] - bl TVShowConvertInternationalString - adds r0, r5, 0 - bl sub_80BF79C - ldr r1, _080C1AA4 @ =gUnknown_020387E8 - movs r0, 0x32 - strb r0, [r1] - b _080C1AF0 - .align 2, 0 -_080C1AA0: .4byte gStringVar1 -_080C1AA4: .4byte gUnknown_020387E8 -_080C1AA8: - bl Random - ldrb r4, [r7] - adds r4, 0x1 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3 - bl __umodsi3 - adds r0, r4 - strb r0, [r7] - b _080C1AF0 -_080C1AC0: - movs r0, 0x5 - strb r0, [r7] - b _080C1AF0 -_080C1AC6: - bl TVShowDone - b _080C1AF0 -_080C1ACC: - ldr r4, _080C1AE8 @ =gStringVar4 - adds r1, r5, 0x4 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertEasyChatWordsToString - adds r0, r4, 0 - bl ShowFieldMessage - ldr r1, _080C1AEC @ =gUnknown_020387E8 - movs r0, 0x1 - strb r0, [r1] - b _080C1AFC - .align 2, 0 -_080C1AE8: .4byte gStringVar4 -_080C1AEC: .4byte gUnknown_020387E8 -_080C1AF0: - ldr r0, _080C1B04 @ =gTVRecentHappeningsTextGroup - lsls r1, r6, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage -_080C1AFC: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080C1B04: .4byte gTVRecentHappeningsTextGroup - thumb_func_end DoTVShowRecentHappenings - - thumb_func_start DoTVShowPokemonFanClubOpinions -DoTVShowPokemonFanClubOpinions: @ 80C1B08 - push {r4-r6,lr} - ldr r0, _080C1B30 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C1B34 @ =gSaveBlock1 + 0x2738 - adds r4, r0, r1 - ldr r1, _080C1B38 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r6, _080C1B3C @ =gUnknown_020387E8 - ldrb r5, [r6] - cmp r5, 0x3 - bgt _080C1B40 - cmp r5, 0x1 - bge _080C1B88 - cmp r5, 0 - beq _080C1B46 - b _080C1BD6 - .align 2, 0 -_080C1B30: .4byte gSpecialVar_0x8004 -_080C1B34: .4byte gSaveBlock1 + 0x2738 -_080C1B38: .4byte gScriptResult -_080C1B3C: .4byte gUnknown_020387E8 -_080C1B40: - cmp r5, 0x4 - beq _080C1BC0 - b _080C1BD6 -_080C1B46: - ldr r0, _080C1B78 @ =gStringVar1 - adds r1, r4, 0x5 - ldrb r2, [r4, 0xD] - bl TVShowConvertInternationalString - ldr r0, _080C1B7C @ =gStringVar2 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1B80 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C1B84 @ =gStringVar3 - adds r1, r4, 0 - adds r1, 0x10 - ldrb r2, [r4, 0xE] - bl TVShowConvertInternationalString - ldrb r0, [r4, 0x4] - lsrs r0, 4 - adds r0, 0x1 - strb r0, [r6] - b _080C1BD6 - .align 2, 0 -_080C1B78: .4byte gStringVar1 -_080C1B7C: .4byte gStringVar2 -_080C1B80: .4byte gSpeciesNames -_080C1B84: .4byte gStringVar3 -_080C1B88: - ldr r0, _080C1BB0 @ =gStringVar1 - adds r1, r4, 0x5 - ldrb r2, [r4, 0xD] - bl TVShowConvertInternationalString - ldr r0, _080C1BB4 @ =gStringVar2 - ldrh r2, [r4, 0x2] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1BB8 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldr r0, _080C1BBC @ =gStringVar3 - ldrh r1, [r4, 0x1C] - bl sub_80EB3FC - movs r0, 0x4 - strb r0, [r6] - b _080C1BD6 - .align 2, 0 -_080C1BB0: .4byte gStringVar1 -_080C1BB4: .4byte gStringVar2 -_080C1BB8: .4byte gSpeciesNames -_080C1BBC: .4byte gStringVar3 -_080C1BC0: - ldr r0, _080C1BE8 @ =gStringVar1 - adds r1, r4, 0x5 - ldrb r2, [r4, 0xD] - bl TVShowConvertInternationalString - ldr r0, _080C1BEC @ =gStringVar3 - ldrh r1, [r4, 0x1E] - bl sub_80EB3FC - bl TVShowDone -_080C1BD6: - ldr r0, _080C1BF0 @ =gTVFanClubOpinionsTextGroup - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080C1BE8: .4byte gStringVar1 -_080C1BEC: .4byte gStringVar3 -_080C1BF0: .4byte gTVFanClubOpinionsTextGroup - thumb_func_end DoTVShowPokemonFanClubOpinions - - thumb_func_start nullsub_22 -nullsub_22: @ 80C1BF4 - bx lr - thumb_func_end nullsub_22 - -.section .text_80C1C5C - - thumb_func_start DoTVShowInSearchOfTrainers -DoTVShowInSearchOfTrainers: @ 80C1C5C - push {r4-r7,lr} - ldr r0, _080C1C7C @ =gScriptResult - movs r1, 0 - strh r1, [r0] - ldr r0, _080C1C80 @ =gUnknown_020387E8 - ldrb r7, [r0] - adds r2, r0, 0 - cmp r7, 0x8 - bls _080C1C70 - b _080C1DF8 -_080C1C70: - lsls r0, r7, 2 - ldr r1, _080C1C84 @ =_080C1C88 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080C1C7C: .4byte gScriptResult -_080C1C80: .4byte gUnknown_020387E8 -_080C1C84: .4byte _080C1C88 - .align 2, 0 -_080C1C88: - .4byte _080C1CAC - .4byte _080C1CF0 - .4byte _080C1CF6 - .4byte _080C1D44 - .4byte _080C1DB0 - .4byte _080C1DB0 - .4byte _080C1DB0 - .4byte _080C1DB0 - .4byte _080C1DB6 -_080C1CAC: - ldr r0, _080C1CD0 @ =gStringVar1 - ldr r4, _080C1CD4 @ =gSaveBlock1 - ldr r2, _080C1CD8 @ =0x00002b18 - adds r1, r4, r2 - ldrb r1, [r1] - movs r2, 0 - bl sub_80FBFB4 - ldr r0, _080C1CDC @ =0x00002b19 - adds r4, r0 - ldrb r0, [r4] - cmp r0, 0x1 - bls _080C1CE4 - ldr r1, _080C1CE0 @ =gUnknown_020387E8 - movs r0, 0x1 - strb r0, [r1] - b _080C1DF8 - .align 2, 0 -_080C1CD0: .4byte gStringVar1 -_080C1CD4: .4byte gSaveBlock1 -_080C1CD8: .4byte 0x00002b18 -_080C1CDC: .4byte 0x00002b19 -_080C1CE0: .4byte gUnknown_020387E8 -_080C1CE4: - ldr r1, _080C1CEC @ =gUnknown_020387E8 - movs r0, 0x2 - strb r0, [r1] - b _080C1DF8 - .align 2, 0 -_080C1CEC: .4byte gUnknown_020387E8 -_080C1CF0: - movs r0, 0x2 - strb r0, [r2] - b _080C1DF8 -_080C1CF6: - ldr r0, _080C1D0C @ =gSaveBlock1 - ldr r1, _080C1D10 @ =0x00002b1a - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - bne _080C1D14 - movs r0, 0x4 - strb r0, [r2] - b _080C1DF8 - .align 2, 0 -_080C1D0C: .4byte gSaveBlock1 -_080C1D10: .4byte 0x00002b1a -_080C1D14: - movs r0, 0x8 - ands r0, r1 - cmp r0, 0 - beq _080C1D22 - movs r0, 0x5 - strb r0, [r2] - b _080C1DF8 -_080C1D22: - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _080C1D30 - movs r0, 0x6 - strb r0, [r2] - b _080C1DF8 -_080C1D30: - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _080C1D3E - movs r0, 0x7 - strb r0, [r2] - b _080C1DF8 -_080C1D3E: - movs r0, 0x3 - strb r0, [r2] - b _080C1DF8 -_080C1D44: - ldr r0, _080C1D88 @ =gStringVar1 - ldr r4, _080C1D8C @ =gSaveBlock1 - ldr r2, _080C1D90 @ =0x00002b10 - adds r1, r4, r2 - ldrh r1, [r1] - movs r6, 0xB - muls r1, r6 - ldr r5, _080C1D94 @ =gSpeciesNames - adds r1, r5 - bl StringCopy - ldr r0, _080C1D98 @ =gStringVar2 - ldr r2, _080C1D9C @ =0x00002b14 - adds r1, r4, r2 - ldrh r2, [r1] - movs r1, 0xD - muls r1, r2 - ldr r2, _080C1DA0 @ =gMoveNames - adds r1, r2 - bl StringCopy - ldr r0, _080C1DA4 @ =gStringVar3 - ldr r1, _080C1DA8 @ =0x00002b12 - adds r4, r1 - ldrh r1, [r4] - muls r1, r6 - adds r1, r5 - bl StringCopy - ldr r1, _080C1DAC @ =gUnknown_020387E8 - movs r0, 0x8 - strb r0, [r1] - b _080C1DF8 - .align 2, 0 -_080C1D88: .4byte gStringVar1 -_080C1D8C: .4byte gSaveBlock1 -_080C1D90: .4byte 0x00002b10 -_080C1D94: .4byte gSpeciesNames -_080C1D98: .4byte gStringVar2 -_080C1D9C: .4byte 0x00002b14 -_080C1DA0: .4byte gMoveNames -_080C1DA4: .4byte gStringVar3 -_080C1DA8: .4byte 0x00002b12 -_080C1DAC: .4byte gUnknown_020387E8 -_080C1DB0: - movs r0, 0x8 - strb r0, [r2] - b _080C1DF8 -_080C1DB6: - ldr r0, _080C1E0C @ =gStringVar1 - ldr r4, _080C1E10 @ =gSaveBlock1 - ldr r2, _080C1E14 @ =0x00002b16 - adds r1, r4, r2 - ldrh r1, [r1] - bl sub_80EB3FC - ldr r0, _080C1E18 @ =gStringVar2 - ldr r2, _080C1E1C @ =0x00002b10 - adds r1, r4, r2 - ldrh r1, [r1] - movs r6, 0xB - muls r1, r6 - ldr r5, _080C1E20 @ =gSpeciesNames - adds r1, r5 - bl StringCopy - ldr r0, _080C1E24 @ =gStringVar3 - ldr r1, _080C1E28 @ =0x00002b12 - adds r4, r1 - ldrh r1, [r4] - muls r1, r6 - adds r1, r5 - bl StringCopy - ldr r1, _080C1E2C @ =gScriptResult - movs r0, 0x1 - strh r0, [r1] - ldr r1, _080C1E30 @ =gUnknown_020387E8 - movs r0, 0 - strb r0, [r1] - bl TakeTVShowInSearchOfTrainersOffTheAir -_080C1DF8: - ldr r0, _080C1E34 @ =gTVGabbyAndTyTextGroup - lsls r1, r7, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080C1E0C: .4byte gStringVar1 -_080C1E10: .4byte gSaveBlock1 -_080C1E14: .4byte 0x00002b16 -_080C1E18: .4byte gStringVar2 -_080C1E1C: .4byte 0x00002b10 -_080C1E20: .4byte gSpeciesNames -_080C1E24: .4byte gStringVar3 -_080C1E28: .4byte 0x00002b12 -_080C1E2C: .4byte gScriptResult -_080C1E30: .4byte gUnknown_020387E8 -_080C1E34: .4byte gTVGabbyAndTyTextGroup - thumb_func_end DoTVShowInSearchOfTrainers - - thumb_func_start DoTVShowPokemonAngler -DoTVShowPokemonAngler: @ 80C1E38 - push {r4,r5,lr} - ldr r0, _080C1E5C @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C1E60 @ =gSaveBlock1 + 0x2738 - adds r4, r0, r1 - ldr r0, _080C1E64 @ =gScriptResult - movs r1, 0 - strh r1, [r0] - ldrb r0, [r4, 0x2] - ldrb r2, [r4, 0x3] - cmp r0, r2 - bcs _080C1E6C - ldr r0, _080C1E68 @ =gUnknown_020387E8 - strb r1, [r0] - b _080C1E74 - .align 2, 0 -_080C1E5C: .4byte gSpecialVar_0x8004 -_080C1E60: .4byte gSaveBlock1 + 0x2738 -_080C1E64: .4byte gScriptResult -_080C1E68: .4byte gUnknown_020387E8 -_080C1E6C: - ldr r1, _080C1E80 @ =gUnknown_020387E8 - movs r0, 0x1 - strb r0, [r1] - adds r0, r1, 0 -_080C1E74: - ldrb r5, [r0] - cmp r5, 0 - beq _080C1E84 - cmp r5, 0x1 - beq _080C1EBC - b _080C1EE4 - .align 2, 0 -_080C1E80: .4byte gUnknown_020387E8 -_080C1E84: - ldr r0, _080C1EB0 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x6] - bl TVShowConvertInternationalString - ldr r0, _080C1EB4 @ =gStringVar2 - ldrh r2, [r4, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1EB8 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r4, 0x3] - movs r0, 0x2 - bl sub_80BF088 - bl TVShowDone - b _080C1EE4 - .align 2, 0 -_080C1EB0: .4byte gStringVar1 -_080C1EB4: .4byte gStringVar2 -_080C1EB8: .4byte gSpeciesNames -_080C1EBC: - ldr r0, _080C1EF8 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0x6] - bl TVShowConvertInternationalString - ldr r0, _080C1EFC @ =gStringVar2 - ldrh r2, [r4, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1F00 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - ldrb r1, [r4, 0x2] - movs r0, 0x2 - bl sub_80BF088 - bl TVShowDone -_080C1EE4: - ldr r0, _080C1F04 @ =gTVFishingGuruAdviceTextGroup - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080C1EF8: .4byte gStringVar1 -_080C1EFC: .4byte gStringVar2 -_080C1F00: .4byte gSpeciesNames -_080C1F04: .4byte gTVFishingGuruAdviceTextGroup - thumb_func_end DoTVShowPokemonAngler - - thumb_func_start DoTVShowTheWorldOfMasters -DoTVShowTheWorldOfMasters: @ 80C1F08 - push {r4-r6,lr} - ldr r0, _080C1F30 @ =gSpecialVar_0x8004 - ldrh r1, [r0] - lsls r0, r1, 3 - adds r0, r1 - lsls r0, 2 - ldr r1, _080C1F34 @ =gSaveBlock1 + 0x2738 - adds r4, r0, r1 - ldr r1, _080C1F38 @ =gScriptResult - movs r0, 0 - strh r0, [r1] - ldr r6, _080C1F3C @ =gUnknown_020387E8 - ldrb r5, [r6] - cmp r5, 0x1 - beq _080C1F6C - cmp r5, 0x1 - bgt _080C1F40 - cmp r5, 0 - beq _080C1F46 - b _080C1FB6 - .align 2, 0 -_080C1F30: .4byte gSpecialVar_0x8004 -_080C1F34: .4byte gSaveBlock1 + 0x2738 -_080C1F38: .4byte gScriptResult -_080C1F3C: .4byte gUnknown_020387E8 -_080C1F40: - cmp r5, 0x2 - beq _080C1F8C - b _080C1FB6 -_080C1F46: - ldr r0, _080C1F68 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xB] - bl TVShowConvertInternationalString - ldrh r1, [r4, 0x6] - movs r0, 0x1 - bl sub_80BF088 - ldrh r1, [r4, 0x2] - movs r0, 0x2 - bl sub_80BF088 - movs r0, 0x1 - strb r0, [r6] - b _080C1FB6 - .align 2, 0 -_080C1F68: .4byte gStringVar1 -_080C1F6C: - ldr r0, _080C1F84 @ =gStringVar1 - ldrh r2, [r4, 0x8] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1F88 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - movs r0, 0x2 - strb r0, [r6] - b _080C1FB6 - .align 2, 0 -_080C1F84: .4byte gStringVar1 -_080C1F88: .4byte gSpeciesNames -_080C1F8C: - ldr r0, _080C1FC8 @ =gStringVar1 - adds r1, r4, 0 - adds r1, 0x13 - ldrb r2, [r4, 0xB] - bl TVShowConvertInternationalString - ldr r0, _080C1FCC @ =gStringVar2 - ldrb r1, [r4, 0xA] - movs r2, 0 - bl sub_80FBFB4 - ldr r0, _080C1FD0 @ =gStringVar3 - ldrh r2, [r4, 0x4] - movs r1, 0xB - muls r1, r2 - ldr r2, _080C1FD4 @ =gSpeciesNames - adds r1, r2 - bl StringCopy - bl TVShowDone -_080C1FB6: - ldr r0, _080C1FD8 @ =gTVWorldOfMastersTextGroup - lsls r1, r5, 2 - adds r1, r0 - ldr r0, [r1] - bl ShowFieldMessage - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_080C1FC8: .4byte gStringVar1 -_080C1FCC: .4byte gStringVar2 -_080C1FD0: .4byte gStringVar3 -_080C1FD4: .4byte gSpeciesNames -_080C1FD8: .4byte gTVWorldOfMastersTextGroup - thumb_func_end DoTVShowTheWorldOfMasters - - .align 2, 0 @ Don't pad with nop. |