Files
tp/asm/d/s/d_s_room.s
T

965 lines
47 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 8025ae1c
/* 8025AE1C 00257D5C 38 60 00 01 */ li r3, 1
/* 8025AE20 00257D60 4E 80 00 20 */ blr
.global getResetArchiveBank
getResetArchiveBank:
/* 8025AE24 00257D64 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8025AE28 00257D68 7C 08 02 A6 */ mflr r0
/* 8025AE2C 00257D6C 90 01 00 34 */ stw r0, 0x34(r1)
/* 8025AE30 00257D70 39 61 00 30 */ addi r11, r1, 0x30
/* 8025AE34 00257D74 48 10 73 99 */ bl _savegpr_25
/* 8025AE38 00257D78 7C 79 1B 78 */ mr r25, r3
/* 8025AE3C 00257D7C 7C 9A 23 78 */ mr r26, r4
/* 8025AE40 00257D80 83 CD 87 EC */ lwz r30, lbl_80450D6C-_SDA_BASE_(r13)
/* 8025AE44 00257D84 3B A0 00 00 */ li r29, 0
/* 8025AE48 00257D88 38 00 00 00 */ li r0, 0
/* 8025AE4C 00257D8C 90 04 00 00 */ stw r0, 0(r4)
/* 8025AE50 00257D90 28 1E 00 00 */ cmplwi r30, 0
/* 8025AE54 00257D94 41 82 00 58 */ beq lbl_8025AEAC
/* 8025AE58 00257D98 83 ED 87 F0 */ lwz r31, lbl_80450D70-_SDA_BASE_(r13)
/* 8025AE5C 00257D9C 3B 9F 00 01 */ addi r28, r31, 1
/* 8025AE60 00257DA0 3B 60 00 00 */ li r27, 0
/* 8025AE64 00257DA4 48 00 00 3C */ b lbl_8025AEA0
lbl_8025AE68:
/* 8025AE68 00257DA8 88 1C 00 00 */ lbz r0, 0(r28)
/* 8025AE6C 00257DAC 7C 00 C8 00 */ cmpw r0, r25
/* 8025AE70 00257DB0 40 82 00 28 */ bne lbl_8025AE98
/* 8025AE74 00257DB4 38 60 00 00 */ li r3, 0
/* 8025AE78 00257DB8 4B DD 1B 05 */ bl dComIfG_play_c_NS_getLayerNo
/* 8025AE7C 00257DBC 88 1C 00 01 */ lbz r0, 1(r28)
/* 8025AE80 00257DC0 7C 00 18 00 */ cmpw r0, r3
/* 8025AE84 00257DC4 40 82 00 14 */ bne lbl_8025AE98
/* 8025AE88 00257DC8 3B A0 00 20 */ li r29, 0x20
/* 8025AE8C 00257DCC 38 1C 00 02 */ addi r0, r28, 2
/* 8025AE90 00257DD0 90 1A 00 00 */ stw r0, 0(r26)
/* 8025AE94 00257DD4 48 00 00 18 */ b lbl_8025AEAC
lbl_8025AE98:
/* 8025AE98 00257DD8 3B 9C 00 22 */ addi r28, r28, 0x22
/* 8025AE9C 00257DDC 3B 7B 00 01 */ addi r27, r27, 1
lbl_8025AEA0:
/* 8025AEA0 00257DE0 88 1F 00 00 */ lbz r0, 0(r31)
/* 8025AEA4 00257DE4 7C 1B 00 00 */ cmpw r27, r0
/* 8025AEA8 00257DE8 41 80 FF C0 */ blt lbl_8025AE68
lbl_8025AEAC:
/* 8025AEAC 00257DEC 83 7A 00 00 */ lwz r27, 0(r26)
/* 8025AEB0 00257DF0 3B 80 00 00 */ li r28, 0
/* 8025AEB4 00257DF4 3C 60 80 3A */ lis r3, lbl_8039A388@ha
/* 8025AEB8 00257DF8 3B E3 A3 88 */ addi r31, r3, lbl_8039A388@l
/* 8025AEBC 00257DFC 48 00 00 44 */ b lbl_8025AF00
lbl_8025AEC0:
/* 8025AEC0 00257E00 7F 83 E3 78 */ mr r3, r28
/* 8025AEC4 00257E04 4B DC 9A 7D */ bl dStage_roomControl_c_NS_getArcBank
/* 8025AEC8 00257E08 7F E4 FB 78 */ mr r4, r31
/* 8025AECC 00257E0C 88 1B 00 00 */ lbz r0, 0(r27)
/* 8025AED0 00257E10 2C 00 00 FF */ cmpwi r0, 0xff
/* 8025AED4 00257E14 41 82 00 10 */ beq lbl_8025AEE4
/* 8025AED8 00257E18 1C 80 00 0A */ mulli r4, r0, 0xa
/* 8025AEDC 00257E1C 38 84 00 01 */ addi r4, r4, 1
/* 8025AEE0 00257E20 7C 9E 22 14 */ add r4, r30, r4
lbl_8025AEE4:
/* 8025AEE4 00257E24 48 10 DA B1 */ bl strcmp
/* 8025AEE8 00257E28 2C 03 00 00 */ cmpwi r3, 0
/* 8025AEEC 00257E2C 41 82 00 0C */ beq lbl_8025AEF8
/* 8025AEF0 00257E30 7F 83 E3 78 */ mr r3, r28
/* 8025AEF4 00257E34 48 00 00 18 */ b lbl_8025AF0C
lbl_8025AEF8:
/* 8025AEF8 00257E38 3B 7B 00 01 */ addi r27, r27, 1
/* 8025AEFC 00257E3C 3B 9C 00 01 */ addi r28, r28, 1
lbl_8025AF00:
/* 8025AF00 00257E40 7C 1C E8 00 */ cmpw r28, r29
/* 8025AF04 00257E44 41 80 FF BC */ blt lbl_8025AEC0
/* 8025AF08 00257E48 7F A3 EB 78 */ mr r3, r29
lbl_8025AF0C:
/* 8025AF0C 00257E4C 39 61 00 30 */ addi r11, r1, 0x30
/* 8025AF10 00257E50 48 10 73 09 */ bl _restgpr_25
/* 8025AF14 00257E54 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8025AF18 00257E58 7C 08 03 A6 */ mtlr r0
/* 8025AF1C 00257E5C 38 21 00 30 */ addi r1, r1, 0x30
/* 8025AF20 00257E60 4E 80 00 20 */ blr
.global resetArchiveBank
resetArchiveBank:
/* 8025AF24 00257E64 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025AF28 00257E68 7C 08 02 A6 */ mflr r0
/* 8025AF2C 00257E6C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025AF30 00257E70 38 81 00 08 */ addi r4, r1, 8
/* 8025AF34 00257E74 4B FF FE F1 */ bl getResetArchiveBank
/* 8025AF38 00257E78 4B DC 9A 1D */ bl dStage_roomControl_c_NS_resetArchiveBank
/* 8025AF3C 00257E7C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025AF40 00257E80 7C 08 03 A6 */ mtlr r0
/* 8025AF44 00257E84 38 21 00 10 */ addi r1, r1, 0x10
/* 8025AF48 00257E88 4E 80 00 20 */ blr
.global setArchiveBank
setArchiveBank:
/* 8025AF4C 00257E8C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8025AF50 00257E90 7C 08 02 A6 */ mflr r0
/* 8025AF54 00257E94 90 01 00 34 */ stw r0, 0x34(r1)
/* 8025AF58 00257E98 39 61 00 30 */ addi r11, r1, 0x30
/* 8025AF5C 00257E9C 48 10 72 79 */ bl _savegpr_27
/* 8025AF60 00257EA0 38 81 00 08 */ addi r4, r1, 8
/* 8025AF64 00257EA4 4B FF FE C1 */ bl getResetArchiveBank
/* 8025AF68 00257EA8 7C 7C 1B 78 */ mr r28, r3
/* 8025AF6C 00257EAC 80 01 00 08 */ lwz r0, 8(r1)
/* 8025AF70 00257EB0 28 00 00 00 */ cmplwi r0, 0
/* 8025AF74 00257EB4 40 82 00 0C */ bne lbl_8025AF80
/* 8025AF78 00257EB8 38 60 00 01 */ li r3, 1
/* 8025AF7C 00257EBC 48 00 01 5C */ b lbl_8025B0D8
lbl_8025AF80:
/* 8025AF80 00257EC0 83 CD 87 EC */ lwz r30, lbl_80450D6C-_SDA_BASE_(r13)
/* 8025AF84 00257EC4 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025AF88 00257EC8 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025AF8C 00257ECC 3F A3 00 02 */ addis r29, r3, 2
/* 8025AF90 00257ED0 3C 60 80 3A */ lis r3, lbl_8039A388@ha
/* 8025AF94 00257ED4 3B E3 A3 88 */ addi r31, r3, lbl_8039A388@l
/* 8025AF98 00257ED8 3B BD C2 F8 */ addi r29, r29, -15624
/* 8025AF9C 00257EDC 48 00 01 30 */ b lbl_8025B0CC
lbl_8025AFA0:
/* 8025AFA0 00257EE0 7F FB FB 78 */ mr r27, r31
/* 8025AFA4 00257EE4 80 61 00 08 */ lwz r3, 8(r1)
/* 8025AFA8 00257EE8 7C 03 E0 AE */ lbzx r0, r3, r28
/* 8025AFAC 00257EEC 2C 00 00 FF */ cmpwi r0, 0xff
/* 8025AFB0 00257EF0 41 82 00 10 */ beq lbl_8025AFC0
/* 8025AFB4 00257EF4 1C 60 00 0A */ mulli r3, r0, 0xa
/* 8025AFB8 00257EF8 3B 63 00 01 */ addi r27, r3, 1
/* 8025AFBC 00257EFC 7F 7E DA 14 */ add r27, r30, r27
lbl_8025AFC0:
/* 8025AFC0 00257F00 7F 63 DB 78 */ mr r3, r27
/* 8025AFC4 00257F04 7F E4 FB 78 */ mr r4, r31
/* 8025AFC8 00257F08 48 10 D9 CD */ bl strcmp
/* 8025AFCC 00257F0C 2C 03 00 00 */ cmpwi r3, 0
/* 8025AFD0 00257F10 41 82 00 EC */ beq lbl_8025B0BC
/* 8025AFD4 00257F14 7F 63 DB 78 */ mr r3, r27
/* 8025AFD8 00257F18 3C 80 80 3A */ lis r4, lbl_8039A388@ha
/* 8025AFDC 00257F1C 38 84 A3 88 */ addi r4, r4, lbl_8039A388@l
/* 8025AFE0 00257F20 38 84 00 01 */ addi r4, r4, 1
/* 8025AFE4 00257F24 38 A0 00 04 */ li r5, 4
/* 8025AFE8 00257F28 48 11 1A 8D */ bl func_8036CA74
/* 8025AFEC 00257F2C 2C 03 00 00 */ cmpwi r3, 0
/* 8025AFF0 00257F30 40 82 00 80 */ bne lbl_8025B070
/* 8025AFF4 00257F34 7F 63 DB 78 */ mr r3, r27
/* 8025AFF8 00257F38 7F A4 EB 78 */ mr r4, r29
/* 8025AFFC 00257F3C 38 A0 00 80 */ li r5, 0x80
/* 8025B000 00257F40 4B DE 11 61 */ bl dRes_control_c_NS_syncRes
/* 8025B004 00257F44 2C 03 00 00 */ cmpwi r3, 0
/* 8025B008 00257F48 40 80 00 5C */ bge lbl_8025B064
/* 8025B00C 00257F4C 4B DB 3D E1 */ bl mDoExt_getArchiveHeap
/* 8025B010 00257F50 7C 68 1B 78 */ mr r8, r3
/* 8025B014 00257F54 7F 63 DB 78 */ mr r3, r27
/* 8025B018 00257F58 7F A4 EB 78 */ mr r4, r29
/* 8025B01C 00257F5C 38 A0 00 80 */ li r5, 0x80
/* 8025B020 00257F60 3C C0 80 3A */ lis r6, lbl_8039A388@ha
/* 8025B024 00257F64 38 C6 A3 88 */ addi r6, r6, lbl_8039A388@l
/* 8025B028 00257F68 38 C6 00 06 */ addi r6, r6, 6
/* 8025B02C 00257F6C 38 E0 00 00 */ li r7, 0
/* 8025B030 00257F70 4B DE 10 49 */ bl dRes_control_c_NS_setRes
/* 8025B034 00257F74 2C 03 00 00 */ cmpwi r3, 0
/* 8025B038 00257F78 40 82 00 24 */ bne lbl_8025B05C
/* 8025B03C 00257F7C 3C 60 80 3A */ lis r3, lbl_8039A388@ha
/* 8025B040 00257F80 38 63 A3 88 */ addi r3, r3, lbl_8039A388@l
/* 8025B044 00257F84 38 63 00 13 */ addi r3, r3, 0x13
/* 8025B048 00257F88 7F 84 E3 78 */ mr r4, r28
/* 8025B04C 00257F8C 7F 65 DB 78 */ mr r5, r27
/* 8025B050 00257F90 4C C6 31 82 */ crclr 6
/* 8025B054 00257F94 4B DA BB B9 */ bl OSReport_Error
/* 8025B058 00257F98 48 00 00 64 */ b lbl_8025B0BC
lbl_8025B05C:
/* 8025B05C 00257F9C 38 60 00 00 */ li r3, 0
/* 8025B060 00257FA0 48 00 00 78 */ b lbl_8025B0D8
lbl_8025B064:
/* 8025B064 00257FA4 41 82 00 58 */ beq lbl_8025B0BC
/* 8025B068 00257FA8 38 60 00 00 */ li r3, 0
/* 8025B06C 00257FAC 48 00 00 6C */ b lbl_8025B0D8
lbl_8025B070:
/* 8025B070 00257FB0 4B DB 3D 7D */ bl mDoExt_getArchiveHeap
/* 8025B074 00257FB4 7C 68 1B 78 */ mr r8, r3
/* 8025B078 00257FB8 7F 63 DB 78 */ mr r3, r27
/* 8025B07C 00257FBC 7F A4 EB 78 */ mr r4, r29
/* 8025B080 00257FC0 38 A0 00 80 */ li r5, 0x80
/* 8025B084 00257FC4 3C C0 80 3A */ lis r6, lbl_8039A388@ha
/* 8025B088 00257FC8 38 C6 A3 88 */ addi r6, r6, lbl_8039A388@l
/* 8025B08C 00257FCC 38 C6 00 06 */ addi r6, r6, 6
/* 8025B090 00257FD0 38 E0 00 00 */ li r7, 0
/* 8025B094 00257FD4 4B DE 0F E5 */ bl dRes_control_c_NS_setRes
/* 8025B098 00257FD8 2C 03 00 00 */ cmpwi r3, 0
/* 8025B09C 00257FDC 40 82 00 20 */ bne lbl_8025B0BC
/* 8025B0A0 00257FE0 3C 60 80 3A */ lis r3, lbl_8039A388@ha
/* 8025B0A4 00257FE4 38 63 A3 88 */ addi r3, r3, lbl_8039A388@l
/* 8025B0A8 00257FE8 38 63 00 13 */ addi r3, r3, 0x13
/* 8025B0AC 00257FEC 7F 84 E3 78 */ mr r4, r28
/* 8025B0B0 00257FF0 7F 65 DB 78 */ mr r5, r27
/* 8025B0B4 00257FF4 4C C6 31 82 */ crclr 6
/* 8025B0B8 00257FF8 4B DA BB 55 */ bl OSReport_Error
lbl_8025B0BC:
/* 8025B0BC 00257FFC 7F 83 E3 78 */ mr r3, r28
/* 8025B0C0 00258000 7F 64 DB 78 */ mr r4, r27
/* 8025B0C4 00258004 4B DC 98 49 */ bl dStage_roomControl_c_NS_setArcBank
/* 8025B0C8 00258008 3B 9C 00 01 */ addi r28, r28, 1
lbl_8025B0CC:
/* 8025B0CC 0025800C 2C 1C 00 20 */ cmpwi r28, 0x20
/* 8025B0D0 00258010 41 80 FE D0 */ blt lbl_8025AFA0
/* 8025B0D4 00258014 38 60 00 01 */ li r3, 1
lbl_8025B0D8:
/* 8025B0D8 00258018 39 61 00 30 */ addi r11, r1, 0x30
/* 8025B0DC 0025801C 48 10 71 45 */ bl _restgpr_27
/* 8025B0E0 00258020 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8025B0E4 00258024 7C 08 03 A6 */ mtlr r0
/* 8025B0E8 00258028 38 21 00 30 */ addi r1, r1, 0x30
/* 8025B0EC 0025802C 4E 80 00 20 */ blr
.global objectDeleteJugge
objectDeleteJugge:
/* 8025B0F0 00258030 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025B0F4 00258034 7C 08 02 A6 */ mflr r0
/* 8025B0F8 00258038 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025B0FC 0025803C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8025B100 00258040 7C 7F 1B 78 */ mr r31, r3
/* 8025B104 00258044 A8 03 00 0E */ lha r0, 0xe(r3)
/* 8025B108 00258048 2C 00 02 DC */ cmpwi r0, 0x2dc
/* 8025B10C 0025804C 41 82 00 2C */ beq lbl_8025B138
/* 8025B110 00258050 4B DB DB D1 */ bl fopAc_IsActor
/* 8025B114 00258054 2C 03 00 00 */ cmpwi r3, 0
/* 8025B118 00258058 41 82 00 18 */ beq lbl_8025B130
/* 8025B11C 0025805C 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
/* 8025B120 00258060 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8025B124 00258064 40 82 00 0C */ bne lbl_8025B130
/* 8025B128 00258068 38 60 00 00 */ li r3, 0
/* 8025B12C 0025806C 48 00 00 10 */ b lbl_8025B13C
lbl_8025B130:
/* 8025B130 00258070 7F E3 FB 78 */ mr r3, r31
/* 8025B134 00258074 4B DC 6F E5 */ bl fpcM_Delete
lbl_8025B138:
/* 8025B138 00258078 38 60 00 00 */ li r3, 0
lbl_8025B13C:
/* 8025B13C 0025807C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8025B140 00258080 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025B144 00258084 7C 08 03 A6 */ mtlr r0
/* 8025B148 00258088 38 21 00 10 */ addi r1, r1, 0x10
/* 8025B14C 0025808C 4E 80 00 20 */ blr
.global deleteJugge
deleteJugge:
/* 8025B150 00258090 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025B154 00258094 7C 08 02 A6 */ mflr r0
/* 8025B158 00258098 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025B15C 0025809C 4B DC 6F BD */ bl fpcM_Delete
/* 8025B160 002580A0 38 60 00 00 */ li r3, 0
/* 8025B164 002580A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025B168 002580A8 7C 08 03 A6 */ mtlr r0
/* 8025B16C 002580AC 38 21 00 10 */ addi r1, r1, 0x10
/* 8025B170 002580B0 4E 80 00 20 */ blr
.global isCreatingCallback
isCreatingCallback:
/* 8025B174 002580B4 80 63 00 0C */ lwz r3, 0xc(r3)
/* 8025B178 002580B8 80 A3 00 44 */ lwz r5, 0x44(r3)
/* 8025B17C 002580BC 80 A5 00 0C */ lwz r5, 0xc(r5)
/* 8025B180 002580C0 80 04 00 00 */ lwz r0, 0(r4)
/* 8025B184 002580C4 7C 05 00 40 */ cmplw r5, r0
/* 8025B188 002580C8 4D 82 00 20 */ beqlr
/* 8025B18C 002580CC 38 60 00 00 */ li r3, 0
/* 8025B190 002580D0 4E 80 00 20 */ blr
.global isCreating
isCreating:
/* 8025B194 002580D4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025B198 002580D8 7C 08 02 A6 */ mflr r0
/* 8025B19C 002580DC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025B1A0 002580E0 90 61 00 08 */ stw r3, 8(r1)
.global isCreatingCallback
/* 8025B1A4 002580E4 3C 60 80 26 */ lis r3, isCreatingCallback@ha
.global isCreatingCallback
/* 8025B1A8 002580E8 38 63 B1 74 */ addi r3, r3, isCreatingCallback@l
/* 8025B1AC 002580EC 38 81 00 08 */ addi r4, r1, 8
/* 8025B1B0 002580F0 4B DC 58 55 */ bl fpcCtIt_Judge
/* 8025B1B4 002580F4 30 03 FF FF */ addic r0, r3, -1
/* 8025B1B8 002580F8 7C 00 19 10 */ subfe r0, r0, r3
/* 8025B1BC 002580FC 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8025B1C0 00258100 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025B1C4 00258104 7C 08 03 A6 */ mtlr r0
/* 8025B1C8 00258108 38 21 00 10 */ addi r1, r1, 0x10
/* 8025B1CC 0025810C 4E 80 00 20 */ blr
.global loadDemoArchive
loadDemoArchive:
/* 8025B1D0 00258110 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8025B1D4 00258114 7C 08 02 A6 */ mflr r0
/* 8025B1D8 00258118 90 01 00 24 */ stw r0, 0x24(r1)
/* 8025B1DC 0025811C 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B1E0 00258120 48 10 6F FD */ bl _savegpr_29
/* 8025B1E4 00258124 7C 7D 1B 78 */ mr r29, r3
/* 8025B1E8 00258128 3C 60 80 40 */ lis r3, lbl_80406194@ha
/* 8025B1EC 0025812C 88 03 61 94 */ lbz r0, lbl_80406194@l(r3)
/* 8025B1F0 00258130 7C 00 07 75 */ extsb. r0, r0
/* 8025B1F4 00258134 40 82 00 DC */ bne lbl_8025B2D0
/* 8025B1F8 00258138 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B1FC 0025813C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B200 00258140 38 63 4E C4 */ addi r3, r3, 0x4ec4
/* 8025B204 00258144 7F A4 EB 78 */ mr r4, r29
/* 8025B208 00258148 4B DC 91 7D */ bl dStage_roomControl_c_NS_getStatusRoomDt
/* 8025B20C 0025814C 81 83 00 00 */ lwz r12, 0(r3)
/* 8025B210 00258150 81 8C 01 40 */ lwz r12, 0x140(r12)
/* 8025B214 00258154 7D 89 03 A6 */ mtctr r12
/* 8025B218 00258158 4E 80 04 21 */ bctrl
/* 8025B21C 0025815C 28 03 00 00 */ cmplwi r3, 0
/* 8025B220 00258160 41 82 00 B0 */ beq lbl_8025B2D0
/* 8025B224 00258164 83 E3 00 04 */ lwz r31, 4(r3)
/* 8025B228 00258168 28 1F 00 00 */ cmplwi r31, 0
/* 8025B22C 0025816C 41 82 00 A4 */ beq lbl_8025B2D0
/* 8025B230 00258170 7F A3 EB 78 */ mr r3, r29
/* 8025B234 00258174 4B DD 17 49 */ bl dComIfG_play_c_NS_getLayerNo
/* 8025B238 00258178 1C 03 00 03 */ mulli r0, r3, 3
/* 8025B23C 0025817C 7F DF 00 AE */ lbzx r30, r31, r0
/* 8025B240 00258180 2C 1E 00 FF */ cmpwi r30, 0xff
/* 8025B244 00258184 41 82 00 8C */ beq lbl_8025B2D0
/* 8025B248 00258188 7F A3 EB 78 */ mr r3, r29
/* 8025B24C 0025818C 4B DD 17 31 */ bl dComIfG_play_c_NS_getLayerNo
/* 8025B250 00258190 1C 03 00 03 */ mulli r0, r3, 3
/* 8025B254 00258194 7C 7F 02 14 */ add r3, r31, r0
/* 8025B258 00258198 88 C3 00 01 */ lbz r6, 1(r3)
/* 8025B25C 0025819C 3C 60 80 40 */ lis r3, lbl_80406194@ha
/* 8025B260 002581A0 38 63 61 94 */ addi r3, r3, lbl_80406194@l
/* 8025B264 002581A4 3C 80 80 3A */ lis r4, lbl_8039A388@ha
/* 8025B268 002581A8 38 84 A3 88 */ addi r4, r4, lbl_8039A388@l
/* 8025B26C 002581AC 38 84 00 34 */ addi r4, r4, 0x34
/* 8025B270 002581B0 7F C5 F3 78 */ mr r5, r30
/* 8025B274 002581B4 4C C6 31 82 */ crclr 6
/* 8025B278 002581B8 48 10 B2 65 */ bl func_803664DC
/* 8025B27C 002581BC 3C 60 80 40 */ lis r3, lbl_80406194@ha
/* 8025B280 002581C0 38 63 61 94 */ addi r3, r3, lbl_80406194@l
/* 8025B284 002581C4 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 8025B288 002581C8 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 8025B28C 002581CC 3C 84 00 02 */ addis r4, r4, 2
/* 8025B290 002581D0 38 A0 00 80 */ li r5, 0x80
/* 8025B294 002581D4 3C C0 80 3A */ lis r6, lbl_8039A388@ha
/* 8025B298 002581D8 38 C6 A3 88 */ addi r6, r6, lbl_8039A388@l
/* 8025B29C 002581DC 38 C6 00 06 */ addi r6, r6, 6
/* 8025B2A0 002581E0 38 E0 00 00 */ li r7, 0
/* 8025B2A4 002581E4 39 00 00 00 */ li r8, 0
/* 8025B2A8 002581E8 38 84 C2 F8 */ addi r4, r4, -15624
/* 8025B2AC 002581EC 4B DE 0D CD */ bl dRes_control_c_NS_setRes
/* 8025B2B0 002581F0 2C 03 00 00 */ cmpwi r3, 0
/* 8025B2B4 002581F4 40 82 00 14 */ bne lbl_8025B2C8
/* 8025B2B8 002581F8 38 00 00 00 */ li r0, 0
/* 8025B2BC 002581FC 3C 60 80 40 */ lis r3, lbl_80406194@ha
/* 8025B2C0 00258200 98 03 61 94 */ stb r0, lbl_80406194@l(r3)
/* 8025B2C4 00258204 48 00 00 0C */ b lbl_8025B2D0
lbl_8025B2C8:
/* 8025B2C8 00258208 38 60 00 01 */ li r3, 1
/* 8025B2CC 0025820C 48 00 00 08 */ b lbl_8025B2D4
lbl_8025B2D0:
/* 8025B2D0 00258210 38 60 00 00 */ li r3, 0
lbl_8025B2D4:
/* 8025B2D4 00258214 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B2D8 00258218 48 10 6F 51 */ bl _restgpr_29
/* 8025B2DC 0025821C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8025B2E0 00258220 7C 08 03 A6 */ mtlr r0
/* 8025B2E4 00258224 38 21 00 20 */ addi r1, r1, 0x20
/* 8025B2E8 00258228 4E 80 00 20 */ blr
.global objectSetCheck
objectSetCheck:
/* 8025B2EC 0025822C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8025B2F0 00258230 7C 08 02 A6 */ mflr r0
/* 8025B2F4 00258234 90 01 00 24 */ stw r0, 0x24(r1)
/* 8025B2F8 00258238 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B2FC 0025823C 48 10 6E E1 */ bl _savegpr_29
/* 8025B300 00258240 7C 7D 1B 78 */ mr r29, r3
/* 8025B304 00258244 83 C3 00 B0 */ lwz r30, 0xb0(r3)
/* 8025B308 00258248 3C 60 80 3F */ lis r3, lbl_803F6094@ha
/* 8025B30C 0025824C 38 63 60 94 */ addi r3, r3, lbl_803F6094@l
/* 8025B310 00258250 1C 1E 04 04 */ mulli r0, r30, 0x404
/* 8025B314 00258254 7F E3 02 14 */ add r31, r3, r0
/* 8025B318 00258258 8C 1F 03 F4 */ lbzu r0, 0x3f4(r31)
/* 8025B31C 0025825C 54 04 07 38 */ rlwinm r4, r0, 0, 0x1c, 0x1c
/* 8025B320 00258260 54 03 06 B4 */ rlwinm r3, r0, 0, 0x1a, 0x1a
/* 8025B324 00258264 88 BD 01 D4 */ lbz r5, 0x1d4(r29)
/* 8025B328 00258268 7C A0 07 75 */ extsb. r0, r5
/* 8025B32C 0025826C 41 82 00 14 */ beq lbl_8025B340
/* 8025B330 00258270 7C A0 07 75 */ extsb. r0, r5
/* 8025B334 00258274 40 81 01 28 */ ble lbl_8025B45C
/* 8025B338 00258278 2C 04 00 00 */ cmpwi r4, 0
/* 8025B33C 0025827C 40 82 01 20 */ bne lbl_8025B45C
lbl_8025B340:
/* 8025B340 00258280 2C 04 00 00 */ cmpwi r4, 0
/* 8025B344 00258284 40 82 02 04 */ bne lbl_8025B548
/* 8025B348 00258288 7C A0 07 74 */ extsb r0, r5
/* 8025B34C 0025828C 2C 00 00 01 */ cmpwi r0, 1
/* 8025B350 00258290 41 82 00 38 */ beq lbl_8025B388
/* 8025B354 00258294 40 80 00 60 */ bge lbl_8025B3B4
/* 8025B358 00258298 2C 00 00 00 */ cmpwi r0, 0
/* 8025B35C 0025829C 40 80 00 08 */ bge lbl_8025B364
/* 8025B360 002582A0 48 00 00 54 */ b lbl_8025B3B4
lbl_8025B364:
/* 8025B364 002582A4 7F C3 F3 78 */ mr r3, r30
/* 8025B368 002582A8 4B FF FB BD */ bl resetArchiveBank
/* 8025B36C 002582AC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8025B370 002582B0 40 82 00 0C */ bne lbl_8025B37C
/* 8025B374 002582B4 38 60 00 00 */ li r3, 0
/* 8025B378 002582B8 48 00 01 D4 */ b lbl_8025B54C
lbl_8025B37C:
/* 8025B37C 002582BC 88 7D 01 D4 */ lbz r3, 0x1d4(r29)
/* 8025B380 002582C0 38 03 00 01 */ addi r0, r3, 1
/* 8025B384 002582C4 98 1D 01 D4 */ stb r0, 0x1d4(r29)
lbl_8025B388:
/* 8025B388 002582C8 7F C3 F3 78 */ mr r3, r30
/* 8025B38C 002582CC 4B FF FB C1 */ bl setArchiveBank
/* 8025B390 002582D0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8025B394 002582D4 40 82 00 0C */ bne lbl_8025B3A0
/* 8025B398 002582D8 38 60 00 00 */ li r3, 0
/* 8025B39C 002582DC 48 00 01 B0 */ b lbl_8025B54C
lbl_8025B3A0:
/* 8025B3A0 002582E0 80 1D 01 CC */ lwz r0, 0x1cc(r29)
/* 8025B3A4 002582E4 28 00 00 00 */ cmplwi r0, 0
/* 8025B3A8 002582E8 41 82 00 0C */ beq lbl_8025B3B4
/* 8025B3AC 002582EC 7F C3 F3 78 */ mr r3, r30
/* 8025B3B0 002582F0 4B FF FE 21 */ bl loadDemoArchive
lbl_8025B3B4:
/* 8025B3B4 002582F4 3C 60 80 40 */ lis r3, lbl_80406194@ha
/* 8025B3B8 002582F8 8C 03 61 94 */ lbzu r0, lbl_80406194@l(r3)
/* 8025B3BC 002582FC 7C 00 07 75 */ extsb. r0, r0
/* 8025B3C0 00258300 41 82 00 30 */ beq lbl_8025B3F0
/* 8025B3C4 00258304 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 8025B3C8 00258308 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 8025B3CC 0025830C 3C 84 00 02 */ addis r4, r4, 2
/* 8025B3D0 00258310 38 A0 00 80 */ li r5, 0x80
/* 8025B3D4 00258314 38 84 C2 F8 */ addi r4, r4, -15624
/* 8025B3D8 00258318 4B DE 0D 89 */ bl dRes_control_c_NS_syncRes
/* 8025B3DC 0025831C 2C 03 00 00 */ cmpwi r3, 0
/* 8025B3E0 00258320 41 80 00 10 */ blt lbl_8025B3F0
/* 8025B3E4 00258324 40 81 00 0C */ ble lbl_8025B3F0
/* 8025B3E8 00258328 38 60 00 00 */ li r3, 0
/* 8025B3EC 0025832C 48 00 01 60 */ b lbl_8025B54C
lbl_8025B3F0:
/* 8025B3F0 00258330 38 60 02 DC */ li r3, 0x2dc
/* 8025B3F4 00258334 7F C4 F3 78 */ mr r4, r30
/* 8025B3F8 00258338 38 A0 00 00 */ li r5, 0
/* 8025B3FC 0025833C 38 C0 FF FF */ li r6, -1
/* 8025B400 00258340 38 E0 00 00 */ li r7, 0
/* 8025B404 00258344 39 00 00 00 */ li r8, 0
/* 8025B408 00258348 39 20 FF FF */ li r9, -1
/* 8025B40C 0025834C 4B DB E9 8D */ bl fopAcM_create_X1_
/* 8025B410 00258350 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B414 00258354 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B418 00258358 3B E3 4F F8 */ addi r31, r3, 0x4ff8
/* 8025B41C 0025835C 7F E3 FB 78 */ mr r3, r31
/* 8025B420 00258360 4B DE B4 69 */ bl dEvent_manager_c_NS_demoInit
/* 8025B424 00258364 7F E3 FB 78 */ mr r3, r31
/* 8025B428 00258368 7F C4 F3 78 */ mr r4, r30
/* 8025B42C 0025836C 4B DE B4 D9 */ bl dEvent_manager_c_NS_roomInit
/* 8025B430 00258370 80 7D 01 CC */ lwz r3, 0x1cc(r29)
/* 8025B434 00258374 80 9D 01 D0 */ lwz r4, 0x1d0(r29)
/* 8025B438 00258378 7F C5 F3 78 */ mr r5, r30
/* 8025B43C 0025837C 4B DC B7 F9 */ bl dStage_dt_c_roomReLoader
/* 8025B440 00258380 7F C3 07 74 */ extsb r3, r30
/* 8025B444 00258384 4B DD 40 BD */ bl dComIfGp_ret_wp_set
/* 8025B448 00258388 38 00 FF FF */ li r0, -1
/* 8025B44C 0025838C 98 1D 01 D4 */ stb r0, 0x1d4(r29)
/* 8025B450 00258390 38 00 00 01 */ li r0, 1
/* 8025B454 00258394 98 1D 01 D5 */ stb r0, 0x1d5(r29)
/* 8025B458 00258398 48 00 00 F0 */ b lbl_8025B548
lbl_8025B45C:
/* 8025B45C 0025839C 2C 04 00 00 */ cmpwi r4, 0
/* 8025B460 002583A0 41 82 00 B8 */ beq lbl_8025B518
/* 8025B464 002583A4 80 6D 87 C0 */ lwz r3, lbl_80450D40-_SDA_BASE_(r13)
/* 8025B468 002583A8 80 9D 00 B4 */ lwz r4, 0xb4(r29)
/* 8025B46C 002583AC 4B DC 51 E1 */ bl fpcBs_Is_JustOfType
/* 8025B470 002583B0 2C 03 00 00 */ cmpwi r3, 0
/* 8025B474 002583B4 41 82 00 0C */ beq lbl_8025B480
/* 8025B478 002583B8 80 7D 00 C8 */ lwz r3, 0xc8(r29)
/* 8025B47C 002583BC 48 00 00 08 */ b lbl_8025B484
lbl_8025B480:
/* 8025B480 002583C0 38 60 FF FF */ li r3, -1
lbl_8025B484:
/* 8025B484 002583C4 4B FF FD 11 */ bl isCreating
/* 8025B488 002583C8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8025B48C 002583CC 41 82 00 0C */ beq lbl_8025B498
/* 8025B490 002583D0 38 60 00 00 */ li r3, 0
/* 8025B494 002583D4 48 00 00 B8 */ b lbl_8025B54C
lbl_8025B498:
/* 8025B498 002583D8 38 7D 00 BC */ addi r3, r29, 0xbc
.global deleteJugge
/* 8025B49C 002583DC 3C 80 80 26 */ lis r4, deleteJugge@ha
.global deleteJugge
/* 8025B4A0 002583E0 38 84 B1 50 */ addi r4, r4, deleteJugge@l
/* 8025B4A4 002583E4 38 A0 00 00 */ li r5, 0
/* 8025B4A8 002583E8 4B DC 67 81 */ bl fpcLyIt_Judge
/* 8025B4AC 002583EC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B4B0 002583F0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B4B4 002583F4 80 63 5D 3C */ lwz r3, 0x5d3c(r3)
/* 8025B4B8 002583F8 38 63 02 10 */ addi r3, r3, 0x210
/* 8025B4BC 002583FC 4B DF 04 2D */ bl dPa_control_c_NS_level_c_NS_allForceOnEventMove
/* 8025B4C0 00258400 7F C3 F3 78 */ mr r3, r30
/* 8025B4C4 00258404 4B DD 24 ED */ bl dStage_roomControl_c_NS_getZoneNo
/* 8025B4C8 00258408 54 64 28 34 */ slwi r4, r3, 5
/* 8025B4CC 0025840C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B4D0 00258410 38 03 61 C0 */ addi r0, r3, g_dComIfG_gameInfo@l
/* 8025B4D4 00258414 7C 60 22 14 */ add r3, r0, r4
/* 8025B4D8 00258418 38 63 09 B6 */ addi r3, r3, 0x9b6
/* 8025B4DC 0025841C 4B DD 98 11 */ bl clearRoomSwitch__13dSv_zoneBit_cFv
/* 8025B4E0 00258420 7F C3 F3 78 */ mr r3, r30
/* 8025B4E4 00258424 4B DD 24 CD */ bl dStage_roomControl_c_NS_getZoneNo
/* 8025B4E8 00258428 54 64 28 34 */ slwi r4, r3, 5
/* 8025B4EC 0025842C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B4F0 00258430 38 03 61 C0 */ addi r0, r3, g_dComIfG_gameInfo@l
/* 8025B4F4 00258434 7C 60 22 14 */ add r3, r0, r4
/* 8025B4F8 00258438 38 63 09 B6 */ addi r3, r3, 0x9b6
/* 8025B4FC 0025843C 4B DD 97 FD */ bl clearRoomItem__13dSv_zoneBit_cFv
/* 8025B500 00258440 88 1F 00 00 */ lbz r0, 0(r31)
/* 8025B504 00258444 54 00 06 F2 */ rlwinm r0, r0, 0, 0x1b, 0x19
/* 8025B508 00258448 98 1F 00 00 */ stb r0, 0(r31)
/* 8025B50C 0025844C 38 00 00 00 */ li r0, 0
/* 8025B510 00258450 98 1D 01 D4 */ stb r0, 0x1d4(r29)
/* 8025B514 00258454 48 00 00 34 */ b lbl_8025B548
lbl_8025B518:
/* 8025B518 00258458 2C 03 00 00 */ cmpwi r3, 0
/* 8025B51C 0025845C 41 82 00 2C */ beq lbl_8025B548
/* 8025B520 00258460 38 7D 00 BC */ addi r3, r29, 0xbc
.global objectDeleteJugge
/* 8025B524 00258464 3C 80 80 26 */ lis r4, objectDeleteJugge@ha
.global objectDeleteJugge
/* 8025B528 00258468 38 84 B0 F0 */ addi r4, r4, objectDeleteJugge@l
/* 8025B52C 0025846C 38 A0 00 00 */ li r5, 0
/* 8025B530 00258470 4B DC 66 F9 */ bl fpcLyIt_Judge
/* 8025B534 00258474 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B538 00258478 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B53C 0025847C 80 63 5D 3C */ lwz r3, 0x5d3c(r3)
/* 8025B540 00258480 38 63 02 10 */ addi r3, r3, 0x210
/* 8025B544 00258484 4B DF 03 A5 */ bl dPa_control_c_NS_level_c_NS_allForceOnEventMove
lbl_8025B548:
/* 8025B548 00258488 38 60 00 01 */ li r3, 1
lbl_8025B54C:
/* 8025B54C 0025848C 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B550 00258490 48 10 6C D9 */ bl _restgpr_29
/* 8025B554 00258494 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8025B558 00258498 7C 08 03 A6 */ mtlr r0
/* 8025B55C 0025849C 38 21 00 20 */ addi r1, r1, 0x20
/* 8025B560 002584A0 4E 80 00 20 */ blr
/* 8025B564 002584A4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025B568 002584A8 7C 08 02 A6 */ mflr r0
/* 8025B56C 002584AC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025B570 002584B0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8025B574 002584B4 93 C1 00 08 */ stw r30, 8(r1)
/* 8025B578 002584B8 7C 7F 1B 78 */ mr r31, r3
/* 8025B57C 002584BC 80 03 00 B0 */ lwz r0, 0xb0(r3)
/* 8025B580 002584C0 3C 80 80 3F */ lis r4, lbl_803F6094@ha
/* 8025B584 002584C4 38 84 60 94 */ addi r4, r4, lbl_803F6094@l
/* 8025B588 002584C8 1C 00 04 04 */ mulli r0, r0, 0x404
/* 8025B58C 002584CC 7F C4 02 14 */ add r30, r4, r0
/* 8025B590 002584D0 8C 9E 03 F4 */ lbzu r4, 0x3f4(r30)
/* 8025B594 002584D4 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 8025B598 002584D8 41 82 00 1C */ beq lbl_8025B5B4
/* 8025B59C 002584DC 54 80 07 FA */ rlwinm r0, r4, 0, 0x1f, 0x1d
/* 8025B5A0 002584E0 98 1E 00 00 */ stb r0, 0(r30)
/* 8025B5A4 002584E4 88 1E 00 00 */ lbz r0, 0(r30)
/* 8025B5A8 002584E8 60 00 00 01 */ ori r0, r0, 1
/* 8025B5AC 002584EC 98 1E 00 00 */ stb r0, 0(r30)
/* 8025B5B0 002584F0 48 00 00 A8 */ b lbl_8025B658
lbl_8025B5B4:
/* 8025B5B4 002584F4 4B FF FD 39 */ bl objectSetCheck
/* 8025B5B8 002584F8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8025B5BC 002584FC 41 82 00 9C */ beq lbl_8025B658
/* 8025B5C0 00258500 88 1E 00 00 */ lbz r0, 0(r30)
/* 8025B5C4 00258504 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8025B5C8 00258508 41 82 00 10 */ beq lbl_8025B5D8
/* 8025B5CC 0025850C 7F E3 FB 78 */ mr r3, r31
/* 8025B5D0 00258510 4B DC 37 6D */ bl fopScnM_DeleteReq
/* 8025B5D4 00258514 48 00 00 84 */ b lbl_8025B658
lbl_8025B5D8:
/* 8025B5D8 00258518 88 1F 01 D4 */ lbz r0, 0x1d4(r31)
/* 8025B5DC 0025851C 7C 00 07 75 */ extsb. r0, r0
/* 8025B5E0 00258520 40 80 00 78 */ bge lbl_8025B658
/* 8025B5E4 00258524 88 1F 01 D5 */ lbz r0, 0x1d5(r31)
/* 8025B5E8 00258528 28 00 00 00 */ cmplwi r0, 0
/* 8025B5EC 0025852C 41 82 00 6C */ beq lbl_8025B658
/* 8025B5F0 00258530 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B5F4 00258534 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B5F8 00258538 88 03 4F AD */ lbz r0, 0x4fad(r3)
/* 8025B5FC 0025853C 28 00 00 00 */ cmplwi r0, 0
/* 8025B600 00258540 40 82 00 58 */ bne lbl_8025B658
/* 8025B604 00258544 80 7F 00 B0 */ lwz r3, 0xb0(r31)
/* 8025B608 00258548 88 0D 87 E4 */ lbz r0, lbl_80450D64-_SDA_BASE_(r13)
/* 8025B60C 0025854C 7C 00 07 74 */ extsb r0, r0
/* 8025B610 00258550 7C 03 00 00 */ cmpw r3, r0
/* 8025B614 00258554 40 82 00 44 */ bne lbl_8025B658
/* 8025B618 00258558 80 6D 87 C0 */ lwz r3, lbl_80450D40-_SDA_BASE_(r13)
/* 8025B61C 0025855C 80 9F 00 B4 */ lwz r4, 0xb4(r31)
/* 8025B620 00258560 4B DC 50 2D */ bl fpcBs_Is_JustOfType
/* 8025B624 00258564 2C 03 00 00 */ cmpwi r3, 0
/* 8025B628 00258568 41 82 00 0C */ beq lbl_8025B634
/* 8025B62C 0025856C 80 7F 00 C8 */ lwz r3, 0xc8(r31)
/* 8025B630 00258570 48 00 00 08 */ b lbl_8025B638
lbl_8025B634:
/* 8025B634 00258574 38 60 FF FF */ li r3, -1
lbl_8025B638:
/* 8025B638 00258578 4B FF FB 5D */ bl isCreating
/* 8025B63C 0025857C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8025B640 00258580 41 82 00 10 */ beq lbl_8025B650
/* 8025B644 00258584 38 00 00 02 */ li r0, 2
/* 8025B648 00258588 98 0D 8B A5 */ stb r0, lbl_80451125-_SDA_BASE_(r13)
/* 8025B64C 0025858C 48 00 00 0C */ b lbl_8025B658
lbl_8025B650:
/* 8025B650 00258590 38 00 00 00 */ li r0, 0
/* 8025B654 00258594 98 1F 01 D5 */ stb r0, 0x1d5(r31)
lbl_8025B658:
/* 8025B658 00258598 38 60 00 01 */ li r3, 1
/* 8025B65C 0025859C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8025B660 002585A0 83 C1 00 08 */ lwz r30, 8(r1)
/* 8025B664 002585A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025B668 002585A8 7C 08 03 A6 */ mtlr r0
/* 8025B66C 002585AC 38 21 00 10 */ addi r1, r1, 0x10
/* 8025B670 002585B0 4E 80 00 20 */ blr
/* 8025B674 002585B4 38 60 00 01 */ li r3, 1
/* 8025B678 002585B8 4E 80 00 20 */ blr
.global isReadRoom
isReadRoom:
/* 8025B67C 002585BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025B680 002585C0 7C 08 02 A6 */ mflr r0
/* 8025B684 002585C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025B688 002585C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8025B68C 002585CC 7C 7F 1B 78 */ mr r31, r3
/* 8025B690 002585D0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B694 002585D4 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B698 002585D8 85 83 4E 20 */ lwzu r12, 0x4e20(r3)
/* 8025B69C 002585DC 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 8025B6A0 002585E0 7D 89 03 A6 */ mtctr r12
/* 8025B6A4 002585E4 4E 80 04 21 */ bctrl
/* 8025B6A8 002585E8 28 03 00 00 */ cmplwi r3, 0
/* 8025B6AC 002585EC 40 82 00 0C */ bne lbl_8025B6B8
/* 8025B6B0 002585F0 38 60 00 00 */ li r3, 0
/* 8025B6B4 002585F4 48 00 00 74 */ b lbl_8025B728
lbl_8025B6B8:
/* 8025B6B8 002585F8 80 03 00 00 */ lwz r0, 0(r3)
/* 8025B6BC 002585FC 7C 00 F8 00 */ cmpw r0, r31
/* 8025B6C0 00258600 41 81 00 0C */ bgt lbl_8025B6CC
/* 8025B6C4 00258604 38 60 00 00 */ li r3, 0
/* 8025B6C8 00258608 48 00 00 60 */ b lbl_8025B728
lbl_8025B6CC:
/* 8025B6CC 0025860C 80 83 00 04 */ lwz r4, 4(r3)
/* 8025B6D0 00258610 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B6D4 00258614 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B6D8 00258618 88 03 4E 18 */ lbz r0, 0x4e18(r3)
/* 8025B6DC 0025861C 7C 00 07 74 */ extsb r0, r0
/* 8025B6E0 00258620 54 00 10 3A */ slwi r0, r0, 2
/* 8025B6E4 00258624 7C 64 00 2E */ lwzx r3, r4, r0
/* 8025B6E8 00258628 80 83 00 04 */ lwz r4, 4(r3)
/* 8025B6EC 0025862C 88 03 00 00 */ lbz r0, 0(r3)
/* 8025B6F0 00258630 7C 09 03 A6 */ mtctr r0
/* 8025B6F4 00258634 2C 00 00 00 */ cmpwi r0, 0
/* 8025B6F8 00258638 40 81 00 2C */ ble lbl_8025B724
lbl_8025B6FC:
/* 8025B6FC 0025863C 88 64 00 00 */ lbz r3, 0(r4)
/* 8025B700 00258640 54 60 06 31 */ rlwinm. r0, r3, 0, 0x18, 0x18
/* 8025B704 00258644 41 82 00 18 */ beq lbl_8025B71C
/* 8025B708 00258648 54 60 06 BE */ clrlwi r0, r3, 0x1a
/* 8025B70C 0025864C 7C 1F 00 00 */ cmpw r31, r0
/* 8025B710 00258650 40 82 00 0C */ bne lbl_8025B71C
/* 8025B714 00258654 38 60 00 01 */ li r3, 1
/* 8025B718 00258658 48 00 00 10 */ b lbl_8025B728
lbl_8025B71C:
/* 8025B71C 0025865C 38 84 00 01 */ addi r4, r4, 1
/* 8025B720 00258660 42 00 FF DC */ bdnz lbl_8025B6FC
lbl_8025B724:
/* 8025B724 00258664 38 60 00 00 */ li r3, 0
lbl_8025B728:
/* 8025B728 00258668 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8025B72C 0025866C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025B730 00258670 7C 08 03 A6 */ mtlr r0
/* 8025B734 00258674 38 21 00 10 */ addi r1, r1, 0x10
/* 8025B738 00258678 4E 80 00 20 */ blr
/* 8025B73C 0025867C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8025B740 00258680 7C 08 02 A6 */ mflr r0
/* 8025B744 00258684 90 01 00 24 */ stw r0, 0x24(r1)
/* 8025B748 00258688 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B74C 0025868C 48 10 6A 8D */ bl _savegpr_28
/* 8025B750 00258690 7C 7E 1B 78 */ mr r30, r3
/* 8025B754 00258694 83 E3 00 B0 */ lwz r31, 0xb0(r3)
/* 8025B758 00258698 38 80 00 00 */ li r4, 0
/* 8025B75C 0025869C 3C 60 80 3F */ lis r3, lbl_803F6094@ha
/* 8025B760 002586A0 38 63 60 94 */ addi r3, r3, lbl_803F6094@l
/* 8025B764 002586A4 1C 1F 04 04 */ mulli r0, r31, 0x404
/* 8025B768 002586A8 7C 63 02 14 */ add r3, r3, r0
/* 8025B76C 002586AC 98 83 03 F4 */ stb r4, 0x3f4(r3)
/* 8025B770 002586B0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B774 002586B4 3B A3 61 C0 */ addi r29, r3, g_dComIfG_gameInfo@l
/* 8025B778 002586B8 3B 9D 4E C4 */ addi r28, r29, 0x4ec4
/* 8025B77C 002586BC 7F 83 E3 78 */ mr r3, r28
/* 8025B780 002586C0 7F E4 FB 78 */ mr r4, r31
/* 8025B784 002586C4 4B DC 8C 01 */ bl dStage_roomControl_c_NS_getStatusRoomDt
/* 8025B788 002586C8 81 83 00 00 */ lwz r12, 0(r3)
/* 8025B78C 002586CC 81 8C 00 08 */ lwz r12, 8(r12)
/* 8025B790 002586D0 7D 89 03 A6 */ mtctr r12
/* 8025B794 002586D4 4E 80 04 21 */ bctrl
/* 8025B798 002586D8 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13)
/* 8025B79C 002586DC 80 03 00 00 */ lwz r0, 0(r3)
/* 8025B7A0 002586E0 2C 00 00 00 */ cmpwi r0, 0
/* 8025B7A4 002586E4 40 82 00 54 */ bne lbl_8025B7F8
/* 8025B7A8 002586E8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B7AC 002586EC 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B7B0 002586F0 88 03 4E 1C */ lbz r0, 0x4e1c(r3)
/* 8025B7B4 002586F4 7C 00 07 75 */ extsb. r0, r0
/* 8025B7B8 002586F8 41 82 00 40 */ beq lbl_8025B7F8
/* 8025B7BC 002586FC 38 7D 4E 0E */ addi r3, r29, 0x4e0e
/* 8025B7C0 00258700 38 9D 4E 00 */ addi r4, r29, 0x4e00
/* 8025B7C4 00258704 48 10 D1 D1 */ bl strcmp
/* 8025B7C8 00258708 2C 03 00 00 */ cmpwi r3, 0
/* 8025B7CC 0025870C 40 82 00 2C */ bne lbl_8025B7F8
/* 8025B7D0 00258710 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B7D4 00258714 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B7D8 00258718 88 03 4E 18 */ lbz r0, 0x4e18(r3)
/* 8025B7DC 0025871C 7C 00 07 74 */ extsb r0, r0
/* 8025B7E0 00258720 7C 1F 00 00 */ cmpw r31, r0
/* 8025B7E4 00258724 41 82 00 48 */ beq lbl_8025B82C
/* 8025B7E8 00258728 7F E3 FB 78 */ mr r3, r31
/* 8025B7EC 0025872C 4B FF FE 91 */ bl isReadRoom
/* 8025B7F0 00258730 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8025B7F4 00258734 40 82 00 38 */ bne lbl_8025B82C
lbl_8025B7F8:
/* 8025B7F8 00258738 80 7E 00 B0 */ lwz r3, 0xb0(r30)
/* 8025B7FC 0025873C 4B DD 3C C1 */ bl dComIfG_getRoomArcName
/* 8025B800 00258740 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 8025B804 00258744 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 8025B808 00258748 3C 84 00 02 */ addis r4, r4, 2
/* 8025B80C 0025874C 38 84 D4 F8 */ addi r4, r4, -11016
/* 8025B810 00258750 38 A0 00 40 */ li r5, 0x40
/* 8025B814 00258754 4B DE 09 81 */ bl dRes_control_c_NS_deleteRes
/* 8025B818 00258758 7F E3 FB 78 */ mr r3, r31
/* 8025B81C 0025875C 4B DC 8B 95 */ bl dStage_roomControl_c_NS_getMemoryBlock
/* 8025B820 00258760 28 03 00 00 */ cmplwi r3, 0
/* 8025B824 00258764 41 82 00 08 */ beq lbl_8025B82C
/* 8025B828 00258768 48 07 2D A5 */ bl freeAll__7JKRHeapFv
lbl_8025B82C:
/* 8025B82C 0025876C 7F 83 E3 78 */ mr r3, r28
/* 8025B830 00258770 7F E4 FB 78 */ mr r4, r31
/* 8025B834 00258774 4B DC 8B 51 */ bl dStage_roomControl_c_NS_getStatusRoomDt
/* 8025B838 00258778 81 83 00 00 */ lwz r12, 0(r3)
/* 8025B83C 0025877C 81 8C 00 08 */ lwz r12, 8(r12)
/* 8025B840 00258780 7D 89 03 A6 */ mtctr r12
/* 8025B844 00258784 4E 80 04 21 */ bctrl
/* 8025B848 00258788 38 7D 4F F8 */ addi r3, r29, 0x4ff8
/* 8025B84C 0025878C 7F E4 FB 78 */ mr r4, r31
/* 8025B850 00258790 4B DE B1 9D */ bl dEvent_manager_c_NS_roomFinish
/* 8025B854 00258794 38 60 00 01 */ li r3, 1
/* 8025B858 00258798 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B85C 0025879C 48 10 69 C9 */ bl _restgpr_28
/* 8025B860 002587A0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8025B864 002587A4 7C 08 03 A6 */ mtlr r0
/* 8025B868 002587A8 38 21 00 20 */ addi r1, r1, 0x20
/* 8025B86C 002587AC 4E 80 00 20 */ blr
/* 8025B870 002587B0 80 03 00 B0 */ lwz r0, 0xb0(r3)
/* 8025B874 002587B4 28 03 00 00 */ cmplwi r3, 0
/* 8025B878 002587B8 41 82 00 0C */ beq lbl_8025B884
/* 8025B87C 002587BC 80 83 00 04 */ lwz r4, 4(r3)
/* 8025B880 002587C0 48 00 00 08 */ b lbl_8025B888
lbl_8025B884:
/* 8025B884 002587C4 38 80 FF FF */ li r4, -1
lbl_8025B888:
/* 8025B888 002587C8 3C 60 80 3F */ lis r3, lbl_803F6094@ha
/* 8025B88C 002587CC 38 63 60 94 */ addi r3, r3, lbl_803F6094@l
/* 8025B890 002587D0 1C 00 04 04 */ mulli r0, r0, 0x404
/* 8025B894 002587D4 7C 63 02 14 */ add r3, r3, r0
/* 8025B898 002587D8 90 83 03 FC */ stw r4, 0x3fc(r3)
/* 8025B89C 002587DC 38 60 00 02 */ li r3, 2
/* 8025B8A0 002587E0 4E 80 00 20 */ blr
/* 8025B8A4 002587E4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8025B8A8 002587E8 7C 08 02 A6 */ mflr r0
/* 8025B8AC 002587EC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8025B8B0 002587F0 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B8B4 002587F4 48 10 69 29 */ bl _savegpr_29
/* 8025B8B8 002587F8 38 00 00 01 */ li r0, 1
/* 8025B8BC 002587FC 98 03 01 D8 */ stb r0, 0x1d8(r3)
/* 8025B8C0 00258800 83 A3 00 B0 */ lwz r29, 0xb0(r3)
/* 8025B8C4 00258804 7F A3 EB 78 */ mr r3, r29
/* 8025B8C8 00258808 4B DD 3B F5 */ bl dComIfG_getRoomArcName
/* 8025B8CC 0025880C 7C 7F 1B 78 */ mr r31, r3
/* 8025B8D0 00258810 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 8025B8D4 00258814 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 8025B8D8 00258818 3F C4 00 02 */ addis r30, r4, 2
/* 8025B8DC 0025881C 38 9E D4 F8 */ addi r4, r30, -11016
/* 8025B8E0 00258820 38 A0 00 40 */ li r5, 0x40
/* 8025B8E4 00258824 3B DE C2 F8 */ addi r30, r30, -15624
/* 8025B8E8 00258828 4B DE 08 79 */ bl dRes_control_c_NS_syncRes
/* 8025B8EC 0025882C 2C 03 00 00 */ cmpwi r3, 0
/* 8025B8F0 00258830 40 80 00 74 */ bge lbl_8025B964
/* 8025B8F4 00258834 7F A3 EB 78 */ mr r3, r29
/* 8025B8F8 00258838 4B DC 8A B9 */ bl dStage_roomControl_c_NS_getMemoryBlock
/* 8025B8FC 0025883C 7C 7D 1B 79 */ or. r29, r3, r3
/* 8025B900 00258840 41 82 00 18 */ beq lbl_8025B918
/* 8025B904 00258844 48 07 44 61 */ bl getTotalUsedSize__10JKRExpHeapCFv
/* 8025B908 00258848 2C 03 00 00 */ cmpwi r3, 0
/* 8025B90C 0025884C 41 82 00 38 */ beq lbl_8025B944
/* 8025B910 00258850 38 60 00 00 */ li r3, 0
/* 8025B914 00258854 48 00 00 54 */ b lbl_8025B968
lbl_8025B918:
/* 8025B918 00258858 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B91C 0025885C 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B920 00258860 85 83 4E 20 */ lwzu r12, 0x4e20(r3)
/* 8025B924 00258864 81 8C 00 BC */ lwz r12, 0xbc(r12)
/* 8025B928 00258868 7D 89 03 A6 */ mtctr r12
/* 8025B92C 0025886C 4E 80 04 21 */ bctrl
/* 8025B930 00258870 A0 03 00 0A */ lhz r0, 0xa(r3)
/* 8025B934 00258874 54 00 04 E7 */ rlwinm. r0, r0, 0, 0x13, 0x13
/* 8025B938 00258878 41 82 00 0C */ beq lbl_8025B944
/* 8025B93C 0025887C 4B DB 34 B1 */ bl mDoExt_getArchiveHeap
/* 8025B940 00258880 7C 7D 1B 78 */ mr r29, r3
lbl_8025B944:
/* 8025B944 00258884 7F C3 F3 78 */ mr r3, r30
/* 8025B948 00258888 7F E4 FB 78 */ mr r4, r31
/* 8025B94C 0025888C 7F A5 EB 78 */ mr r5, r29
/* 8025B950 00258890 4B DE 0C 6D */ bl dRes_control_c_NS_setStageRes
/* 8025B954 00258894 2C 03 00 00 */ cmpwi r3, 0
/* 8025B958 00258898 40 82 00 0C */ bne lbl_8025B964
/* 8025B95C 0025889C 38 60 00 05 */ li r3, 5
/* 8025B960 002588A0 48 00 00 08 */ b lbl_8025B968
lbl_8025B964:
/* 8025B964 002588A4 38 60 00 02 */ li r3, 2
lbl_8025B968:
/* 8025B968 002588A8 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B96C 002588AC 48 10 68 BD */ bl _restgpr_29
/* 8025B970 002588B0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8025B974 002588B4 7C 08 03 A6 */ mtlr r0
/* 8025B978 002588B8 38 21 00 20 */ addi r1, r1, 0x20
/* 8025B97C 002588BC 4E 80 00 20 */ blr
/* 8025B980 002588C0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8025B984 002588C4 7C 08 02 A6 */ mflr r0
/* 8025B988 002588C8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8025B98C 002588CC 39 61 00 20 */ addi r11, r1, 0x20
/* 8025B990 002588D0 48 10 68 49 */ bl _savegpr_28
/* 8025B994 002588D4 7C 7C 1B 78 */ mr r28, r3
/* 8025B998 002588D8 80 63 00 B0 */ lwz r3, 0xb0(r3)
/* 8025B99C 002588DC 4B DD 3B 21 */ bl dComIfG_getRoomArcName
/* 8025B9A0 002588E0 7C 7F 1B 78 */ mr r31, r3
/* 8025B9A4 002588E4 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 8025B9A8 002588E8 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 8025B9AC 002588EC 3C 84 00 02 */ addis r4, r4, 2
/* 8025B9B0 002588F0 3B C4 D4 F8 */ addi r30, r4, -11016
/* 8025B9B4 002588F4 7F C4 F3 78 */ mr r4, r30
/* 8025B9B8 002588F8 38 A0 00 40 */ li r5, 0x40
/* 8025B9BC 002588FC 4B DE 07 A5 */ bl dRes_control_c_NS_syncRes
/* 8025B9C0 00258900 2C 03 00 00 */ cmpwi r3, 0
/* 8025B9C4 00258904 40 80 00 0C */ bge lbl_8025B9D0
/* 8025B9C8 00258908 38 60 00 05 */ li r3, 5
/* 8025B9CC 0025890C 48 00 00 C8 */ b lbl_8025BA94
lbl_8025B9D0:
/* 8025B9D0 00258910 41 82 00 0C */ beq lbl_8025B9DC
/* 8025B9D4 00258914 38 60 00 00 */ li r3, 0
/* 8025B9D8 00258918 48 00 00 BC */ b lbl_8025BA94
lbl_8025B9DC:
/* 8025B9DC 0025891C 83 BC 00 B0 */ lwz r29, 0xb0(r28)
/* 8025B9E0 00258920 7F A3 EB 78 */ mr r3, r29
/* 8025B9E4 00258924 4B DD 1F CD */ bl dStage_roomControl_c_NS_getZoneNo
/* 8025B9E8 00258928 2C 03 00 00 */ cmpwi r3, 0
/* 8025B9EC 0025892C 40 80 00 20 */ bge lbl_8025BA0C
/* 8025B9F0 00258930 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025B9F4 00258934 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025B9F8 00258938 7F A4 EB 78 */ mr r4, r29
/* 8025B9FC 0025893C 4B DD 97 A9 */ bl createZone__10dSv_info_cFi
/* 8025BA00 00258940 7C 64 1B 78 */ mr r4, r3
/* 8025BA04 00258944 7F A3 EB 78 */ mr r3, r29
/* 8025BA08 00258948 48 00 00 A5 */ bl dStage_roomControl_c_NS_setZoneNo
lbl_8025BA0C:
/* 8025BA0C 0025894C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha
/* 8025BA10 00258950 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l
/* 8025BA14 00258954 38 63 4E C4 */ addi r3, r3, 0x4ec4
/* 8025BA18 00258958 7F A4 EB 78 */ mr r4, r29
/* 8025BA1C 0025895C 4B DC 89 69 */ bl dStage_roomControl_c_NS_getStatusRoomDt
/* 8025BA20 00258960 90 7C 01 D0 */ stw r3, 0x1d0(r28)
/* 8025BA24 00258964 80 7C 01 D0 */ lwz r3, 0x1d0(r28)
/* 8025BA28 00258968 9B A3 00 04 */ stb r29, 4(r3)
/* 8025BA2C 0025896C 7F E3 FB 78 */ mr r3, r31
/* 8025BA30 00258970 3C 80 80 3A */ lis r4, lbl_8039A388@ha
/* 8025BA34 00258974 38 84 A3 88 */ addi r4, r4, lbl_8039A388@l
/* 8025BA38 00258978 38 84 00 42 */ addi r4, r4, 0x42
/* 8025BA3C 0025897C 7F C5 F3 78 */ mr r5, r30
/* 8025BA40 00258980 38 C0 00 40 */ li r6, 0x40
/* 8025BA44 00258984 4B DE 09 39 */ bl dRes_control_c_NS_getRes_X1_
/* 8025BA48 00258988 90 7C 01 CC */ stw r3, 0x1cc(r28)
/* 8025BA4C 0025898C 80 7C 01 CC */ lwz r3, 0x1cc(r28)
/* 8025BA50 00258990 28 03 00 00 */ cmplwi r3, 0
/* 8025BA54 00258994 41 82 00 10 */ beq lbl_8025BA64
/* 8025BA58 00258998 80 9C 01 D0 */ lwz r4, 0x1d0(r28)
/* 8025BA5C 0025899C 7F A5 EB 78 */ mr r5, r29
/* 8025BA60 002589A0 4B DC B1 5D */ bl dStage_dt_c_roomLoader
lbl_8025BA64:
/* 8025BA64 002589A4 3B C0 00 00 */ li r30, 0
/* 8025BA68 002589A8 7F A3 EB 78 */ mr r3, r29
/* 8025BA6C 002589AC 4B DC 89 45 */ bl dStage_roomControl_c_NS_getMemoryBlock
/* 8025BA70 002589B0 28 03 00 00 */ cmplwi r3, 0
/* 8025BA74 002589B4 41 82 00 0C */ beq lbl_8025BA80
/* 8025BA78 002589B8 4B DB 37 55 */ bl mDoExt_setCurrentHeap
/* 8025BA7C 002589BC 7C 7E 1B 78 */ mr r30, r3
lbl_8025BA80:
/* 8025BA80 002589C0 28 1E 00 00 */ cmplwi r30, 0
/* 8025BA84 002589C4 41 82 00 0C */ beq lbl_8025BA90
/* 8025BA88 002589C8 7F C3 F3 78 */ mr r3, r30
/* 8025BA8C 002589CC 4B DB 37 41 */ bl mDoExt_setCurrentHeap
lbl_8025BA90:
/* 8025BA90 002589D0 38 60 00 02 */ li r3, 2
lbl_8025BA94:
/* 8025BA94 002589D4 39 61 00 20 */ addi r11, r1, 0x20
/* 8025BA98 002589D8 48 10 67 8D */ bl _restgpr_28
/* 8025BA9C 002589DC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8025BAA0 002589E0 7C 08 03 A6 */ mtlr r0
/* 8025BAA4 002589E4 38 21 00 20 */ addi r1, r1, 0x20
/* 8025BAA8 002589E8 4E 80 00 20 */ blr
.global dStage_roomControl_c_NS_setZoneNo
dStage_roomControl_c_NS_setZoneNo:
/* 8025BAAC 002589EC 3C A0 80 3F */ lis r5, lbl_803F6094@ha
/* 8025BAB0 002589F0 38 A5 60 94 */ addi r5, r5, lbl_803F6094@l
/* 8025BAB4 002589F4 1C 03 04 04 */ mulli r0, r3, 0x404
/* 8025BAB8 002589F8 7C 65 02 14 */ add r3, r5, r0
/* 8025BABC 002589FC 98 83 03 F7 */ stb r4, 0x3f7(r3)
/* 8025BAC0 00258A00 4E 80 00 20 */ blr
/* 8025BAC4 00258A04 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025BAC8 00258A08 7C 08 02 A6 */ mflr r0
/* 8025BACC 00258A0C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025BAD0 00258A10 4B FF F8 1D */ bl objectSetCheck
/* 8025BAD4 00258A14 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8025BAD8 00258A18 20 00 00 00 */ subfic r0, r0, 0
/* 8025BADC 00258A1C 7C 60 01 10 */ subfe r3, r0, r0
/* 8025BAE0 00258A20 38 00 00 02 */ li r0, 2
/* 8025BAE4 00258A24 7C 03 18 38 */ and r3, r0, r3
/* 8025BAE8 00258A28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025BAEC 00258A2C 7C 08 03 A6 */ mtlr r0
/* 8025BAF0 00258A30 38 21 00 10 */ addi r1, r1, 0x10
/* 8025BAF4 00258A34 4E 80 00 20 */ blr
/* 8025BAF8 00258A38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025BAFC 00258A3C 7C 08 02 A6 */ mflr r0
/* 8025BB00 00258A40 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025BB04 00258A44 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 8025BB08 00258A48 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l
/* 8025BB0C 00258A4C 80 04 5D AC */ lwz r0, 0x5dac(r4)
/* 8025BB10 00258A50 28 00 00 00 */ cmplwi r0, 0
/* 8025BB14 00258A54 40 82 00 0C */ bne lbl_8025BB20
/* 8025BB18 00258A58 38 60 00 00 */ li r3, 0
/* 8025BB1C 00258A5C 48 00 00 1C */ b lbl_8025BB38
lbl_8025BB20:
/* 8025BB20 00258A60 4B FF F7 CD */ bl objectSetCheck
/* 8025BB24 00258A64 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8025BB28 00258A68 20 00 00 00 */ subfic r0, r0, 0
/* 8025BB2C 00258A6C 7C 60 01 10 */ subfe r3, r0, r0
/* 8025BB30 00258A70 38 00 00 04 */ li r0, 4
/* 8025BB34 00258A74 7C 03 18 38 */ and r3, r0, r3
lbl_8025BB38:
/* 8025BB38 00258A78 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025BB3C 00258A7C 7C 08 03 A6 */ mtlr r0
/* 8025BB40 00258A80 38 21 00 10 */ addi r1, r1, 0x10
/* 8025BB44 00258A84 4E 80 00 20 */ blr
/* 8025BB48 00258A88 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8025BB4C 00258A8C 7C 08 02 A6 */ mflr r0
/* 8025BB50 00258A90 90 01 00 14 */ stw r0, 0x14(r1)
/* 8025BB54 00258A94 7C 65 1B 78 */ mr r5, r3
/* 8025BB58 00258A98 38 65 01 C4 */ addi r3, r5, 0x1c4
/* 8025BB5C 00258A9C 3C 80 80 3C */ lis r4, lbl_803C3260@ha
/* 8025BB60 00258AA0 38 84 32 60 */ addi r4, r4, lbl_803C3260@l
/* 8025BB64 00258AA4 4B DD 3F BD */ bl dComLbG_PhaseHandler
/* 8025BB68 00258AA8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025BB6C 00258AAC 7C 08 03 A6 */ mtlr r0
/* 8025BB70 00258AB0 38 21 00 10 */ addi r1, r1, 0x10
/* 8025BB74 00258AB4 4E 80 00 20 */ blr