diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2020-03-03 12:24:18 -0500 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2020-03-03 12:24:18 -0500 |
commit | 8a7c2ded11a2adf4f09ddca814eb06fdbca13fd1 (patch) | |
tree | b52341e283d9e1c5abb35a5cdf4e33471d8ce777 /asm | |
parent | 8594e7f72d070ce10fcc41a8c2dfe32420e7c560 (diff) |
Port berry_crush_3 from Emerald
Diffstat (limited to 'asm')
-rw-r--r-- | asm/berry_crush_3.s | 3431 |
1 files changed, 0 insertions, 3431 deletions
diff --git a/asm/berry_crush_3.s b/asm/berry_crush_3.s deleted file mode 100644 index dfed93396..000000000 --- a/asm/berry_crush_3.s +++ /dev/null @@ -1,3431 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start sub_814D5C8 -sub_814D5C8: @ 814D5C8 - push {r4,r5,lr} - sub sp, 0xC - bl sub_814B6F0 - adds r5, r0, 0 - cmp r5, 0 - bne _0814D5DC - movs r0, 0x1 - negs r0, r0 - b _0814D880 -_0814D5DC: - ldrb r0, [r5, 0xC] - cmp r0, 0x9 - bls _0814D5E4 - b _0814D878 -_0814D5E4: - lsls r0, 2 - ldr r1, _0814D5F0 @ =_0814D5F4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0814D5F0: .4byte _0814D5F4 - .align 2, 0 -_0814D5F4: - .4byte _0814D61C - .4byte _0814D63A - .4byte _0814D660 - .4byte _0814D66E - .4byte _0814D6F4 - .4byte _0814D73A - .4byte _0814D768 - .4byte _0814D798 - .4byte _0814D7F4 - .4byte _0814D830 -_0814D61C: - movs r0, 0 - bl SetVBlankCallback - movs r0, 0 - bl SetHBlankCallback - movs r0, 0 - movs r1, 0 - bl SetGpuReg - bl ScanlineEffect_Stop - bl ResetTempTileDataBuffers - b _0814D878 -_0814D63A: - add r0, sp, 0x8 - movs r4, 0 - strh r4, [r0] - movs r1, 0xE0 - lsls r1, 19 - ldr r2, _0814D658 @ =0x01000200 - bl CpuSet - ldr r0, _0814D65C @ =gReservedSpritePaletteCount - strb r4, [r0] - movs r0, 0x3 - bl DigitObjUtil_Init - b _0814D878 - .align 2, 0 -_0814D658: .4byte 0x01000200 -_0814D65C: .4byte gReservedSpritePaletteCount -_0814D660: - bl ResetPaletteFade - bl ResetSpriteData - bl FreeAllSpritePalettes - b _0814D878 -_0814D66E: - movs r0, 0 - bl ResetBgsAndClearDma3BusyFlags - ldr r1, _0814D6F0 @ =gUnknown_846E3CC - movs r0, 0 - movs r2, 0x4 - bl InitBgsFromTemplates - movs r0, 0xE0 - lsls r0, 1 - adds r1, r5, r0 - movs r0, 0x1 - bl SetBgTilemapBuffer - movs r0, 0x87 - lsls r0, 6 - adds r1, r5, r0 - movs r0, 0x2 - bl SetBgTilemapBuffer - movs r0, 0xC7 - lsls r0, 6 - adds r1, r5, r0 - movs r0, 0x3 - bl SetBgTilemapBuffer - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - movs r0, 0x50 - movs r1, 0 - bl SetGpuReg - movs r0, 0x52 - movs r1, 0 - bl SetGpuReg - b _0814D878 - .align 2, 0 -_0814D6F0: .4byte gUnknown_846E3CC -_0814D6F4: - movs r4, 0x20 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - movs r0, 0x40 - str r0, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - b _0814D878 -_0814D73A: - movs r0, 0 - bl CopyBgTilemapBufferToVram - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - ldr r1, _0814D764 @ =gUnknown_8EAFFC0 - movs r0, 0 - str r0, [sp] - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl DecompressAndCopyTileDataToVram - b _0814D878 - .align 2, 0 -_0814D764: .4byte gUnknown_8EAFFC0 -_0814D768: - bl FreeTempTileDataBuffersIfPossible - lsls r0, 24 - cmp r0, 0 - beq _0814D774 - b _0814D87E -_0814D774: - bl InitStandardTextBoxWindows - bl ResetBg0 - adds r0, r5, 0 - bl sub_814EB38 - adds r0, r5, 0 - bl sub_814EBB0 - ldr r0, _0814D794 @ =gPaletteFade - ldrb r1, [r0, 0x8] - movs r2, 0x80 - orrs r1, r2 - strb r1, [r0, 0x8] - b _0814D878 - .align 2, 0 -_0814D794: .4byte gPaletteFade -_0814D798: - ldr r0, _0814D7E4 @ =gUnknown_8EAFEA0 - movs r2, 0xC0 - lsls r2, 1 - movs r1, 0 - bl LoadPalette - ldr r1, _0814D7E8 @ =gUnknown_846ED90 - movs r0, 0x1 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - ldr r1, _0814D7EC @ =gUnknown_846EEC0 - movs r0, 0x2 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - ldr r1, _0814D7F0 @ =gUnknown_846F058 - movs r0, 0x3 - movs r2, 0 - movs r3, 0 - bl CopyToBgTilemapBuffer - adds r0, r5, 0 - bl sub_814EC80 - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - b _0814D878 - .align 2, 0 -_0814D7E4: .4byte gUnknown_8EAFEA0 -_0814D7E8: .4byte gUnknown_846ED90 -_0814D7EC: .4byte gUnknown_846EEC0 -_0814D7F0: .4byte gUnknown_846F058 -_0814D7F4: - bl LoadWirelessStatusIndicatorSpriteGfx - movs r0, 0 - movs r1, 0 - bl CreateWirelessStatusIndicatorSprite - adds r0, r5, 0 - bl sub_814ECE0 - ldr r0, _0814D82C @ =gSpriteCoordOffsetY - ldrh r1, [r0] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x16 - bl SetGpuReg - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl ChangeBgX - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - bl ChangeBgY - b _0814D878 - .align 2, 0 -_0814D82C: .4byte gSpriteCoordOffsetY -_0814D830: - ldr r2, _0814D874 @ =gPaletteFade - ldrb r1, [r2, 0x8] - movs r0, 0x7F - ands r0, r1 - strb r0, [r2, 0x8] - movs r0, 0x1 - negs r0, r0 - movs r1, 0x10 - movs r2, 0 - bl BlendPalettes - movs r0, 0 - bl ShowBg - movs r0, 0x1 - bl ShowBg - movs r0, 0x2 - bl ShowBg - movs r0, 0x3 - bl ShowBg - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl SetGpuRegBits - bl sub_814B914 - movs r0, 0 - strb r0, [r5, 0xC] - movs r0, 0x1 - b _0814D880 - .align 2, 0 -_0814D874: .4byte gPaletteFade -_0814D878: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_0814D87E: - movs r0, 0 -_0814D880: - add sp, 0xC - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_814D5C8 - - thumb_func_start sub_814D888 -sub_814D888: @ 814D888 - push {r4,r5,lr} - sub sp, 0x8 - bl sub_814B6F0 - adds r5, r0, 0 - cmp r5, 0 - bne _0814D89C - movs r0, 0x1 - negs r0, r0 - b _0814D9C2 -_0814D89C: - ldrb r0, [r5, 0xC] - cmp r0, 0x7 - bls _0814D8A4 - b _0814D9BA -_0814D8A4: - lsls r0, 2 - ldr r1, _0814D8B0 @ =_0814D8B4 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0814D8B0: .4byte _0814D8B4 - .align 2, 0 -_0814D8B4: - .4byte _0814D8D4 - .4byte _0814D8DA - .4byte _0814D8E4 - .4byte _0814D8FA - .4byte _0814D906 - .4byte _0814D962 - .4byte _0814D9A2 - .4byte _0814D9B2 -_0814D8D4: - bl LinkRfu_SetRfuFuncToSend6600 - b _0814D9BA -_0814D8DA: - bl IsLinkTaskFinished - lsls r0, 24 - cmp r0, 0 - beq _0814D9C0 -_0814D8E4: - movs r0, 0x1 - negs r0, r0 - movs r1, 0 - str r1, [sp] - movs r2, 0 - movs r3, 0x10 - bl BeginNormalPaletteFade - bl UpdatePaletteFade - b _0814D9BA -_0814D8FA: - bl UpdatePaletteFade - lsls r0, 24 - cmp r0, 0 - beq _0814D9BA - b _0814D9C0 -_0814D906: - movs r4, 0x20 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x1 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x2 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - str r4, [sp] - str r4, [sp, 0x4] - movs r0, 0x3 - movs r1, 0 - movs r2, 0 - movs r3, 0 - bl FillBgTilemapBufferRect_Palette0 - movs r0, 0 - bl CopyBgTilemapBufferToVram - movs r0, 0x1 - bl CopyBgTilemapBufferToVram - movs r0, 0x2 - bl CopyBgTilemapBufferToVram - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - b _0814D9BA -_0814D962: - bl FreeAllWindowBuffers - movs r0, 0 - bl HideBg - movs r0, 0 - bl UnsetBgTilemapBuffer - movs r0, 0x1 - bl HideBg - movs r0, 0x1 - bl UnsetBgTilemapBuffer - movs r0, 0x2 - bl HideBg - movs r0, 0x2 - bl UnsetBgTilemapBuffer - movs r0, 0x3 - bl HideBg - movs r0, 0x3 - bl UnsetBgTilemapBuffer - movs r1, 0x82 - lsls r1, 5 - movs r0, 0 - bl ClearGpuRegBits - b _0814D9BA -_0814D9A2: - bl DestroyWirelessStatusIndicatorSprite - adds r0, r5, 0 - bl sub_814EF10 - bl DigitObjUtil_Teardown - b _0814D9BA -_0814D9B2: - movs r0, 0 - strb r0, [r5, 0xC] - movs r0, 0x1 - b _0814D9C2 -_0814D9BA: - ldrb r0, [r5, 0xC] - adds r0, 0x1 - strb r0, [r5, 0xC] -_0814D9C0: - movs r0, 0 -_0814D9C2: - add sp, 0x8 - pop {r4,r5} - pop {r1} - bx r1 - thumb_func_end sub_814D888 - - thumb_func_start sub_814D9CC -sub_814D9CC: @ 814D9CC - push {r4,lr} - adds r4, r0, 0 - ldr r0, _0814DA00 @ =gSpriteCoordOffsetY - ldrh r1, [r4, 0x2C] - ldrh r2, [r4, 0x2A] - adds r1, r2 - strh r1, [r0] - negs r1, r1 - lsls r1, 16 - lsrs r1, 16 - movs r0, 0x16 - bl SetGpuReg - ldrh r0, [r4, 0x12] - cmp r0, 0x7 - bne _0814D9F8 - movs r1, 0x9C - lsls r1, 1 - adds r0, r4, r1 - ldrh r1, [r4, 0x28] - bl sub_814EAD4 -_0814D9F8: - movs r0, 0 - pop {r4} - pop {r1} - bx r1 - .align 2, 0 -_0814DA00: .4byte gSpriteCoordOffsetY - thumb_func_end sub_814D9CC - - thumb_func_start sub_814DA04 -sub_814DA04: @ 814DA04 - movs r1, 0 - ldr r2, _0814DA18 @ =0x0000ff98 - strh r2, [r0, 0x2A] - strh r1, [r0, 0x2C] - ldr r0, _0814DA1C @ =gSpriteCoordOffsetX - strh r1, [r0] - ldr r0, _0814DA20 @ =gSpriteCoordOffsetY - strh r2, [r0] - bx lr - .align 2, 0 -_0814DA18: .4byte 0x0000ff98 -_0814DA1C: .4byte gSpriteCoordOffsetX -_0814DA20: .4byte gSpriteCoordOffsetY - thumb_func_end sub_814DA04 - - thumb_func_start sub_814DA24 -sub_814DA24: @ 814DA24 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - mov r10, r0 - str r1, [sp] - movs r0, 0 - mov r9, r0 - mov r1, r10 - ldrb r1, [r1, 0x9] - cmp r9, r1 - bcc _0814DA42 - b _0814DB60 -_0814DA42: - ldr r1, _0814DB70 @ =gUnknown_846F2EC - mov r2, r9 - lsls r0, r2, 1 - adds r0, r1 - ldrh r2, [r0] - mov r1, r9 - lsls r0, r1, 5 - add r0, r10 - adds r0, 0xA4 - ldrh r3, [r0] - adds r3, 0x85 - lsls r3, 16 - lsrs r3, 16 - ldr r0, _0814DB74 @ =gUnknown_846F470 - adds r1, r2, 0 - bl AddItemIconObjectWithCustomObjectTemplate - lsls r0, 24 - lsrs r0, 24 - mov r2, r9 - lsls r3, r2, 2 - ldr r1, [sp] - adds r1, 0x38 - adds r6, r1, r3 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - ldr r0, _0814DB78 @ =gSprites - adds r1, r0 - str r1, [r6] - ldrb r0, [r1, 0x5] - movs r2, 0xC - orrs r0, r2 - strb r0, [r1, 0x5] - ldr r2, [r6] - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x80 - orrs r0, r1 - strb r0, [r2] - ldr r1, [r6] - ldr r0, [sp] - adds r0, 0xC - adds r0, r3 - mov r8, r0 - ldr r0, [r0] - ldrh r0, [r0, 0x8] - adds r0, 0x78 - strh r0, [r1, 0x20] - ldr r1, [r6] - ldr r0, _0814DB7C @ =0x0000fff0 - strh r0, [r1, 0x22] - ldr r3, [r6] - adds r5, r3, 0 - adds r5, 0x2E - movs r0, 0x80 - lsls r0, 2 - strh r0, [r5, 0x2] - movs r0, 0x20 - strh r0, [r5, 0x4] - movs r0, 0x70 - strh r0, [r5, 0xE] - mov r2, r8 - ldr r1, [r2] - ldrh r0, [r1, 0xA] - ldrh r1, [r1, 0x8] - subs r0, r1 - lsls r0, 16 - asrs r1, r0, 16 - adds r0, r1, 0 - cmp r1, 0 - bge _0814DAD4 - adds r0, r1, 0x3 -_0814DAD4: - asrs r0, 2 - strh r0, [r5, 0xC] - lsls r0, r1, 23 - lsrs r7, r0, 16 - movs r2, 0x80 - lsls r2, 2 - adds r2, 0x20 - lsrs r2, 1 - movs r0, 0x7 - movs r1, 0xFE - lsls r1, 6 - str r3, [sp, 0x4] - bl sub_80D8B40 - adds r4, r0, 0 - ldr r0, [r6] - ldrh r0, [r0, 0x20] - lsls r0, 7 - ldr r3, [sp, 0x4] - strh r0, [r3, 0x2E] - lsls r1, r7, 16 - asrs r1, 16 - lsls r4, 16 - asrs r4, 16 - movs r0, 0x7 - adds r2, r4, 0 - bl sub_80D8B40 - strh r0, [r5, 0x6] - movs r0, 0x7 - adds r1, r4, 0 - movs r2, 0x55 - bl sub_80D8ABC - adds r2, r0, 0 - movs r0, 0 - strh r0, [r5, 0x8] - lsls r2, 16 - asrs r2, 16 - movs r0, 0x7 - movs r1, 0xFE - lsls r1, 6 - bl sub_80D8B40 - strh r0, [r5, 0xA] - ldrh r0, [r5, 0xE] - ldr r2, _0814DB80 @ =0xffff8000 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r5, 0xE] - mov r1, r8 - ldr r0, [r1] - movs r2, 0x8 - ldrsh r0, [r0, r2] - cmp r0, 0 - bge _0814DB4C - ldr r0, [r6] - movs r1, 0x1 - bl StartSpriteAffineAnim -_0814DB4C: - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - mov r0, r10 - ldrb r0, [r0, 0x9] - cmp r9, r0 - bcs _0814DB60 - b _0814DA42 -_0814DB60: - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814DB70: .4byte gUnknown_846F2EC -_0814DB74: .4byte gUnknown_846F470 -_0814DB78: .4byte gSprites -_0814DB7C: .4byte 0x0000fff0 -_0814DB80: .4byte 0xffff8000 - thumb_func_end sub_814DA24 - - thumb_func_start sub_814DB84 -sub_814DB84: @ 814DB84 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r5, 0 - adds r4, 0x2E - ldrh r0, [r4, 0x4] - ldrh r1, [r4, 0x2] - adds r0, r1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 24 - ldrh r2, [r5, 0x26] - adds r0, r2 - strh r0, [r5, 0x26] - movs r1, 0xE - ldrsh r0, [r4, r1] - movs r6, 0x80 - lsls r6, 8 - ands r0, r6 - cmp r0, 0 - beq _0814DBEA - ldrh r0, [r4, 0x6] - ldrh r2, [r5, 0x2E] - adds r0, r2 - strh r0, [r5, 0x2E] - ldrh r0, [r4, 0xA] - ldrh r1, [r4, 0x8] - adds r0, r1 - strh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 23 - movs r2, 0xC - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r5, 0x24] - movs r1, 0xE - ldrsh r0, [r4, r1] - ands r0, r6 - cmp r0, 0 - beq _0814DBEA - ldrh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 23 - cmp r0, 0x7E - ble _0814DBEA - movs r0, 0 - strh r0, [r5, 0x24] - ldrh r1, [r4, 0xE] - ldr r0, _0814DC1C @ =0x00007fff - ands r0, r1 - strh r0, [r4, 0xE] -_0814DBEA: - ldrh r0, [r4] - lsls r0, 16 - asrs r0, 23 - strh r0, [r5, 0x20] - movs r2, 0x22 - ldrsh r1, [r5, r2] - movs r2, 0x26 - ldrsh r0, [r5, r2] - adds r1, r0 - ldrh r2, [r4, 0xE] - ldr r0, _0814DC1C @ =0x00007fff - ands r0, r2 - cmp r1, r0 - blt _0814DC16 - ldr r0, _0814DC20 @ =SpriteCallbackDummy - str r0, [r5, 0x1C] - adds r0, r5, 0 - bl FreeSpriteOamMatrix - adds r0, r5, 0 - bl DestroySprite -_0814DC16: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0814DC1C: .4byte 0x00007fff -_0814DC20: .4byte SpriteCallbackDummy - thumb_func_end sub_814DB84 - - thumb_func_start sub_814DC24 -sub_814DC24: @ 814DC24 - push {r4-r7,lr} - adds r6, r0, 0 - movs r5, 0 - ldrb r0, [r6, 0x9] - cmp r5, r0 - bcs _0814DC50 - ldr r7, _0814DC58 @ =gUnknown_846F2EC -_0814DC32: - lsls r0, r5, 1 - adds r0, r7 - ldrh r4, [r0] - adds r0, r4, 0 - bl FreeSpritePaletteByTag - adds r0, r4, 0 - bl FreeSpriteTilesByTag - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r6, 0x9] - cmp r5, r0 - bcc _0814DC32 -_0814DC50: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814DC58: .4byte gUnknown_846F2EC - thumb_func_end sub_814DC24 - - thumb_func_start sub_814DC5C -sub_814DC5C: @ 814DC5C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x10 - adds r6, r0, 0 - str r1, [sp] - movs r0, 0 - str r0, [sp, 0x4] - movs r1, 0x4E - adds r1, r6 - mov r10, r1 - mov r9, r0 - ldrb r2, [r6, 0x9] - cmp r0, r2 - bcs _0814DD2A - ldr r7, _0814DCC0 @ =gUnknown_846F2D0 -_0814DC80: - mov r3, r10 - ldrh r0, [r3, 0xA] - mov r4, r9 - lsls r1, r4, 1 - add r1, r9 - asrs r0, r1 - lsls r0, 16 - movs r1, 0xE0 - lsls r1, 11 - ands r1, r0 - lsrs r1, 16 - mov r8, r1 - cmp r1, 0 - beq _0814DD1A - ldr r0, [sp, 0x4] - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x4] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0814DCC4 - lsls r4, 2 - ldr r5, [sp] - adds r5, 0x24 - adds r0, r5, r4 - ldr r0, [r0] - movs r1, 0x1 - bl StartSpriteAnim - b _0814DCD6 - .align 2, 0 -_0814DCC0: .4byte gUnknown_846F2D0 -_0814DCC4: - mov r0, r9 - lsls r4, r0, 2 - ldr r5, [sp] - adds r5, 0x24 - adds r0, r5, r4 - ldr r0, [r0] - movs r1, 0 - bl StartSpriteAnim -_0814DCD6: - adds r3, r5, r4 - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - movs r4, 0x5 - negs r4, r4 - adds r1, r4, 0 - ands r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - subs r4, 0x3C - adds r1, r4, 0 - ands r0, r1 - strb r0, [r2] - ldr r2, [r3] - movs r0, 0x3 - mov r1, r8 - ands r1, r0 - mov r8, r1 - subs r1, 0x1 - lsls r1, 1 - adds r0, r1, r7 - ldrb r0, [r0] - lsls r0, 24 - asrs r0, 24 - strh r0, [r2, 0x24] - ldr r2, [r3] - ldr r3, _0814DD38 @ =gUnknown_846F2D0 + 1 - adds r1, r3 - movs r0, 0 - ldrsb r0, [r1, r0] - strh r0, [r2, 0x26] -_0814DD1A: - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldrb r4, [r6, 0x9] - cmp r9, r4 - bcc _0814DC80 -_0814DD2A: - ldr r0, [sp, 0x4] - cmp r0, 0 - bne _0814DD3C - adds r2, r6, 0 - adds r2, 0x25 - ldrb r1, [r2] - b _0814DE18 - .align 2, 0 -_0814DD38: .4byte gUnknown_846F2D0 + 1 -_0814DD3C: - ldrh r0, [r6, 0x28] - movs r1, 0x3 - bl __umodsi3 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - mov r1, r8 - str r1, [sp, 0x8] - movs r2, 0 - mov r9, r2 - mov r3, r10 - ldrh r1, [r3, 0xC] - lsls r0, r1, 1 - adds r0, 0x3 - adds r6, 0x25 - str r6, [sp, 0xC] - adds r3, r1, 0 - cmp r9, r0 - bge _0814DE0C -_0814DD64: - mov r4, r9 - lsls r1, r4, 2 - ldr r0, [sp] - adds r0, 0x4C - adds r7, r0, r1 - ldr r2, [r7] - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0814DDFA - ldr r0, _0814DDD0 @ =sub_814F0D8 - str r0, [r2, 0x1C] - lsls r1, r4, 1 - ldr r3, _0814DDD4 @ =gUnknown_846F2D6 - adds r0, r1, r3 - movs r4, 0 - ldrsb r4, [r0, r4] - adds r0, r4, 0 - adds r0, 0x78 - strh r0, [r2, 0x20] - ldr r2, [r7] - ldr r0, _0814DDD8 @ =gUnknown_846F2D6 + 1 - adds r1, r0 - movs r6, 0 - ldrsb r6, [r1, r6] - mov r1, r8 - lsls r0, r1, 2 - subs r0, 0x88 - subs r0, r6, r0 - strh r0, [r2, 0x22] - ldr r5, [r7] - ldr r2, [sp, 0x8] - lsls r1, r2, 2 - adds r0, r4, 0 - bl __divsi3 - adds r4, r0 - strh r4, [r5, 0x24] - ldr r0, [r7] - strh r6, [r0, 0x26] - mov r3, r10 - ldrb r1, [r3, 0x4] - movs r0, 0x2 - ands r0, r1 - cmp r0, 0 - beq _0814DDDC - ldr r0, [r7] - movs r1, 0x1 - bl StartSpriteAnim - b _0814DDE4 - .align 2, 0 -_0814DDD0: .4byte sub_814F0D8 -_0814DDD4: .4byte gUnknown_846F2D6 -_0814DDD8: .4byte gUnknown_846F2D6 + 1 -_0814DDDC: - ldr r0, [r7] - movs r1, 0 - bl StartSpriteAnim -_0814DDE4: - mov r0, r8 - adds r0, 0x1 - lsls r0, 16 - lsrs r0, 16 - mov r8, r0 - mov r4, r10 - ldrh r3, [r4, 0xC] - cmp r0, 0x3 - bls _0814DDFA - movs r0, 0 - mov r8, r0 -_0814DDFA: - mov r0, r9 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r0, r3, 1 - adds r0, 0x3 - cmp r9, r0 - blt _0814DD64 -_0814DE0C: - ldr r2, [sp, 0xC] - ldrb r1, [r2] - movs r0, 0x4 - ands r0, r1 - cmp r0, 0 - beq _0814DE22 -_0814DE18: - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - b _0814DE40 -_0814DE22: - ldr r3, [sp, 0x4] - cmp r3, 0x1 - bne _0814DE30 - movs r0, 0x47 - bl PlaySE - b _0814DE36 -_0814DE30: - movs r0, 0x46 - bl PlaySE -_0814DE36: - ldr r4, [sp, 0xC] - ldrb r0, [r4] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r4] -_0814DE40: - add sp, 0x10 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_814DC5C - - thumb_func_start sub_814DE50 -sub_814DE50: @ 814DE50 - push {r4-r7,lr} - adds r5, r0, 0 - adds r6, r1, 0 - movs r2, 0 - ldrb r0, [r5, 0x9] - cmp r2, r0 - bcs _0814DE82 - adds r4, r6, 0 - adds r4, 0x24 - movs r7, 0x4 - adds r3, r0, 0 -_0814DE66: - lsls r0, r2, 2 - adds r0, r4, r0 - ldr r0, [r0] - adds r0, 0x3E - ldrb r1, [r0] - adds r0, r7, 0 - ands r0, r1 - cmp r0, 0 - beq _0814DE9C - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, r3 - bcc _0814DE66 -_0814DE82: - movs r2, 0 - adds r3, r6, 0 - adds r3, 0x4C - movs r4, 0x4 -_0814DE8A: - lsls r0, r2, 2 - adds r0, r3, r0 - ldr r0, [r0] - adds r0, 0x3E - ldrb r1, [r0] - adds r0, r4, 0 - ands r0, r1 - cmp r0, 0 - bne _0814DEA0 -_0814DE9C: - movs r0, 0 - b _0814DEB8 -_0814DEA0: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0xA - bls _0814DE8A - movs r1, 0x2C - ldrsh r0, [r5, r1] - cmp r0, 0 - beq _0814DEB6 - movs r0, 0 - strh r0, [r5, 0x2C] -_0814DEB6: - movs r0, 0x1 -_0814DEB8: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_814DE50 - - thumb_func_start sub_814DEC0 -sub_814DEC0: @ 814DEC0 - push {r4-r7,lr} - adds r6, r0, 0 - lsls r4, r1, 16 - lsrs r4, 16 - movs r7, 0 - movs r5, 0xE1 - lsls r5, 4 - adds r0, r4, 0 - adds r1, r5, 0 - bl __udivsi3 - strh r0, [r6, 0x4] - adds r0, r4, 0 - adds r1, r5, 0 - bl __umodsi3 - lsls r0, 16 - lsrs r0, 16 - movs r1, 0x3C - bl __udivsi3 - strh r0, [r6, 0x6] - adds r0, r4, 0 - movs r1, 0x3C - bl __umodsi3 - lsls r0, 24 - asrs r0, 16 - movs r1, 0x4 - bl sub_80D8AA0 - adds r2, r7, 0 - lsls r0, 16 - asrs r3, r0, 16 - movs r0, 0x7 - mov r12, r0 - ldr r5, _0814DF3C @ =gUnknown_846E450 - movs r4, 0x1 -_0814DF0C: - mov r0, r12 - subs r1, r0, r2 - adds r0, r3, 0 - asrs r0, r1 - ands r0, r4 - cmp r0, 0 - beq _0814DF22 - lsls r0, r2, 2 - adds r0, r5 - ldr r0, [r0] - adds r7, r0 -_0814DF22: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x7 - bls _0814DF0C - ldr r1, _0814DF40 @ =1000000 - adds r0, r7, 0 - bl __udivsi3 - strh r0, [r6, 0x8] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814DF3C: .4byte gUnknown_846E450 -_0814DF40: .4byte 1000000 - thumb_func_end sub_814DEC0 - - thumb_func_start sub_814DF44 -sub_814DF44: @ 814DF44 - push {r4-r6,lr} - mov r6, r8 - push {r6} - sub sp, 0xC - adds r6, r0, 0 - adds r4, r1, 0 - adds r5, r2, 0 - mov r8, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r4, 24 - lsrs r4, 24 - lsls r5, 24 - lsrs r5, 24 - movs r2, 0x1 - negs r2, r2 - movs r0, 0x2 - mov r1, r8 - bl GetStringWidth - lsls r4, 2 - lsrs r0, 1 - subs r4, r0 - lsls r4, 24 - lsrs r4, 24 - lsls r0, r5, 1 - adds r0, r5 - ldr r1, _0814DFA0 @ =gUnknown_846E3DC - adds r0, r1 - str r0, [sp] - movs r0, 0 - str r0, [sp, 0x4] - mov r0, r8 - str r0, [sp, 0x8] - adds r0, r6, 0 - movs r1, 0x2 - adds r2, r4, 0 - movs r3, 0 - bl AddTextPrinterParameterized3 - add sp, 0xC - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0814DFA0: .4byte gUnknown_846E3DC - thumb_func_end sub_814DF44 - - thumb_func_start sub_814DFA4 -sub_814DFA4: @ 814DFA4 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x38 - str r0, [sp, 0xC] - lsls r1, 24 - lsrs r1, 24 - str r1, [sp, 0x10] - lsls r2, 24 - lsrs r2, 24 - str r2, [sp, 0x14] - lsls r3, 24 - lsrs r3, 24 - str r3, [sp, 0x18] - movs r0, 0 - mov r8, r0 - movs r1, 0 - str r1, [sp, 0x1C] - movs r2, 0 - str r2, [sp, 0x20] - ldr r4, [sp, 0xC] - adds r4, 0x68 - str r4, [sp, 0x24] - ldr r0, [sp, 0xC] - ldrb r0, [r0, 0x9] - cmp r8, r0 - bcc _0814DFE0 - b _0814E30C -_0814DFE0: - ldr r1, [sp, 0x10] - lsls r1, 2 - str r1, [sp, 0x28] - movs r4, 0xDD - lsls r4, 1 - ldr r2, [sp, 0xC] - adds r4, r2, r4 - str r4, [sp, 0x2C] -_0814DFF0: - bl DynamicPlaceholderTextUtil_Reset - ldr r0, [sp, 0x10] - cmp r0, 0x1 - beq _0814E0E4 - cmp r0, 0x1 - bgt _0814E00A - cmp r0, 0 - beq _0814E01A - mov r1, r8 - lsls r1, 3 - mov r9, r1 - b _0814E0C8 -_0814E00A: - ldr r0, [sp, 0x10] - cmp r0, 0x2 - bne _0814E012 - b _0814E200 -_0814E012: - mov r1, r8 - lsls r1, 3 - mov r9, r1 - b _0814E0C8 -_0814E01A: - ldr r0, [sp, 0x24] - adds r0, 0x20 - add r0, r8 - ldrb r0, [r0] - str r0, [sp, 0x1C] - mov r0, r8 - lsls r3, r0, 1 - ldr r2, [sp, 0x24] - adds r2, 0xC - cmp r0, 0 - beq _0814E048 - adds r0, r2, r3 - mov r1, r8 - subs r1, 0x1 - lsls r1, 1 - adds r1, r2, r1 - ldrh r0, [r0] - ldrh r1, [r1] - cmp r0, r1 - beq _0814E048 - mov r4, r8 - adds r1, r4, 0 - str r1, [sp, 0x20] -_0814E048: - ldr r1, [sp, 0x28] - ldr r4, [sp, 0x10] - adds r0, r1, r4 - lsls r0, 1 - adds r0, r3, r0 - adds r0, r2, r0 - ldrh r1, [r0] - ldr r0, _0814E0D8 @ =gStringVar1 - movs r2, 0x1 - movs r3, 0x4 - bl ConvertIntToDecimalStringN - ldr r0, _0814E0DC @ =gUnknown_846F4B8 - ldr r1, [sp, 0x28] - adds r0, r1, r0 - ldr r5, [r0] - movs r0, 0x2 - adds r1, r5, 0 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - ldr r2, [sp, 0x14] - subs r0, r2, r0 - subs r0, 0x4 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r4, [sp, 0x2C] - ldrb r0, [r4] - mov r1, r8 - lsls r6, r1, 3 - subs r4, r6, r1 - lsls r4, 1 - ldr r2, [sp, 0x18] - adds r4, r2, r4 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _0814E0E0 @ =gUnknown_846E3DC - str r1, [sp] - movs r2, 0 - str r2, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - adds r2, r7, 0 - adds r3, r4, 0 - bl AddTextPrinterParameterized3 - ldr r1, [sp, 0x2C] - ldrb r0, [r1] - adds r2, r7, 0 - subs r2, 0x18 - lsls r2, 24 - lsrs r2, 24 - ldr r1, _0814E0E0 @ =gUnknown_846E3DC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r1, _0814E0D8 @ =gStringVar1 - str r1, [sp, 0x8] - movs r1, 0x2 - adds r3, r4, 0 - bl AddTextPrinterParameterized3 - mov r9, r6 -_0814E0C8: - ldr r6, [sp, 0x20] - adds r6, 0xA2 - ldr r2, [sp, 0x1C] - lsls r5, r2, 5 - movs r4, 0x1 - add r4, r8 - mov r10, r4 - b _0814E27E - .align 2, 0 -_0814E0D8: .4byte gStringVar1 -_0814E0DC: .4byte gUnknown_846F4B8 -_0814E0E0: .4byte gUnknown_846E3DC -_0814E0E4: - ldr r0, [sp, 0x24] - add r0, r8 - adds r0, 0x28 - ldrb r0, [r0] - str r0, [sp, 0x1C] - mov r0, r8 - lsls r3, r0, 1 - ldr r2, [sp, 0x24] - adds r2, 0xC - cmp r0, 0 - beq _0814E116 - adds r0, r3, 0 - adds r0, 0xA - adds r0, r2, r0 - mov r4, r8 - lsls r1, r4, 1 - adds r1, 0x8 - adds r1, r2, r1 - ldrh r0, [r0] - ldrh r1, [r1] - cmp r0, r1 - beq _0814E116 - mov r1, r8 - adds r0, r1, 0 - str r0, [sp, 0x20] -_0814E116: - ldr r0, [sp, 0x28] - ldr r1, [sp, 0x10] - adds r4, r0, r1 - lsls r4, 1 - adds r4, r3, r4 - adds r4, r2, r4 - ldrh r1, [r4] - lsrs r1, 4 - ldr r0, _0814E1E4 @ =gStringVar1 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - movs r3, 0 - ldrb r0, [r4] - movs r7, 0xF - ands r7, r0 - movs r2, 0 - ldr r4, [sp, 0x10] - lsls r4, 2 - str r4, [sp, 0x34] - mov r0, r8 - lsls r0, 3 - mov r9, r0 - ldr r1, [sp, 0x14] - subs r1, 0x4 - str r1, [sp, 0x30] - ldr r6, [sp, 0x20] - adds r6, 0xA2 - ldr r4, [sp, 0x1C] - lsls r5, r4, 5 - movs r0, 0x1 - add r0, r8 - mov r10, r0 - movs r1, 0x1 - mov r12, r1 - ldr r4, _0814E1E8 @ =gUnknown_846E450 -_0814E160: - movs r0, 0x3 - subs r1, r0, r2 - adds r0, r7, 0 - asrs r0, r1 - mov r1, r12 - ands r0, r1 - cmp r0, 0 - beq _0814E178 - lsls r0, r2, 2 - adds r0, r4 - ldr r0, [r0] - adds r3, r0 -_0814E178: - adds r0, r2, 0x1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0x3 - bls _0814E160 - adds r0, r3, 0 - ldr r1, _0814E1EC @ =1000000 - bl __udivsi3 - lsls r0, 24 - lsrs r7, r0, 24 - ldr r0, _0814E1F0 @ =gStringVar2 - adds r1, r7, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, _0814E1F4 @ =gUnknown_846F4B8 - ldr r2, [sp, 0x34] - adds r0, r2, r0 - ldr r1, [r0] - ldr r0, _0814E1F8 @ =gStringVar4 - bl StringExpandPlaceholders - movs r0, 0x2 - ldr r1, _0814E1F8 @ =gStringVar4 - movs r2, 0 - bl GetStringWidth - adds r2, r0, 0 - ldr r4, [sp, 0x30] - subs r2, r4, r2 - lsls r2, 24 - lsrs r2, 24 - ldr r1, [sp, 0x2C] - ldrb r0, [r1] - mov r4, r9 - mov r1, r8 - subs r3, r4, r1 - lsls r3, 1 - ldr r4, [sp, 0x18] - adds r3, r4, r3 - lsls r3, 24 - lsrs r3, 24 - ldr r1, _0814E1FC @ =gUnknown_846E3DC - str r1, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r1, _0814E1F8 @ =gStringVar4 - str r1, [sp, 0x8] - movs r1, 0x2 - bl AddTextPrinterParameterized3 - b _0814E27E - .align 2, 0 -_0814E1E4: .4byte gStringVar1 -_0814E1E8: .4byte gUnknown_846E450 -_0814E1EC: .4byte 1000000 -_0814E1F0: .4byte gStringVar2 -_0814E1F4: .4byte gUnknown_846F4B8 -_0814E1F8: .4byte gStringVar4 -_0814E1FC: .4byte gUnknown_846E3DC -_0814E200: - mov r2, r8 - str r2, [sp, 0x1C] - mov r0, r8 - adds r4, r0, 0 - str r4, [sp, 0x20] - lsls r5, r0, 5 - ldr r1, [sp, 0xC] - adds r0, r1, r5 - adds r0, 0xA4 - ldrb r2, [r0] - cmp r2, 0x2B - bls _0814E21A - movs r2, 0 -_0814E21A: - lsls r1, r2, 3 - subs r1, r2 - lsls r1, 2 - ldr r0, _0814E294 @ =gBerries - adds r1, r0 - ldr r0, _0814E298 @ =gStringVar1 - bl StringCopy - ldr r0, _0814E29C @ =gUnknown_846F4B8 - ldr r1, [r0, 0x8] - ldr r0, _0814E2A0 @ =gStringVar4 - bl StringExpandPlaceholders - movs r0, 0x2 - ldr r1, _0814E2A0 @ =gStringVar4 - movs r2, 0x1 - negs r2, r2 - bl GetStringWidth - adds r2, r0, 0 - ldr r4, [sp, 0x14] - subs r2, r4, r2 - subs r2, 0x4 - lsls r2, 24 - lsrs r2, 24 - ldr r1, [sp, 0x2C] - ldrb r0, [r1] - mov r1, r8 - lsls r4, r1, 3 - subs r3, r4, r1 - lsls r3, 1 - ldr r1, [sp, 0x18] - adds r3, r1, r3 - lsls r3, 24 - lsrs r3, 24 - ldr r1, _0814E2A4 @ =gUnknown_846E3DC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - ldr r1, _0814E2A0 @ =gStringVar4 - str r1, [sp, 0x8] - movs r1, 0x2 - bl AddTextPrinterParameterized3 - mov r9, r4 - mov r6, r8 - adds r6, 0xA2 - movs r2, 0x1 - add r2, r8 - mov r10, r2 -_0814E27E: - ldr r0, [sp, 0x1C] - ldr r4, [sp, 0xC] - ldrb r4, [r4, 0x8] - cmp r0, r4 - bne _0814E2B0 - ldr r0, _0814E2A8 @ =gStringVar3 - ldr r1, _0814E2AC @ =gUnknown_841D020 - bl StringCopy - b _0814E2B8 - .align 2, 0 -_0814E294: .4byte gBerries -_0814E298: .4byte gStringVar1 -_0814E29C: .4byte gUnknown_846F4B8 -_0814E2A0: .4byte gStringVar4 -_0814E2A4: .4byte gUnknown_846E3DC -_0814E2A8: .4byte gStringVar3 -_0814E2AC: .4byte gUnknown_841D020 -_0814E2B0: - ldr r0, _0814E31C @ =gStringVar3 - ldr r1, _0814E320 @ =gUnknown_841D02C - bl StringCopy -_0814E2B8: - ldr r4, _0814E31C @ =gStringVar3 - strb r6, [r4] - adds r1, r5, 0 - adds r1, 0x98 - ldr r0, [sp, 0xC] - adds r1, r0, r1 - movs r0, 0 - bl DynamicPlaceholderTextUtil_SetPlaceholderPtr - ldr r0, _0814E324 @ =gStringVar4 - adds r1, r4, 0 - bl DynamicPlaceholderTextUtil_ExpandPlaceholders - ldr r1, [sp, 0x2C] - ldrb r0, [r1] - mov r2, r9 - mov r4, r8 - subs r3, r2, r4 - lsls r3, 1 - ldr r1, [sp, 0x18] - adds r3, r1, r3 - lsls r3, 24 - lsrs r3, 24 - ldr r2, _0814E328 @ =gUnknown_846E3DC - str r2, [sp] - movs r4, 0 - str r4, [sp, 0x4] - ldr r1, _0814E324 @ =gStringVar4 - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x4 - bl AddTextPrinterParameterized3 - mov r2, r10 - lsls r0, r2, 24 - lsrs r0, 24 - mov r8, r0 - ldr r4, [sp, 0xC] - ldrb r4, [r4, 0x9] - cmp r8, r4 - bcs _0814E30C - b _0814DFF0 -_0814E30C: - add sp, 0x38 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814E31C: .4byte gStringVar3 -_0814E320: .4byte gUnknown_841D02C -_0814E324: .4byte gStringVar4 -_0814E328: .4byte gUnknown_846E3DC - thumb_func_end sub_814DFA4 - - thumb_func_start sub_814E32C -sub_814E32C: @ 814E32C - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1C - mov r8, r0 - movs r0, 0 - mov r10, r0 - movs r6, 0 - movs r1, 0 - str r1, [sp, 0xC] - mov r2, r8 - adds r2, 0x68 - str r2, [sp, 0x10] - movs r4, 0xDD - lsls r4, 1 - add r4, r8 - mov r9, r4 - ldrb r0, [r4] - movs r1, 0x4 - bl GetWindowAttribute - lsls r0, 27 - movs r1, 0xD6 - lsls r1, 24 - adds r0, r1 - lsrs r7, r0, 24 - movs r0, 0x9C - lsls r0, 1 - add r0, r8 - ldr r2, [sp, 0x10] - ldrh r1, [r2, 0x4] - bl sub_814DEC0 - ldrb r0, [r4] - ldr r4, _0814E560 @ =gUnknown_846E3DC - str r4, [sp] - str r6, [sp, 0x4] - ldr r1, _0814E564 @ =gUnknown_841D050 - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x2 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r4, _0814E568 @ =gUnknown_841D088 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - movs r1, 0xBE - subs r0, r1, r0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r2, r9 - ldrb r0, [r2] - ldr r1, _0814E560 @ =gUnknown_846E3DC - str r1, [sp] - mov r2, r10 - str r2, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - adds r0, r6, 0 - subs r0, 0x20 - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0x9F - lsls r0, 1 - add r0, r8 - movs r4, 0 - ldrsh r1, [r0, r4] - ldr r0, _0814E56C @ =gStringVar1 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, _0814E570 @ =gStringVar2 - movs r1, 0xA0 - lsls r1, 1 - add r1, r8 - movs r2, 0 - ldrsh r1, [r1, r2] - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r5, _0814E574 @ =gStringVar4 - ldr r1, _0814E578 @ =gUnknown_841D080 - adds r0, r5, 0 - bl StringExpandPlaceholders - mov r4, r9 - ldrb r0, [r4] - ldr r1, _0814E560 @ =gUnknown_846E3DC - str r1, [sp] - mov r2, r10 - str r2, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r4, _0814E57C @ =gUnknown_841D078 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - subs r1, r6, 0x3 - subs r1, r0 - lsls r1, 24 - lsrs r6, r1, 24 - mov r1, r9 - ldrb r0, [r1] - ldr r2, _0814E560 @ =gUnknown_846E3DC - str r2, [sp] - mov r1, r10 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - adds r0, r6, 0 - subs r0, 0x9 - lsls r0, 24 - lsrs r6, r0, 24 - movs r0, 0x9E - lsls r0, 1 - add r0, r8 - movs r2, 0 - ldrsh r1, [r0, r2] - ldr r0, _0814E56C @ =gStringVar1 - movs r2, 0x2 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - ldr r1, _0814E580 @ =gUnknown_841D074 - adds r0, r5, 0 - bl StringExpandPlaceholders - mov r4, r9 - ldrb r0, [r4] - ldr r1, _0814E560 @ =gUnknown_846E3DC - str r1, [sp] - mov r2, r10 - str r2, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - adds r0, r7, 0 - adds r0, 0xE - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r4] - ldr r4, _0814E560 @ =gUnknown_846E3DC - str r4, [sp] - mov r1, r10 - str r1, [sp, 0x4] - ldr r1, _0814E584 @ =gUnknown_841D058 - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x2 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r4, _0814E588 @ =gUnknown_841D098 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - movs r2, 0xBE - subs r0, r2, r0 - lsls r0, 24 - str r0, [sp, 0x18] - lsrs r6, r0, 24 - mov r1, r9 - ldrb r0, [r1] - ldr r2, _0814E560 @ =gUnknown_846E3DC - str r2, [sp] - mov r1, r10 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x3 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - mov r4, r8 - ldrb r2, [r4, 0x16] - ldrh r0, [r4, 0x16] - mov r12, r0 - movs r1, 0x7 - mov r9, r1 - movs r5, 0x1 - ldr r3, _0814E58C @ =gUnknown_846E450 -_0814E4CC: - mov r4, r9 - mov r0, r10 - subs r1, r4, r0 - adds r0, r2, 0 - asrs r0, r1 - ands r0, r5 - cmp r0, 0 - beq _0814E4EA - mov r1, r10 - lsls r0, r1, 2 - adds r0, r3 - ldr r0, [r0] - ldr r4, [sp, 0xC] - adds r4, r0 - str r4, [sp, 0xC] -_0814E4EA: - mov r0, r10 - adds r0, 0x1 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - cmp r0, 0x7 - bls _0814E4CC - ldr r0, _0814E56C @ =gStringVar1 - mov r2, r12 - lsrs r1, r2, 8 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, _0814E570 @ =gStringVar2 - ldr r1, _0814E590 @ =1000000 - ldr r0, [sp, 0xC] - bl __udivsi3 - adds r1, r0, 0 - adds r0, r4, 0 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r4, _0814E574 @ =gStringVar4 - ldr r1, _0814E594 @ =gUnknown_841D090 - adds r0, r4, 0 - bl StringExpandPlaceholders - adds r0, r6, 0 - subs r0, 0x26 - lsls r0, 24 - lsrs r6, r0, 24 - mov r0, r8 - adds r0, 0x25 - ldrb r1, [r0] - movs r0, 0x2 - ands r0, r1 - lsls r0, 24 - lsrs r2, r0, 24 - cmp r2, 0 - beq _0814E59C - movs r0, 0xDD - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - ldr r1, _0814E598 @ =gUnknown_846E3EB - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - b _0814E5B6 - .align 2, 0 -_0814E560: .4byte gUnknown_846E3DC -_0814E564: .4byte gUnknown_841D050 -_0814E568: .4byte gUnknown_841D088 -_0814E56C: .4byte gStringVar1 -_0814E570: .4byte gStringVar2 -_0814E574: .4byte gStringVar4 -_0814E578: .4byte gUnknown_841D080 -_0814E57C: .4byte gUnknown_841D078 -_0814E580: .4byte gUnknown_841D074 -_0814E584: .4byte gUnknown_841D058 -_0814E588: .4byte gUnknown_841D098 -_0814E58C: .4byte gUnknown_846E450 -_0814E590: .4byte 1000000 -_0814E594: .4byte gUnknown_841D090 -_0814E598: .4byte gUnknown_846E3EB -_0814E59C: - movs r0, 0xDD - lsls r0, 1 - add r0, r8 - ldrb r0, [r0] - ldr r1, _0814E630 @ =gUnknown_846E3DC - str r1, [sp] - str r2, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 -_0814E5B6: - adds r0, r7, 0 - adds r0, 0xE - lsls r0, 24 - lsrs r7, r0, 24 - movs r4, 0xDD - lsls r4, 1 - add r8, r4 - mov r1, r8 - ldrb r0, [r1] - ldr r2, _0814E630 @ =gUnknown_846E3DC - mov r9, r2 - str r2, [sp] - movs r5, 0 - str r5, [sp, 0x4] - ldr r1, _0814E634 @ =gUnknown_841D068 - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x2 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - ldr r0, _0814E638 @ =gStringVar1 - ldr r4, [sp, 0x10] - ldrh r1, [r4, 0x8] - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r4, _0814E63C @ =gStringVar4 - ldr r1, _0814E640 @ =gUnknown_841D0A4 - adds r0, r4, 0 - bl StringExpandPlaceholders - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - movs r1, 0xBE - subs r1, r0 - lsls r1, 24 - lsrs r6, r1, 24 - mov r1, r8 - ldrb r0, [r1] - mov r2, r9 - str r2, [sp] - str r5, [sp, 0x4] - str r4, [sp, 0x8] - movs r1, 0x2 - adds r2, r6, 0 - adds r3, r7, 0 - bl AddTextPrinterParameterized3 - add sp, 0x1C - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814E630: .4byte gUnknown_846E3DC -_0814E634: .4byte gUnknown_841D068 -_0814E638: .4byte gStringVar1 -_0814E63C: .4byte gStringVar4 -_0814E640: .4byte gUnknown_841D0A4 - thumb_func_end sub_814E32C - - thumb_func_start sub_814E644 -sub_814E644: @ 814E644 - push {r4-r6,lr} - sub sp, 0x8 - adds r4, r0, 0 - adds r6, r1, 0 - adds r0, r6, 0 - adds r0, 0x80 - ldrb r0, [r0] - cmp r0, 0x5 - bls _0814E658 - b _0814E7F8 -_0814E658: - lsls r0, 2 - ldr r1, _0814E664 @ =_0814E668 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_0814E664: .4byte _0814E668 - .align 2, 0 -_0814E668: - .4byte _0814E680 - .4byte _0814E6CC - .4byte _0814E6E0 - .4byte _0814E704 - .4byte _0814E7D8 - .4byte _0814E7E0 -_0814E680: - ldrb r0, [r4, 0x9] - subs r0, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - adds r0, r6, 0 - bl sub_814EB04 - ldrh r0, [r4, 0x12] - lsls r0, 3 - ldr r2, _0814E6A8 @ =gUnknown_846E3CC + 4 - mov r1, sp - adds r0, r2 - ldm r0!, {r2,r3} - stm r1!, {r2,r3} - ldrh r0, [r4, 0x12] - cmp r0, 0xD - bne _0814E6B0 - ldr r0, _0814E6AC @ =gUnknown_846E448 - adds r0, 0x4 - b _0814E6B2 - .align 2, 0 -_0814E6A8: .4byte gUnknown_846E3CC + 4 -_0814E6AC: .4byte gUnknown_846E448 -_0814E6B0: - ldr r0, _0814E6C8 @ =gUnknown_846E448 -_0814E6B2: - adds r0, r5, r0 - ldrb r1, [r0] - mov r0, sp - strb r1, [r0, 0x4] - mov r0, sp - bl AddWindow - adds r1, r6, 0 - adds r1, 0x82 - strb r0, [r1] - b _0814E7F8 - .align 2, 0 -_0814E6C8: .4byte gUnknown_846E448 -_0814E6CC: - adds r4, r6, 0 - adds r4, 0x82 - ldrb r0, [r4] - bl PutWindowTilemap - ldrb r0, [r4] - movs r1, 0 - bl FillWindowPixelBuffer - b _0814E7F8 -_0814E6E0: - adds r5, r6, 0 - adds r5, 0x82 - ldrb r0, [r5] - ldr r4, _0814E700 @ =0x0000021d - adds r1, r4, 0 - movs r2, 0xD0 - bl TextWindow_SetStdFrame0_WithPal - ldrb r0, [r5] - movs r1, 0 - adds r2, r4, 0 - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - b _0814E7F8 - .align 2, 0 -_0814E700: .4byte 0x0000021d -_0814E704: - ldrb r0, [r4, 0x9] - subs r0, 0x2 - lsls r0, 24 - lsrs r5, r0, 24 - ldrh r0, [r4, 0x12] - cmp r0, 0xC - beq _0814E764 - cmp r0, 0xC - bgt _0814E71C - cmp r0, 0xB - beq _0814E722 - b _0814E7F8 -_0814E71C: - cmp r0, 0xD - beq _0814E7B4 - b _0814E7F8 -_0814E722: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - ldr r3, _0814E75C @ =gUnknown_841D0A8 - movs r1, 0x16 - movs r2, 0x3 - bl sub_814DF44 - ldr r0, _0814E760 @ =gUnknown_846E448 - adds r0, r5, r0 - ldrb r3, [r0] - lsls r3, 3 - ldrb r1, [r4, 0x9] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 1 - subs r3, r0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0xB0 - bl sub_814DFA4 - adds r1, r6, 0 - adds r1, 0x80 - movs r0, 0x5 - b _0814E800 - .align 2, 0 -_0814E75C: .4byte gUnknown_841D0A8 -_0814E760: .4byte gUnknown_846E448 -_0814E764: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - ldr r2, _0814E7AC @ =gUnknown_846F4B8 - adds r1, r4, 0 - adds r1, 0x8F - ldrb r1, [r1] - adds r1, 0x3 - lsls r1, 2 - adds r1, r2 - ldr r3, [r1] - movs r1, 0x16 - movs r2, 0x4 - bl sub_814DF44 - ldr r0, _0814E7B0 @ =gUnknown_846E448 - adds r0, r5, r0 - ldrb r3, [r0] - lsls r3, 3 - ldrb r1, [r4, 0x9] - lsls r0, r1, 3 - subs r0, r1 - lsls r0, 1 - subs r3, r0 - lsls r3, 24 - lsrs r3, 24 - adds r0, r4, 0 - movs r1, 0x1 - movs r2, 0xB0 - bl sub_814DFA4 - adds r1, r6, 0 - adds r1, 0x80 - movs r0, 0x5 - b _0814E800 - .align 2, 0 -_0814E7AC: .4byte gUnknown_846F4B8 -_0814E7B0: .4byte gUnknown_846E448 -_0814E7B4: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - ldr r3, _0814E7D4 @ =gUnknown_841D0C0 - movs r1, 0x18 - movs r2, 0x3 - bl sub_814DF44 - adds r0, r4, 0 - movs r1, 0x2 - movs r2, 0xC0 - movs r3, 0x10 - bl sub_814DFA4 - b _0814E7F8 - .align 2, 0 -_0814E7D4: .4byte gUnknown_841D0C0 -_0814E7D8: - adds r0, r4, 0 - bl sub_814E32C - b _0814E7F8 -_0814E7E0: - adds r0, r6, 0 - adds r0, 0x82 - ldrb r0, [r0] - movs r1, 0x3 - bl CopyWindowToVram - adds r1, r6, 0 - adds r1, 0x80 - movs r0, 0 - strb r0, [r1] - movs r0, 0x1 - b _0814E804 -_0814E7F8: - adds r1, r6, 0 - adds r1, 0x80 - ldrb r0, [r1] - adds r0, 0x1 -_0814E800: - strb r0, [r1] - movs r0, 0 -_0814E804: - add sp, 0x8 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_814E644 - - thumb_func_start sub_814E80C -sub_814E80C: @ 814E80C - push {r4,r5,lr} - adds r4, r0, 0 - movs r0, 0xDD - lsls r0, 1 - adds r5, r4, r0 - ldrb r0, [r5] - movs r1, 0x1 - bl ClearStdWindowAndFrameToTransparent - ldrb r0, [r5] - bl RemoveWindow - adds r0, r4, 0 - bl sub_814EBB0 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_814E80C - - thumb_func_start sub_814E830 -sub_814E830: @ 814E830 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x14 - lsls r0, 24 - lsrs r4, r0, 24 - movs r0, 0 - mov r9, r0 - mov r10, r0 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _0814E864 @ =gTasks+0x8 - adds r7, r0, r1 - movs r1, 0 - ldrsh r0, [r7, r1] - cmp r0, 0x1 - beq _0814E8B0 - cmp r0, 0x1 - bgt _0814E868 - cmp r0, 0 - beq _0814E876 - b _0814EA66 - .align 2, 0 -_0814E864: .4byte gTasks+0x8 -_0814E868: - cmp r0, 0x2 - bne _0814E86E - b _0814EA2C -_0814E86E: - cmp r0, 0x3 - bne _0814E874 - b _0814EA40 -_0814E874: - b _0814EA66 -_0814E876: - ldr r0, _0814E8A8 @ =gUnknown_846E3F0 - bl AddWindow - strh r0, [r7, 0x2] - lsls r0, 24 - lsrs r0, 24 - bl PutWindowTilemap - ldrb r0, [r7, 0x2] - movs r1, 0 - bl FillWindowPixelBuffer - ldrb r0, [r7, 0x2] - ldr r4, _0814E8AC @ =0x0000021d - adds r1, r4, 0 - movs r2, 0xD0 - bl TextWindow_SetStdFrame0_WithPal - ldrb r0, [r7, 0x2] - movs r1, 0 - adds r2, r4, 0 - movs r3, 0xD - bl DrawStdFrameWithCustomTileAndPalette - b _0814EA66 - .align 2, 0 -_0814E8A8: .4byte gUnknown_846E3F0 -_0814E8AC: .4byte 0x0000021d -_0814E8B0: - ldr r5, _0814E9FC @ =gUnknown_841D118 - movs r0, 0x1 - negs r0, r0 - mov r8, r0 - movs r0, 0x2 - adds r1, r5, 0 - mov r2, r8 - bl GetStringWidth - lsrs r0, 1 - movs r4, 0x60 - subs r0, r4, r0 - lsls r0, 24 - lsrs r2, r0, 24 - ldrb r0, [r7, 0x2] - ldr r6, _0814EA00 @ =gUnknown_846E3E5 - str r6, [sp] - mov r1, r9 - str r1, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - movs r3, 0x2 - bl AddTextPrinterParameterized3 - ldr r5, _0814EA04 @ =gUnknown_841D124 - movs r0, 0x2 - adds r1, r5, 0 - mov r2, r8 - bl GetStringWidth - lsrs r0, 1 - subs r4, r0 - lsls r4, 24 - lsrs r2, r4, 24 - ldrb r0, [r7, 0x2] - str r6, [sp] - mov r1, r9 - str r1, [sp, 0x4] - str r5, [sp, 0x8] - movs r1, 0x2 - movs r3, 0x12 - bl AddTextPrinterParameterized3 - movs r0, 0x2A - str r0, [sp, 0xC] - ldr r1, _0814EA08 @ =gStringVar4 - mov r8, r1 -_0814E90E: - mov r1, r9 - adds r1, 0x2 - ldr r0, _0814EA0C @ =gStringVar1 - movs r2, 0 - movs r3, 0x1 - bl ConvertIntToDecimalStringN - mov r0, r8 - ldr r1, _0814EA10 @ =gUnknown_841D13C - bl StringExpandPlaceholders - ldrb r0, [r7, 0x2] - ldr r1, _0814EA14 @ =gUnknown_846E3DC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - mov r1, r8 - str r1, [sp, 0x8] - movs r1, 0x2 - movs r2, 0x4 - ldr r3, [sp, 0xC] - bl AddTextPrinterParameterized3 - movs r3, 0 - mov r0, r9 - lsls r4, r0, 1 - ldr r1, [sp, 0xC] - adds r1, 0xE - str r1, [sp, 0x10] - movs r0, 0x1 - add r9, r0 - adds r0, r4, r7 - ldrh r0, [r0, 0x4] - movs r2, 0xFF - ands r2, r0 - movs r6, 0x1 - ldr r5, _0814EA18 @ =gUnknown_846E450 -_0814E958: - movs r0, 0x7 - subs r1, r0, r3 - adds r0, r2, 0 - asrs r0, r1 - ands r0, r6 - cmp r0, 0 - beq _0814E96E - lsls r0, r3, 2 - adds r0, r5 - ldr r0, [r0] - add r10, r0 -_0814E96E: - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x7 - bls _0814E958 - adds r0, r4, r7 - ldrh r1, [r0, 0x4] - lsrs r1, 8 - ldr r0, _0814EA0C @ =gStringVar1 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - mov r0, r10 - ldr r1, _0814EA1C @ =1000000 - bl __udivsi3 - adds r1, r0, 0 - ldr r0, _0814EA20 @ =gStringVar2 - movs r2, 0x2 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - mov r0, r8 - ldr r1, _0814EA24 @ =gUnknown_841D090 - bl StringExpandPlaceholders - movs r1, 0 - strb r1, [r0] - adds r0, 0x1 - ldr r1, _0814EA28 @ =gUnknown_841D098 - bl StringCopy - movs r0, 0x3 - mov r1, r8 - movs r2, 0 - bl GetStringWidth - movs r1, 0xC0 - subs r1, r0 - lsls r1, 24 - lsrs r2, r1, 24 - ldrb r0, [r7, 0x2] - ldr r1, _0814EA14 @ =gUnknown_846E3DC - str r1, [sp] - movs r1, 0 - str r1, [sp, 0x4] - mov r1, r8 - str r1, [sp, 0x8] - movs r1, 0x3 - ldr r3, [sp, 0xC] - bl AddTextPrinterParameterized3 - ldr r1, [sp, 0x10] - lsls r0, r1, 24 - lsrs r0, 24 - str r0, [sp, 0xC] - movs r0, 0 - mov r10, r0 - mov r1, r9 - lsls r0, r1, 24 - lsrs r0, 24 - mov r9, r0 - cmp r0, 0x3 - bls _0814E90E - ldrb r0, [r7, 0x2] - movs r1, 0x3 - bl CopyWindowToVram - b _0814EA66 - .align 2, 0 -_0814E9FC: .4byte gUnknown_841D118 -_0814EA00: .4byte gUnknown_846E3E5 -_0814EA04: .4byte gUnknown_841D124 -_0814EA08: .4byte gStringVar4 -_0814EA0C: .4byte gStringVar1 -_0814EA10: .4byte gUnknown_841D13C -_0814EA14: .4byte gUnknown_846E3DC -_0814EA18: .4byte gUnknown_846E450 -_0814EA1C: .4byte 1000000 -_0814EA20: .4byte gStringVar2 -_0814EA24: .4byte gUnknown_841D090 -_0814EA28: .4byte gUnknown_841D098 -_0814EA2C: - ldr r0, _0814EA3C @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x3 - ands r0, r1 - cmp r0, 0 - bne _0814EA66 - b _0814EA6C - .align 2, 0 -_0814EA3C: .4byte gMain -_0814EA40: - ldrb r0, [r7, 0x2] - movs r1, 0x1 - bl ClearStdWindowAndFrameToTransparent - ldrb r0, [r7, 0x2] - bl ClearWindowTilemap - ldrb r0, [r7, 0x2] - bl RemoveWindow - adds r0, r4, 0 - bl DestroyTask - bl EnableBothScriptContexts - bl ScriptContext2_Disable - mov r0, r9 - b _0814EA6A -_0814EA66: - ldrh r0, [r7] - adds r0, 0x1 -_0814EA6A: - strh r0, [r7] -_0814EA6C: - add sp, 0x14 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_814E830 - - thumb_func_start ShowBerryCrushRankings -ShowBerryCrushRankings: @ 814EA7C - push {lr} - bl ScriptContext2_Enable - ldr r0, _0814EAC4 @ =sub_814E830 - movs r1, 0 - bl CreateTask - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0814EAC8 @ =gTasks - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r2 - ldr r0, _0814EACC @ =gSaveBlock2Ptr - ldr r2, [r0] - movs r3, 0xAF - lsls r3, 4 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0xC] - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0xE] - adds r3, 0x2 - adds r0, r2, r3 - ldrh r0, [r0] - strh r0, [r1, 0x10] - ldr r0, _0814EAD0 @ =0x00000af6 - adds r2, r0 - ldrh r0, [r2] - strh r0, [r1, 0x12] - pop {r0} - bx r0 - .align 2, 0 -_0814EAC4: .4byte sub_814E830 -_0814EAC8: .4byte gTasks -_0814EACC: .4byte gSaveBlock2Ptr -_0814EAD0: .4byte 0x00000af6 - thumb_func_end ShowBerryCrushRankings - - thumb_func_start sub_814EAD4 -sub_814EAD4: @ 814EAD4 - push {r4,lr} - adds r4, r0, 0 - lsls r1, 16 - lsrs r1, 16 - bl sub_814DEC0 - movs r0, 0x4 - ldrsh r1, [r4, r0] - movs r0, 0 - bl DigitObjUtil_PrintNumOn - movs r0, 0x6 - ldrsh r1, [r4, r0] - movs r0, 0x1 - bl DigitObjUtil_PrintNumOn - movs r0, 0x8 - ldrsh r1, [r4, r0] - movs r0, 0x2 - bl DigitObjUtil_PrintNumOn - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_814EAD4 - - thumb_func_start sub_814EB04 -sub_814EB04: @ 814EB04 - push {lr} - ldr r2, [r0, 0x78] - adds r2, 0x3E - ldrb r1, [r2] - movs r3, 0x4 - orrs r1, r3 - strb r1, [r2] - ldr r1, [r0, 0x7C] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r3 - strb r0, [r1] - movs r0, 0x2 - movs r1, 0x1 - bl DigitObjUtil_HideOrShow - movs r0, 0x1 - movs r1, 0x1 - bl DigitObjUtil_HideOrShow - movs r0, 0 - movs r1, 0x1 - bl DigitObjUtil_HideOrShow - pop {r0} - bx r0 - thumb_func_end sub_814EB04 - - thumb_func_start sub_814EB38 -sub_814EB38: @ 814EB38 - push {r4-r7,lr} - adds r5, r0, 0 - movs r6, 0 - ldrb r0, [r5, 0x9] - cmp r6, r0 - bcs _0814EB98 - ldr r7, _0814EBA0 @ =gUnknown_846F280 -_0814EB46: - lsls r0, r6, 2 - movs r1, 0xA2 - lsls r1, 1 - adds r2, r5, r1 - adds r2, r0 - ldrb r1, [r5, 0x9] - subs r1, 0x2 - lsls r0, r1, 2 - adds r0, r1 - adds r0, r6, r0 - adds r0, r7 - ldrb r1, [r0] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 2 - ldr r1, _0814EBA4 @ =gUnknown_846F294 - adds r0, r1 - str r0, [r2] - ldrb r0, [r0] - lsls r0, 3 - ldr r1, _0814EBA8 @ =gUnknown_846E3F8 - adds r0, r1 - bl AddWindow - ldr r1, _0814EBAC @ =0x000001bb - adds r4, r5, r1 - adds r4, r6 - strb r0, [r4] - ldrb r0, [r4] - bl PutWindowTilemap - ldrb r0, [r4] - movs r1, 0 - bl FillWindowPixelBuffer - adds r0, r6, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - ldrb r0, [r5, 0x9] - cmp r6, r0 - bcc _0814EB46 -_0814EB98: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814EBA0: .4byte gUnknown_846F280 -_0814EBA4: .4byte gUnknown_846F294 -_0814EBA8: .4byte gUnknown_846E3F8 -_0814EBAC: .4byte 0x000001bb - thumb_func_end sub_814EB38 - - thumb_func_start sub_814EBB0 -sub_814EBB0: @ 814EBB0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x14 - adds r6, r0, 0 - movs r7, 0 - ldrb r0, [r6, 0x9] - cmp r7, r0 - bcs _0814EC66 - movs r1, 0 - mov r8, r1 -_0814EBC6: - ldr r1, _0814EC10 @ =0x000001bb - adds r0, r6, r1 - adds r5, r0, r7 - ldrb r0, [r5] - bl PutWindowTilemap - ldrb r0, [r6, 0x8] - cmp r7, r0 - bne _0814EC18 - lsls r4, r7, 5 - adds r4, 0x98 - adds r4, r6, r4 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - lsrs r0, 1 - movs r2, 0x24 - subs r2, r0 - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r5] - mov r1, r8 - str r1, [sp] - str r1, [sp, 0x4] - ldr r1, _0814EC14 @ =gUnknown_846E3DF - str r1, [sp, 0x8] - mov r1, r8 - str r1, [sp, 0xC] - str r4, [sp, 0x10] - movs r1, 0x2 - movs r3, 0x1 - bl AddTextPrinterParameterized4 - b _0814EC4C - .align 2, 0 -_0814EC10: .4byte 0x000001bb -_0814EC14: .4byte gUnknown_846E3DF -_0814EC18: - lsls r4, r7, 5 - adds r4, 0x98 - adds r4, r6, r4 - movs r0, 0x2 - adds r1, r4, 0 - movs r2, 0 - bl GetStringWidth - lsrs r0, 1 - movs r2, 0x24 - subs r2, r0 - lsls r2, 24 - lsrs r2, 24 - ldrb r0, [r5] - mov r1, r8 - str r1, [sp] - str r1, [sp, 0x4] - ldr r1, _0814EC78 @ =gUnknown_846E3E2 - str r1, [sp, 0x8] - mov r1, r8 - str r1, [sp, 0xC] - str r4, [sp, 0x10] - movs r1, 0x2 - movs r3, 0x1 - bl AddTextPrinterParameterized4 -_0814EC4C: - ldr r1, _0814EC7C @ =0x000001bb - adds r0, r6, r1 - adds r0, r7 - ldrb r0, [r0] - movs r1, 0x3 - bl CopyWindowToVram - adds r0, r7, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r0, [r6, 0x9] - cmp r7, r0 - bcc _0814EBC6 -_0814EC66: - movs r0, 0 - bl CopyBgTilemapBufferToVram - add sp, 0x14 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814EC78: .4byte gUnknown_846E3E2 -_0814EC7C: .4byte 0x000001bb - thumb_func_end sub_814EBB0 - - thumb_func_start sub_814EC80 -sub_814EC80: @ 814EC80 - push {r4-r6,lr} - sub sp, 0x8 - adds r6, r0, 0 - movs r5, 0 - ldr r0, _0814EC94 @ =gUnknown_8EB0ADC - ldr r4, _0814EC98 @ =gDecompressionBuffer - adds r1, r4, 0 - bl LZ77UnCompWram - b _0814ECCA - .align 2, 0 -_0814EC94: .4byte gUnknown_8EB0ADC -_0814EC98: .4byte gDecompressionBuffer -_0814EC9C: - lsls r1, r5, 2 - movs r2, 0xA2 - lsls r2, 1 - adds r0, r6, r2 - adds r0, r1 - ldr r3, [r0] - ldrb r0, [r3] - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - ldrb r2, [r3, 0x1] - ldrb r3, [r3, 0x2] - movs r0, 0xA - str r0, [sp] - movs r0, 0x2 - str r0, [sp, 0x4] - movs r0, 0x3 - bl CopyToBgTilemapBufferRect - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 -_0814ECCA: - ldrb r0, [r6, 0x9] - cmp r5, r0 - bcc _0814EC9C - movs r0, 0x3 - bl CopyBgTilemapBufferToVram - add sp, 0x8 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_814EC80 - - thumb_func_start sub_814ECE0 -sub_814ECE0: @ 814ECE0 - push {r4-r7,lr} - adds r6, r0, 0 - movs r5, 0 - ldr r0, _0814EEE0 @ =0x0000ff98 - strh r0, [r6, 0x2A] - strh r5, [r6, 0x2C] - ldr r1, _0814EEE4 @ =gSpriteCoordOffsetX - strh r5, [r1] - ldr r1, _0814EEE8 @ =gSpriteCoordOffsetY - strh r0, [r1] - ldr r4, _0814EEEC @ =gUnknown_846F2F8 -_0814ECF6: - lsls r0, r5, 3 - adds r0, r4 - bl LoadCompressedSpriteSheet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x3 - bls _0814ECF6 - ldr r0, _0814EEF0 @ =gUnknown_846F320 - bl LoadSpritePalettes - ldr r0, _0814EEF4 @ =gUnknown_846F410 - movs r1, 0x78 - movs r2, 0x58 - movs r3, 0x5 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0xAC - lsls r0, 1 - adds r3, r6, r0 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, _0814EEF8 @ =gSprites - adds r0, r1 - str r0, [r3] - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r1, [r3] - adds r1, 0x3E - ldrb r0, [r1] - movs r2, 0x2 - orrs r0, r2 - strb r0, [r1] - ldr r1, [r3] - adds r1, 0x2C - ldrb r0, [r1] - movs r2, 0x40 - orrs r0, r2 - strb r0, [r1] - movs r5, 0 - ldrb r1, [r6, 0x9] - cmp r5, r1 - bcs _0814EDD2 - movs r7, 0x4 -_0814ED5A: - lsls r4, r5, 2 - movs r3, 0xA2 - lsls r3, 1 - adds r0, r6, r3 - adds r0, r4 - ldr r0, [r0] - ldrh r1, [r0, 0x4] - adds r1, 0x78 - lsls r1, 16 - asrs r1, 16 - ldrh r2, [r0, 0x6] - adds r2, 0x20 - lsls r2, 16 - asrs r2, 16 - ldr r0, _0814EEFC @ =gUnknown_846F428 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - movs r0, 0xAE - lsls r0, 1 - adds r3, r6, r0 - adds r3, r4 - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - ldr r0, _0814EEF8 @ =gSprites - adds r1, r0 - str r1, [r3] - ldrb r0, [r1, 0x5] - movs r4, 0xD - negs r4, r4 - adds r2, r4, 0 - ands r0, r2 - orrs r0, r7 - strb r0, [r1, 0x5] - ldr r1, [r3] - adds r1, 0x3E - ldrb r0, [r1] - orrs r0, r7 - strb r0, [r1] - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x2 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - ldrb r0, [r6, 0x9] - cmp r5, r0 - bcc _0814ED5A -_0814EDD2: - movs r5, 0 - ldr r4, _0814EF00 @ =gUnknown_846F2D6 - adds r7, r4, 0x1 -_0814EDD8: - lsls r2, r5, 1 - adds r0, r2, r4 - movs r1, 0 - ldrsb r1, [r0, r1] - adds r1, 0x78 - adds r2, r7 - ldrb r2, [r2] - lsls r2, 24 - asrs r2, 24 - adds r2, 0x88 - ldr r0, _0814EF04 @ =gUnknown_846F440 - movs r3, 0x6 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r5, 2 - movs r1, 0xC2 - lsls r1, 1 - adds r3, r6, r1 - adds r3, r0 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, _0814EEF8 @ =gSprites - adds r0, r1 - str r0, [r3] - ldrb r1, [r0, 0x5] - movs r2, 0xC - orrs r1, r2 - strb r1, [r0, 0x5] - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - ldr r0, [r3] - strh r5, [r0, 0x2E] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0xA - bls _0814EDD8 - movs r5, 0 -_0814EE3E: - lsls r1, r5, 1 - adds r1, r5 - lsls r1, 19 - movs r3, 0xB0 - lsls r3, 16 - adds r1, r3 - asrs r1, 16 - ldr r0, _0814EF08 @ =gUnknown_846F458 - movs r2, 0x8 - movs r3, 0 - bl CreateSprite - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r5, 2 - movs r4, 0xD8 - lsls r4, 1 - adds r3, r6, r4 - adds r3, r0 - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - ldr r1, _0814EEF8 @ =gSprites - adds r0, r1 - str r0, [r3] - ldrb r1, [r0, 0x5] - movs r4, 0xD - negs r4, r4 - adds r2, r4, 0 - ands r1, r2 - strb r1, [r0, 0x5] - ldr r2, [r3] - adds r2, 0x3E - ldrb r0, [r2] - adds r4, 0x8 - adds r1, r4, 0 - ands r0, r1 - strb r0, [r2] - ldr r2, [r3] - adds r2, 0x2C - ldrb r0, [r2] - movs r3, 0x41 - negs r3, r3 - adds r1, r3, 0 - ands r0, r1 - strb r0, [r2] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x1 - bls _0814EE3E - ldr r4, _0814EF0C @ =gUnknown_846F488 - movs r0, 0 - movs r1, 0 - adds r2, r4, 0 - bl DigitObjUtil_CreatePrinter - adds r2, r4, 0 - adds r2, 0x10 - movs r0, 0x1 - movs r1, 0 - bl DigitObjUtil_CreatePrinter - adds r4, 0x20 - movs r0, 0x2 - movs r1, 0 - adds r2, r4, 0 - bl DigitObjUtil_CreatePrinter - ldrh r0, [r6, 0x12] - cmp r0, 0x1 - bne _0814EED8 - movs r4, 0x9C - lsls r4, 1 - adds r0, r6, r4 - bl sub_814EB04 -_0814EED8: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814EEE0: .4byte 0x0000ff98 -_0814EEE4: .4byte gSpriteCoordOffsetX -_0814EEE8: .4byte gSpriteCoordOffsetY -_0814EEEC: .4byte gUnknown_846F2F8 -_0814EEF0: .4byte gUnknown_846F320 -_0814EEF4: .4byte gUnknown_846F410 -_0814EEF8: .4byte gSprites -_0814EEFC: .4byte gUnknown_846F428 -_0814EF00: .4byte gUnknown_846F2D6 -_0814EF04: .4byte gUnknown_846F440 -_0814EF08: .4byte gUnknown_846F458 -_0814EF0C: .4byte gUnknown_846F488 - thumb_func_end sub_814ECE0 - - thumb_func_start sub_814EF10 -sub_814EF10: @ 814EF10 - push {r4-r6,lr} - adds r5, r0, 0 - movs r4, 0 - movs r0, 0x4 - bl FreeSpriteTilesByTag - movs r0, 0x3 - bl FreeSpriteTilesByTag - movs r0, 0x2 - bl FreeSpriteTilesByTag - movs r0, 0x1 - bl FreeSpriteTilesByTag - movs r0, 0x4 - bl FreeSpritePaletteByTag - movs r0, 0x2 - bl FreeSpritePaletteByTag - movs r0, 0x1 - bl FreeSpritePaletteByTag - movs r0, 0xD8 - lsls r0, 1 - adds r6, r5, r0 -_0814EF46: - lsls r0, r4, 2 - adds r0, r6, r0 - ldr r0, [r0] - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0x1 - bls _0814EF46 - movs r0, 0x2 - bl DigitObjUtil_DeletePrinter - movs r0, 0x1 - bl DigitObjUtil_DeletePrinter - movs r0, 0 - bl DigitObjUtil_DeletePrinter - movs r4, 0 - movs r1, 0xC2 - lsls r1, 1 - adds r6, r5, r1 -_0814EF74: - lsls r0, r4, 2 - adds r0, r6, r0 - ldr r0, [r0] - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - cmp r4, 0xA - bls _0814EF74 - movs r4, 0 - ldrb r2, [r5, 0x9] - cmp r4, r2 - bcs _0814EFAC -_0814EF90: - lsls r1, r4, 2 - movs r2, 0xAE - lsls r2, 1 - adds r0, r5, r2 - adds r0, r1 - ldr r0, [r0] - bl DestroySprite - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r0, [r5, 0x9] - cmp r4, r0 - bcc _0814EF90 -_0814EFAC: - movs r1, 0xAC - lsls r1, 1 - adds r0, r5, r1 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x3E - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0814EFC8 - adds r0, r2, 0 - bl DestroySprite -_0814EFC8: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_814EF10 - - thumb_func_start sub_814EFD0 -sub_814EFD0: @ 814EFD0 - push {lr} - adds r3, r0, 0 - adds r0, 0x3F - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _0814EFF6 - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - subs r2, 0x12 - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] -_0814EFF6: - pop {r0} - bx r0 - thumb_func_end sub_814EFD0 - - thumb_func_start sub_814EFFC -sub_814EFFC: @ 814EFFC - push {r4,r5,lr} - adds r3, r0, 0 - movs r1, 0 - ldr r5, _0814F040 @ =SpriteCallbackDummy - adds r2, r3, 0 - adds r2, 0x2E - movs r4, 0 -_0814F00A: - lsls r0, r1, 1 - adds r0, r2, r0 - strh r4, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0x7 - bls _0814F00A - movs r0, 0 - strh r0, [r3, 0x24] - strh r0, [r3, 0x26] - adds r2, r3, 0 - adds r2, 0x3E - ldrb r0, [r2] - movs r1, 0x4 - orrs r0, r1 - strb r0, [r2] - subs r2, 0x12 - ldrb r0, [r2] - movs r1, 0x40 - orrs r0, r1 - strb r0, [r2] - str r5, [r3, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0814F040: .4byte SpriteCallbackDummy - thumb_func_end sub_814EFFC - - thumb_func_start sub_814F044 -sub_814F044: @ 814F044 - push {r4-r6,lr} - adds r5, r0, 0 - adds r4, r5, 0 - adds r4, 0x2E - ldrh r0, [r4, 0x4] - ldrh r1, [r4, 0x2] - adds r0, r1 - strh r0, [r4, 0x2] - lsls r0, 16 - asrs r0, 24 - ldrh r2, [r5, 0x26] - adds r0, r2 - strh r0, [r5, 0x26] - movs r1, 0xE - ldrsh r0, [r4, r1] - movs r6, 0x80 - lsls r6, 8 - ands r0, r6 - cmp r0, 0 - beq _0814F0AA - ldrh r0, [r4, 0x6] - ldrh r2, [r5, 0x2E] - adds r0, r2 - strh r0, [r5, 0x2E] - ldrh r0, [r4, 0xA] - ldrh r1, [r4, 0x8] - adds r0, r1 - strh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 23 - movs r2, 0xC - ldrsh r1, [r4, r2] - bl Sin - strh r0, [r5, 0x24] - movs r1, 0xE - ldrsh r0, [r4, r1] - ands r0, r6 - cmp r0, 0 - beq _0814F0AA - ldrh r0, [r4, 0x8] - lsls r0, 16 - asrs r0, 23 - cmp r0, 0x7E - ble _0814F0AA - movs r0, 0 - strh r0, [r5, 0x24] - ldrh r1, [r4, 0xE] - ldr r0, _0814F0D0 @ =0x00007fff - ands r0, r1 - strh r0, [r4, 0xE] -_0814F0AA: - ldrh r0, [r4] - lsls r0, 16 - asrs r0, 23 - strh r0, [r5, 0x20] - movs r2, 0x22 - ldrsh r1, [r5, r2] - movs r2, 0x26 - ldrsh r0, [r5, r2] - adds r1, r0 - ldrh r2, [r4, 0xE] - ldr r0, _0814F0D0 @ =0x00007fff - ands r0, r2 - cmp r1, r0 - ble _0814F0CA - ldr r0, _0814F0D4 @ =sub_814EFFC - str r0, [r5, 0x1C] -_0814F0CA: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0814F0D0: .4byte 0x00007fff -_0814F0D4: .4byte sub_814EFFC - thumb_func_end sub_814F044 - - thumb_func_start sub_814F0D8 -sub_814F0D8: @ 814F0D8 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r6, r0, 0 - adds r7, r6, 0 - adds r7, 0x2E - movs r0, 0 - mov r8, r0 - movs r2, 0xA0 - lsls r2, 2 - strh r2, [r7, 0x2] - movs r0, 0x20 - strh r0, [r7, 0x4] - movs r1, 0xA8 - strh r1, [r7, 0xE] - movs r0, 0x24 - ldrsh r4, [r6, r0] - lsls r4, 23 - lsrs r4, 16 - ldrh r0, [r6, 0x22] - subs r1, r0 - lsls r1, 23 - asrs r1, 16 - adds r2, 0x20 - asrs r2, 1 - movs r0, 0x7 - bl sub_80D8B40 - adds r5, r0, 0 - ldrh r0, [r6, 0x20] - lsls r0, 7 - strh r0, [r6, 0x2E] - lsls r4, 16 - asrs r4, 16 - lsls r5, 16 - asrs r5, 16 - movs r0, 0x7 - adds r1, r4, 0 - adds r2, r5, 0 - bl sub_80D8B40 - strh r0, [r7, 0x6] - movs r0, 0x7 - adds r1, r5, 0 - movs r2, 0x55 - bl sub_80D8ABC - adds r2, r0, 0 - mov r1, r8 - strh r1, [r7, 0x8] - movs r1, 0xFE - lsls r1, 6 - lsls r2, 16 - asrs r2, 16 - movs r0, 0x7 - bl sub_80D8B40 - strh r0, [r7, 0xA] - movs r2, 0x24 - ldrsh r0, [r6, r2] - cmp r0, 0 - bge _0814F156 - adds r0, 0x3 -_0814F156: - asrs r0, 2 - strh r0, [r7, 0xC] - ldrh r0, [r7, 0xE] - ldr r2, _0814F194 @ =0xffff8000 - adds r1, r2, 0 - orrs r0, r1 - strh r0, [r7, 0xE] - mov r0, r8 - strh r0, [r6, 0x26] - strh r0, [r6, 0x24] - ldr r0, _0814F198 @ =sub_814F044 - str r0, [r6, 0x1C] - adds r2, r6, 0 - adds r2, 0x2C - ldrb r1, [r2] - movs r0, 0x41 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - adds r2, 0x12 - ldrb r1, [r2] - movs r0, 0x5 - negs r0, r0 - ands r0, r1 - strb r0, [r2] - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0814F194: .4byte 0xffff8000 -_0814F198: .4byte sub_814F044 - thumb_func_end sub_814F0D8 - - .align 2, 0 @ Don't pad with nop. |