mirror of
https://github.com/pmret/papermario.git
synced 2024-11-19 09:22:30 +01:00
402 lines
20 KiB
ArmAsm
402 lines
20 KiB
ArmAsm
|
.set noat # allow manual use of $at
|
||
|
.set noreorder # don't insert nops after branches
|
||
|
|
||
|
glabel func_80045CDC
|
||
|
/* 210DC 80045CDC 27BDFFC8 */ addiu $sp, $sp, -0x38
|
||
|
/* 210E0 80045CE0 AFB40020 */ sw $s4, 0x20($sp)
|
||
|
/* 210E4 80045CE4 3C14800A */ lui $s4, %hi(D_8009ED54)
|
||
|
/* 210E8 80045CE8 8E94ED54 */ lw $s4, %lo(D_8009ED54)($s4)
|
||
|
/* 210EC 80045CEC AFB50024 */ sw $s5, 0x24($sp)
|
||
|
/* 210F0 80045CF0 0000A82D */ daddu $s5, $zero, $zero
|
||
|
/* 210F4 80045CF4 AFB20018 */ sw $s2, 0x18($sp)
|
||
|
/* 210F8 80045CF8 24120001 */ addiu $s2, $zero, 1
|
||
|
/* 210FC 80045CFC AFB3001C */ sw $s3, 0x1c($sp)
|
||
|
/* 21100 80045D00 24130002 */ addiu $s3, $zero, 2
|
||
|
/* 21104 80045D04 AFB60028 */ sw $s6, 0x28($sp)
|
||
|
/* 21108 80045D08 24160002 */ addiu $s6, $zero, 2
|
||
|
/* 2110C 80045D0C AFB7002C */ sw $s7, 0x2c($sp)
|
||
|
/* 21110 80045D10 24170014 */ addiu $s7, $zero, 0x14
|
||
|
/* 21114 80045D14 AFBF0030 */ sw $ra, 0x30($sp)
|
||
|
/* 21118 80045D18 AFB10014 */ sw $s1, 0x14($sp)
|
||
|
/* 2111C 80045D1C AFB00010 */ sw $s0, 0x10($sp)
|
||
|
/* 21120 80045D20 26910085 */ addiu $s1, $s4, 0x85
|
||
|
.L80045D24:
|
||
|
/* 21124 80045D24 8E820000 */ lw $v0, ($s4)
|
||
|
/* 21128 80045D28 50400149 */ beql $v0, $zero, .L80046250
|
||
|
/* 2112C 80045D2C 26B50001 */ addiu $s5, $s5, 1
|
||
|
/* 21130 80045D30 8222FFB5 */ lb $v0, -0x4b($s1)
|
||
|
/* 21134 80045D34 1452003A */ bne $v0, $s2, .L80045E20
|
||
|
/* 21138 80045D38 00000000 */ nop
|
||
|
/* 2113C 80045D3C 9222FFB3 */ lbu $v0, -0x4d($s1)
|
||
|
/* 21140 80045D40 2442FFFD */ addiu $v0, $v0, -3
|
||
|
/* 21144 80045D44 00021600 */ sll $v0, $v0, 0x18
|
||
|
/* 21148 80045D48 00021E03 */ sra $v1, $v0, 0x18
|
||
|
/* 2114C 80045D4C 2C620008 */ sltiu $v0, $v1, 8
|
||
|
/* 21150 80045D50 10400026 */ beqz $v0, .L80045DEC
|
||
|
/* 21154 80045D54 00031080 */ sll $v0, $v1, 2
|
||
|
/* 21158 80045D58 3C01800A */ lui $at, %hi(D_800986A8)
|
||
|
/* 2115C 80045D5C 00220821 */ addu $at, $at, $v0
|
||
|
/* 21160 80045D60 8C2286A8 */ lw $v0, %lo(D_800986A8)($at)
|
||
|
/* 21164 80045D64 00400008 */ jr $v0
|
||
|
/* 21168 80045D68 00000000 */ nop
|
||
|
/* 2116C 80045D6C 3C048010 */ lui $a0, %hi(D_80104E54)
|
||
|
/* 21170 80045D70 24844E54 */ addiu $a0, $a0, %lo(D_80104E54)
|
||
|
/* 21174 80045D74 0801177D */ j .L80045DF4
|
||
|
/* 21178 80045D78 00000000 */ nop
|
||
|
/* 2117C 80045D7C 3C048010 */ lui $a0, %hi(D_801056AC)
|
||
|
/* 21180 80045D80 248456AC */ addiu $a0, $a0, %lo(D_801056AC)
|
||
|
/* 21184 80045D84 0801177D */ j .L80045DF4
|
||
|
/* 21188 80045D88 00000000 */ nop
|
||
|
/* 2118C 80045D8C 3C048010 */ lui $a0, %hi(D_80105A90)
|
||
|
/* 21190 80045D90 24845A90 */ addiu $a0, $a0, %lo(D_80105A90)
|
||
|
/* 21194 80045D94 0801177D */ j .L80045DF4
|
||
|
/* 21198 80045D98 00000000 */ nop
|
||
|
/* 2119C 80045D9C 3C048010 */ lui $a0, %hi(D_80106430)
|
||
|
/* 211A0 80045DA0 24846430 */ addiu $a0, $a0, %lo(D_80106430)
|
||
|
/* 211A4 80045DA4 0801177D */ j .L80045DF4
|
||
|
/* 211A8 80045DA8 00000000 */ nop
|
||
|
/* 211AC 80045DAC 3C048010 */ lui $a0, %hi(D_801067A0)
|
||
|
/* 211B0 80045DB0 248467A0 */ addiu $a0, $a0, %lo(D_801067A0)
|
||
|
/* 211B4 80045DB4 0801177D */ j .L80045DF4
|
||
|
/* 211B8 80045DB8 00000000 */ nop
|
||
|
/* 211BC 80045DBC 3C048010 */ lui $a0, %hi(D_80105DE4)
|
||
|
/* 211C0 80045DC0 24845DE4 */ addiu $a0, $a0, %lo(D_80105DE4)
|
||
|
/* 211C4 80045DC4 0801177D */ j .L80045DF4
|
||
|
/* 211C8 80045DC8 00000000 */ nop
|
||
|
/* 211CC 80045DCC 3C048010 */ lui $a0, %hi(D_80106AF4)
|
||
|
/* 211D0 80045DD0 24846AF4 */ addiu $a0, $a0, %lo(D_80106AF4)
|
||
|
/* 211D4 80045DD4 0801177D */ j .L80045DF4
|
||
|
/* 211D8 80045DD8 00000000 */ nop
|
||
|
/* 211DC 80045DDC 3C048010 */ lui $a0, %hi(D_80106138)
|
||
|
/* 211E0 80045DE0 24846138 */ addiu $a0, $a0, %lo(D_80106138)
|
||
|
/* 211E4 80045DE4 0801177D */ j .L80045DF4
|
||
|
/* 211E8 80045DE8 00000000 */ nop
|
||
|
.L80045DEC:
|
||
|
/* 211EC 80045DEC 3C048008 */ lui $a0, %hi(D_800804C0)
|
||
|
/* 211F0 80045DF0 248404C0 */ addiu $a0, $a0, %lo(D_800804C0)
|
||
|
.L80045DF4:
|
||
|
/* 211F4 80045DF4 0C051955 */ jal func_80146554
|
||
|
/* 211F8 80045DF8 00000000 */ nop
|
||
|
/* 211FC 80045DFC AE22FFBB */ sw $v0, -0x45($s1)
|
||
|
/* 21200 80045E00 0040802D */ daddu $s0, $v0, $zero
|
||
|
/* 21204 80045E04 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 21208 80045E08 0C0526AC */ jal func_80149AB0
|
||
|
/* 2120C 80045E0C 24050002 */ addiu $a1, $zero, 2
|
||
|
/* 21210 80045E10 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 21214 80045E14 0C0526AC */ jal func_80149AB0
|
||
|
/* 21218 80045E18 24050080 */ addiu $a1, $zero, 0x80
|
||
|
/* 2121C 80045E1C A233FFB5 */ sb $s3, -0x4b($s1)
|
||
|
.L80045E20:
|
||
|
/* 21220 80045E20 8223FFB6 */ lb $v1, -0x4a($s1)
|
||
|
/* 21224 80045E24 10720007 */ beq $v1, $s2, .L80045E44
|
||
|
/* 21228 80045E28 28620002 */ slti $v0, $v1, 2
|
||
|
/* 2122C 80045E2C 1440004C */ bnez $v0, .L80045F60
|
||
|
/* 21230 80045E30 00000000 */ nop
|
||
|
/* 21234 80045E34 10760040 */ beq $v1, $s6, .L80045F38
|
||
|
/* 21238 80045E38 00000000 */ nop
|
||
|
/* 2123C 80045E3C 080117D8 */ j .L80045F60
|
||
|
/* 21240 80045E40 00000000 */ nop
|
||
|
.L80045E44:
|
||
|
/* 21244 80045E44 9222FFB4 */ lbu $v0, -0x4c($s1)
|
||
|
/* 21248 80045E48 2442FFFD */ addiu $v0, $v0, -3
|
||
|
/* 2124C 80045E4C 00021600 */ sll $v0, $v0, 0x18
|
||
|
/* 21250 80045E50 00021E03 */ sra $v1, $v0, 0x18
|
||
|
/* 21254 80045E54 2C620008 */ sltiu $v0, $v1, 8
|
||
|
/* 21258 80045E58 1040002E */ beqz $v0, .L80045F14
|
||
|
/* 2125C 80045E5C 00031080 */ sll $v0, $v1, 2
|
||
|
/* 21260 80045E60 3C01800A */ lui $at, %hi(D_800986C8)
|
||
|
/* 21264 80045E64 00220821 */ addu $at, $at, $v0
|
||
|
/* 21268 80045E68 8C2286C8 */ lw $v0, %lo(D_800986C8)($at)
|
||
|
/* 2126C 80045E6C 00400008 */ jr $v0
|
||
|
/* 21270 80045E70 00000000 */ nop
|
||
|
/* 21274 80045E74 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 21278 80045E78 3C058010 */ lui $a1, %hi(D_80104FF4)
|
||
|
/* 2127C 80045E7C 24A54FF4 */ addiu $a1, $a1, %lo(D_80104FF4)
|
||
|
/* 21280 80045E80 080117C8 */ j .L80045F20
|
||
|
/* 21284 80045E84 00000000 */ nop
|
||
|
/* 21288 80045E88 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 2128C 80045E8C 3C058010 */ lui $a1, %hi(D_801058DC)
|
||
|
/* 21290 80045E90 24A558DC */ addiu $a1, $a1, %lo(D_801058DC)
|
||
|
/* 21294 80045E94 080117C8 */ j .L80045F20
|
||
|
/* 21298 80045E98 00000000 */ nop
|
||
|
/* 2129C 80045E9C 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 212A0 80045EA0 3C058010 */ lui $a1, %hi(D_80105C30)
|
||
|
/* 212A4 80045EA4 24A55C30 */ addiu $a1, $a1, %lo(D_80105C30)
|
||
|
/* 212A8 80045EA8 080117C8 */ j .L80045F20
|
||
|
/* 212AC 80045EAC 00000000 */ nop
|
||
|
/* 212B0 80045EB0 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 212B4 80045EB4 3C058010 */ lui $a1, %hi(D_80106430)
|
||
|
/* 212B8 80045EB8 24A56430 */ addiu $a1, $a1, %lo(D_80106430)
|
||
|
/* 212BC 80045EBC 080117C8 */ j .L80045F20
|
||
|
/* 212C0 80045EC0 00000000 */ nop
|
||
|
/* 212C4 80045EC4 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 212C8 80045EC8 3C058010 */ lui $a1, %hi(D_80106940)
|
||
|
/* 212CC 80045ECC 24A56940 */ addiu $a1, $a1, %lo(D_80106940)
|
||
|
/* 212D0 80045ED0 080117C8 */ j .L80045F20
|
||
|
/* 212D4 80045ED4 00000000 */ nop
|
||
|
/* 212D8 80045ED8 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 212DC 80045EDC 3C058010 */ lui $a1, %hi(D_80105F84)
|
||
|
/* 212E0 80045EE0 24A55F84 */ addiu $a1, $a1, %lo(D_80105F84)
|
||
|
/* 212E4 80045EE4 080117C8 */ j .L80045F20
|
||
|
/* 212E8 80045EE8 00000000 */ nop
|
||
|
/* 212EC 80045EEC 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 212F0 80045EF0 3C058010 */ lui $a1, %hi(D_80106C94)
|
||
|
/* 212F4 80045EF4 24A56C94 */ addiu $a1, $a1, %lo(D_80106C94)
|
||
|
/* 212F8 80045EF8 080117C8 */ j .L80045F20
|
||
|
/* 212FC 80045EFC 00000000 */ nop
|
||
|
/* 21300 80045F00 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 21304 80045F04 3C058010 */ lui $a1, %hi(D_801062D8)
|
||
|
/* 21308 80045F08 24A562D8 */ addiu $a1, $a1, %lo(D_801062D8)
|
||
|
/* 2130C 80045F0C 080117C8 */ j .L80045F20
|
||
|
/* 21310 80045F10 00000000 */ nop
|
||
|
.L80045F14:
|
||
|
/* 21314 80045F14 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 21318 80045F18 3C058008 */ lui $a1, %hi(D_800804C0)
|
||
|
/* 2131C 80045F1C 24A504C0 */ addiu $a1, $a1, %lo(D_800804C0)
|
||
|
.L80045F20:
|
||
|
/* 21320 80045F20 0C05262B */ jal func_801498AC
|
||
|
/* 21324 80045F24 00000000 */ nop
|
||
|
/* 21328 80045F28 2402000A */ addiu $v0, $zero, 0xa
|
||
|
/* 2132C 80045F2C A222FFB8 */ sb $v0, -0x48($s1)
|
||
|
/* 21330 80045F30 080117D8 */ j .L80045F60
|
||
|
/* 21334 80045F34 A233FFB6 */ sb $s3, -0x4a($s1)
|
||
|
.L80045F38:
|
||
|
/* 21338 80045F38 8222FFB8 */ lb $v0, -0x48($s1)
|
||
|
/* 2133C 80045F3C 9223FFB8 */ lbu $v1, -0x48($s1)
|
||
|
/* 21340 80045F40 10400003 */ beqz $v0, .L80045F50
|
||
|
/* 21344 80045F44 2462FFFF */ addiu $v0, $v1, -1
|
||
|
/* 21348 80045F48 080117D8 */ j .L80045F60
|
||
|
/* 2134C 80045F4C A222FFB8 */ sb $v0, -0x48($s1)
|
||
|
.L80045F50:
|
||
|
/* 21350 80045F50 8E24FFBF */ lw $a0, -0x41($s1)
|
||
|
/* 21354 80045F54 0C052669 */ jal func_801499A4
|
||
|
/* 21358 80045F58 A220FFB4 */ sb $zero, -0x4c($s1)
|
||
|
/* 2135C 80045F5C A220FFB6 */ sb $zero, -0x4a($s1)
|
||
|
.L80045F60:
|
||
|
/* 21360 80045F60 8222FFC5 */ lb $v0, -0x3b($s1)
|
||
|
/* 21364 80045F64 14520013 */ bne $v0, $s2, .L80045FB4
|
||
|
/* 21368 80045F68 2402000B */ addiu $v0, $zero, 0xb
|
||
|
/* 2136C 80045F6C 8223FFC3 */ lb $v1, -0x3d($s1)
|
||
|
/* 21370 80045F70 3C048008 */ lui $a0, %hi(D_800804C0)
|
||
|
/* 21374 80045F74 248404C0 */ addiu $a0, $a0, %lo(D_800804C0)
|
||
|
/* 21378 80045F78 14620003 */ bne $v1, $v0, .L80045F88
|
||
|
/* 2137C 80045F7C 00000000 */ nop
|
||
|
/* 21380 80045F80 3C048010 */ lui $a0, %hi(D_80105238)
|
||
|
/* 21384 80045F84 24845238 */ addiu $a0, $a0, %lo(D_80105238)
|
||
|
.L80045F88:
|
||
|
/* 21388 80045F88 0C051955 */ jal func_80146554
|
||
|
/* 2138C 80045F8C 00000000 */ nop
|
||
|
/* 21390 80045F90 AE22FFCB */ sw $v0, -0x35($s1)
|
||
|
/* 21394 80045F94 0040802D */ daddu $s0, $v0, $zero
|
||
|
/* 21398 80045F98 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 2139C 80045F9C 0C0526AC */ jal func_80149AB0
|
||
|
/* 213A0 80045FA0 24050002 */ addiu $a1, $zero, 2
|
||
|
/* 213A4 80045FA4 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 213A8 80045FA8 0C0526AC */ jal func_80149AB0
|
||
|
/* 213AC 80045FAC 24050080 */ addiu $a1, $zero, 0x80
|
||
|
/* 213B0 80045FB0 A233FFC5 */ sb $s3, -0x3b($s1)
|
||
|
.L80045FB4:
|
||
|
/* 213B4 80045FB4 8223FFC6 */ lb $v1, -0x3a($s1)
|
||
|
/* 213B8 80045FB8 10720007 */ beq $v1, $s2, .L80045FD8
|
||
|
/* 213BC 80045FBC 28620002 */ slti $v0, $v1, 2
|
||
|
/* 213C0 80045FC0 14400020 */ bnez $v0, .L80046044
|
||
|
/* 213C4 80045FC4 00000000 */ nop
|
||
|
/* 213C8 80045FC8 10760014 */ beq $v1, $s6, .L8004601C
|
||
|
/* 213CC 80045FCC 00000000 */ nop
|
||
|
/* 213D0 80045FD0 08011811 */ j .L80046044
|
||
|
/* 213D4 80045FD4 00000000 */ nop
|
||
|
.L80045FD8:
|
||
|
/* 213D8 80045FD8 8223FFC4 */ lb $v1, -0x3c($s1)
|
||
|
/* 213DC 80045FDC 2402000B */ addiu $v0, $zero, 0xb
|
||
|
/* 213E0 80045FE0 14620006 */ bne $v1, $v0, .L80045FFC
|
||
|
/* 213E4 80045FE4 00000000 */ nop
|
||
|
/* 213E8 80045FE8 8E24FFCF */ lw $a0, -0x31($s1)
|
||
|
/* 213EC 80045FEC 3C058010 */ lui $a1, %hi(D_80105468)
|
||
|
/* 213F0 80045FF0 24A55468 */ addiu $a1, $a1, %lo(D_80105468)
|
||
|
/* 213F4 80045FF4 08011802 */ j .L80046008
|
||
|
/* 213F8 80045FF8 00000000 */ nop
|
||
|
.L80045FFC:
|
||
|
/* 213FC 80045FFC 8E24FFCF */ lw $a0, -0x31($s1)
|
||
|
/* 21400 80046000 3C058008 */ lui $a1, %hi(D_800804C0)
|
||
|
/* 21404 80046004 24A504C0 */ addiu $a1, $a1, %lo(D_800804C0)
|
||
|
.L80046008:
|
||
|
/* 21408 80046008 0C05262B */ jal func_801498AC
|
||
|
/* 2140C 8004600C 00000000 */ nop
|
||
|
/* 21410 80046010 A237FFC8 */ sb $s7, -0x38($s1)
|
||
|
/* 21414 80046014 08011811 */ j .L80046044
|
||
|
/* 21418 80046018 A233FFC6 */ sb $s3, -0x3a($s1)
|
||
|
.L8004601C:
|
||
|
/* 2141C 8004601C 8222FFC8 */ lb $v0, -0x38($s1)
|
||
|
/* 21420 80046020 9223FFC8 */ lbu $v1, -0x38($s1)
|
||
|
/* 21424 80046024 10400003 */ beqz $v0, .L80046034
|
||
|
/* 21428 80046028 2462FFFF */ addiu $v0, $v1, -1
|
||
|
/* 2142C 8004602C 08011811 */ j .L80046044
|
||
|
/* 21430 80046030 A222FFC8 */ sb $v0, -0x38($s1)
|
||
|
.L80046034:
|
||
|
/* 21434 80046034 8E24FFCF */ lw $a0, -0x31($s1)
|
||
|
/* 21438 80046038 0C052669 */ jal func_801499A4
|
||
|
/* 2143C 8004603C A220FFC4 */ sb $zero, -0x3c($s1)
|
||
|
/* 21440 80046040 A220FFC6 */ sb $zero, -0x3a($s1)
|
||
|
.L80046044:
|
||
|
/* 21444 80046044 8222FFD5 */ lb $v0, -0x2b($s1)
|
||
|
/* 21448 80046048 14520013 */ bne $v0, $s2, .L80046098
|
||
|
/* 2144C 8004604C 2402000E */ addiu $v0, $zero, 0xe
|
||
|
/* 21450 80046050 8223FFD3 */ lb $v1, -0x2d($s1)
|
||
|
/* 21454 80046054 3C048008 */ lui $a0, %hi(D_800804C0)
|
||
|
/* 21458 80046058 248404C0 */ addiu $a0, $a0, %lo(D_800804C0)
|
||
|
/* 2145C 8004605C 14620003 */ bne $v1, $v0, .L8004606C
|
||
|
/* 21460 80046060 00000000 */ nop
|
||
|
/* 21464 80046064 3C048010 */ lui $a0, %hi(D_80106E68)
|
||
|
/* 21468 80046068 24846E68 */ addiu $a0, $a0, %lo(D_80106E68)
|
||
|
.L8004606C:
|
||
|
/* 2146C 8004606C 0C051955 */ jal func_80146554
|
||
|
/* 21470 80046070 00000000 */ nop
|
||
|
/* 21474 80046074 AE22FFDB */ sw $v0, -0x25($s1)
|
||
|
/* 21478 80046078 0040802D */ daddu $s0, $v0, $zero
|
||
|
/* 2147C 8004607C 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 21480 80046080 0C0526AC */ jal func_80149AB0
|
||
|
/* 21484 80046084 24050002 */ addiu $a1, $zero, 2
|
||
|
/* 21488 80046088 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 2148C 8004608C 0C0526AC */ jal func_80149AB0
|
||
|
/* 21490 80046090 24050080 */ addiu $a1, $zero, 0x80
|
||
|
/* 21494 80046094 A233FFD5 */ sb $s3, -0x2b($s1)
|
||
|
.L80046098:
|
||
|
/* 21498 80046098 8223FFD6 */ lb $v1, -0x2a($s1)
|
||
|
/* 2149C 8004609C 10720007 */ beq $v1, $s2, .L800460BC
|
||
|
/* 214A0 800460A0 28620002 */ slti $v0, $v1, 2
|
||
|
/* 214A4 800460A4 14400020 */ bnez $v0, .L80046128
|
||
|
/* 214A8 800460A8 00000000 */ nop
|
||
|
/* 214AC 800460AC 10760014 */ beq $v1, $s6, .L80046100
|
||
|
/* 214B0 800460B0 00000000 */ nop
|
||
|
/* 214B4 800460B4 0801184A */ j .L80046128
|
||
|
/* 214B8 800460B8 00000000 */ nop
|
||
|
.L800460BC:
|
||
|
/* 214BC 800460BC 8223FFD4 */ lb $v1, -0x2c($s1)
|
||
|
/* 214C0 800460C0 2402000E */ addiu $v0, $zero, 0xe
|
||
|
/* 214C4 800460C4 14620006 */ bne $v1, $v0, .L800460E0
|
||
|
/* 214C8 800460C8 00000000 */ nop
|
||
|
/* 214CC 800460CC 8E24FFDF */ lw $a0, -0x21($s1)
|
||
|
/* 214D0 800460D0 3C058010 */ lui $a1, %hi(D_80107028)
|
||
|
/* 214D4 800460D4 24A57028 */ addiu $a1, $a1, %lo(D_80107028)
|
||
|
/* 214D8 800460D8 0801183B */ j .L800460EC
|
||
|
/* 214DC 800460DC 00000000 */ nop
|
||
|
.L800460E0:
|
||
|
/* 214E0 800460E0 8E24FFDF */ lw $a0, -0x21($s1)
|
||
|
/* 214E4 800460E4 3C058008 */ lui $a1, %hi(D_800804C0)
|
||
|
/* 214E8 800460E8 24A504C0 */ addiu $a1, $a1, %lo(D_800804C0)
|
||
|
.L800460EC:
|
||
|
/* 214EC 800460EC 0C05262B */ jal func_801498AC
|
||
|
/* 214F0 800460F0 00000000 */ nop
|
||
|
/* 214F4 800460F4 A237FFD8 */ sb $s7, -0x28($s1)
|
||
|
/* 214F8 800460F8 0801184A */ j .L80046128
|
||
|
/* 214FC 800460FC A233FFD6 */ sb $s3, -0x2a($s1)
|
||
|
.L80046100:
|
||
|
/* 21500 80046100 8222FFD8 */ lb $v0, -0x28($s1)
|
||
|
/* 21504 80046104 9223FFD8 */ lbu $v1, -0x28($s1)
|
||
|
/* 21508 80046108 10400003 */ beqz $v0, .L80046118
|
||
|
/* 2150C 8004610C 2462FFFF */ addiu $v0, $v1, -1
|
||
|
/* 21510 80046110 0801184A */ j .L80046128
|
||
|
/* 21514 80046114 A222FFD8 */ sb $v0, -0x28($s1)
|
||
|
.L80046118:
|
||
|
/* 21518 80046118 8E24FFDF */ lw $a0, -0x21($s1)
|
||
|
/* 2151C 8004611C 0C052669 */ jal func_801499A4
|
||
|
/* 21520 80046120 A220FFD4 */ sb $zero, -0x2c($s1)
|
||
|
/* 21524 80046124 A220FFD6 */ sb $zero, -0x2a($s1)
|
||
|
.L80046128:
|
||
|
/* 21528 80046128 8222FFE5 */ lb $v0, -0x1b($s1)
|
||
|
/* 2152C 8004612C 1452000E */ bne $v0, $s2, .L80046168
|
||
|
/* 21530 80046130 00000000 */ nop
|
||
|
/* 21534 80046134 3C048010 */ lui $a0, %hi(D_8010646C)
|
||
|
/* 21538 80046138 2484646C */ addiu $a0, $a0, %lo(D_8010646C)
|
||
|
/* 2153C 8004613C 0C051955 */ jal func_80146554
|
||
|
/* 21540 80046140 00000000 */ nop
|
||
|
/* 21544 80046144 0040802D */ daddu $s0, $v0, $zero
|
||
|
/* 21548 80046148 0040202D */ daddu $a0, $v0, $zero
|
||
|
/* 2154C 8004614C 24050002 */ addiu $a1, $zero, 2
|
||
|
/* 21550 80046150 0C0526AC */ jal func_80149AB0
|
||
|
/* 21554 80046154 AE30FFEB */ sw $s0, -0x15($s1)
|
||
|
/* 21558 80046158 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 2155C 8004615C 0C0526AC */ jal func_80149AB0
|
||
|
/* 21560 80046160 24050080 */ addiu $a1, $zero, 0x80
|
||
|
/* 21564 80046164 A233FFE5 */ sb $s3, -0x1b($s1)
|
||
|
.L80046168:
|
||
|
/* 21568 80046168 8223FFE6 */ lb $v1, -0x1a($s1)
|
||
|
/* 2156C 8004616C 10720007 */ beq $v1, $s2, .L8004618C
|
||
|
/* 21570 80046170 28620002 */ slti $v0, $v1, 2
|
||
|
/* 21574 80046174 14400017 */ bnez $v0, .L800461D4
|
||
|
/* 21578 80046178 00000000 */ nop
|
||
|
/* 2157C 8004617C 1076000B */ beq $v1, $s6, .L800461AC
|
||
|
/* 21580 80046180 00000000 */ nop
|
||
|
/* 21584 80046184 08011875 */ j .L800461D4
|
||
|
/* 21588 80046188 00000000 */ nop
|
||
|
.L8004618C:
|
||
|
/* 2158C 8004618C 8E24FFEF */ lw $a0, -0x11($s1)
|
||
|
/* 21590 80046190 3C058010 */ lui $a1, %hi(D_801065EC)
|
||
|
/* 21594 80046194 24A565EC */ addiu $a1, $a1, %lo(D_801065EC)
|
||
|
/* 21598 80046198 0C05262B */ jal func_801498AC
|
||
|
/* 2159C 8004619C 00000000 */ nop
|
||
|
/* 215A0 800461A0 A237FFE8 */ sb $s7, -0x18($s1)
|
||
|
/* 215A4 800461A4 08011875 */ j .L800461D4
|
||
|
/* 215A8 800461A8 A233FFE6 */ sb $s3, -0x1a($s1)
|
||
|
.L800461AC:
|
||
|
/* 215AC 800461AC 8222FFE8 */ lb $v0, -0x18($s1)
|
||
|
/* 215B0 800461B0 9223FFE8 */ lbu $v1, -0x18($s1)
|
||
|
/* 215B4 800461B4 10400003 */ beqz $v0, .L800461C4
|
||
|
/* 215B8 800461B8 2462FFFF */ addiu $v0, $v1, -1
|
||
|
/* 215BC 800461BC 08011875 */ j .L800461D4
|
||
|
/* 215C0 800461C0 A222FFE8 */ sb $v0, -0x18($s1)
|
||
|
.L800461C4:
|
||
|
/* 215C4 800461C4 8E24FFEF */ lw $a0, -0x11($s1)
|
||
|
/* 215C8 800461C8 0C052669 */ jal func_801499A4
|
||
|
/* 215CC 800461CC A220FFE4 */ sb $zero, -0x1c($s1)
|
||
|
/* 215D0 800461D0 A220FFE6 */ sb $zero, -0x1a($s1)
|
||
|
.L800461D4:
|
||
|
/* 215D4 800461D4 8222FFF4 */ lb $v0, -0xc($s1)
|
||
|
/* 215D8 800461D8 1040000D */ beqz $v0, .L80046210
|
||
|
/* 215DC 800461DC 00000000 */ nop
|
||
|
/* 215E0 800461E0 1452000B */ bne $v0, $s2, .L80046210
|
||
|
/* 215E4 800461E4 00000000 */ nop
|
||
|
/* 215E8 800461E8 8E30FFFB */ lw $s0, -5($s1)
|
||
|
/* 215EC 800461EC 0C052661 */ jal func_80149984
|
||
|
/* 215F0 800461F0 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 215F4 800461F4 8C420000 */ lw $v0, ($v0)
|
||
|
/* 215F8 800461F8 30420004 */ andi $v0, $v0, 4
|
||
|
/* 215FC 800461FC 10400004 */ beqz $v0, .L80046210
|
||
|
/* 21600 80046200 00000000 */ nop
|
||
|
/* 21604 80046204 0C052669 */ jal func_801499A4
|
||
|
/* 21608 80046208 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 2160C 8004620C A220FFF4 */ sb $zero, -0xc($s1)
|
||
|
.L80046210:
|
||
|
/* 21610 80046210 82220000 */ lb $v0, ($s1)
|
||
|
/* 21614 80046214 5040000E */ beql $v0, $zero, .L80046250
|
||
|
/* 21618 80046218 26B50001 */ addiu $s5, $s5, 1
|
||
|
/* 2161C 8004621C 5452000C */ bnel $v0, $s2, .L80046250
|
||
|
/* 21620 80046220 26B50001 */ addiu $s5, $s5, 1
|
||
|
/* 21624 80046224 8E300007 */ lw $s0, 7($s1)
|
||
|
/* 21628 80046228 0C052661 */ jal func_80149984
|
||
|
/* 2162C 8004622C 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 21630 80046230 8C420000 */ lw $v0, ($v0)
|
||
|
/* 21634 80046234 30420004 */ andi $v0, $v0, 4
|
||
|
/* 21638 80046238 50400005 */ beql $v0, $zero, .L80046250
|
||
|
/* 2163C 8004623C 26B50001 */ addiu $s5, $s5, 1
|
||
|
/* 21640 80046240 0C052669 */ jal func_801499A4
|
||
|
/* 21644 80046244 0200202D */ daddu $a0, $s0, $zero
|
||
|
/* 21648 80046248 A2200000 */ sb $zero, ($s1)
|
||
|
/* 2164C 8004624C 26B50001 */ addiu $s5, $s5, 1
|
||
|
.L80046250:
|
||
|
/* 21650 80046250 263100B0 */ addiu $s1, $s1, 0xb0
|
||
|
/* 21654 80046254 2AA20040 */ slti $v0, $s5, 0x40
|
||
|
/* 21658 80046258 1440FEB2 */ bnez $v0, .L80045D24
|
||
|
/* 2165C 8004625C 269400B0 */ addiu $s4, $s4, 0xb0
|
||
|
/* 21660 80046260 8FBF0030 */ lw $ra, 0x30($sp)
|
||
|
/* 21664 80046264 8FB7002C */ lw $s7, 0x2c($sp)
|
||
|
/* 21668 80046268 8FB60028 */ lw $s6, 0x28($sp)
|
||
|
/* 2166C 8004626C 8FB50024 */ lw $s5, 0x24($sp)
|
||
|
/* 21670 80046270 8FB40020 */ lw $s4, 0x20($sp)
|
||
|
/* 21674 80046274 8FB3001C */ lw $s3, 0x1c($sp)
|
||
|
/* 21678 80046278 8FB20018 */ lw $s2, 0x18($sp)
|
||
|
/* 2167C 8004627C 8FB10014 */ lw $s1, 0x14($sp)
|
||
|
/* 21680 80046280 8FB00010 */ lw $s0, 0x10($sp)
|
||
|
/* 21684 80046284 03E00008 */ jr $ra
|
||
|
/* 21688 80046288 27BD0038 */ addiu $sp, $sp, 0x38
|