mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 08:52:40 +01:00
144 lines
7.0 KiB
ArmAsm
144 lines
7.0 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_80240124_EC72D4
|
|
/* EC72D4 80240124 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
/* EC72D8 80240128 AFB00010 */ sw $s0, 0x10($sp)
|
|
/* EC72DC 8024012C 0080802D */ daddu $s0, $a0, $zero
|
|
/* EC72E0 80240130 10A00005 */ beqz $a1, .L80240148
|
|
/* EC72E4 80240134 AFBF0014 */ sw $ra, 0x14($sp)
|
|
/* EC72E8 80240138 AE000070 */ sw $zero, 0x70($s0)
|
|
/* EC72EC 8024013C AE000074 */ sw $zero, 0x74($s0)
|
|
/* EC72F0 80240140 AE000078 */ sw $zero, 0x78($s0)
|
|
/* EC72F4 80240144 AE00007C */ sw $zero, 0x7c($s0)
|
|
.L80240148:
|
|
/* EC72F8 80240148 8E020070 */ lw $v0, 0x70($s0)
|
|
/* EC72FC 8024014C 1440000E */ bnez $v0, .L80240188
|
|
/* EC7300 80240150 00000000 */ nop
|
|
/* EC7304 80240154 8E0300A8 */ lw $v1, 0xa8($s0)
|
|
/* EC7308 80240158 8E020088 */ lw $v0, 0x88($s0)
|
|
/* EC730C 8024015C 00621821 */ addu $v1, $v1, $v0
|
|
/* EC7310 80240160 04610004 */ bgez $v1, .L80240174
|
|
/* EC7314 80240164 AE0300A8 */ sw $v1, 0xa8($s0)
|
|
/* EC7318 80240168 3C020002 */ lui $v0, 2
|
|
/* EC731C 8024016C 08090061 */ j .L80240184
|
|
/* EC7320 80240170 00621021 */ addu $v0, $v1, $v0
|
|
.L80240174:
|
|
/* EC7324 80240174 3C040002 */ lui $a0, 2
|
|
/* EC7328 80240178 0083102A */ slt $v0, $a0, $v1
|
|
/* EC732C 8024017C 10400002 */ beqz $v0, .L80240188
|
|
/* EC7330 80240180 00641023 */ subu $v0, $v1, $a0
|
|
.L80240184:
|
|
/* EC7334 80240184 AE0200A8 */ sw $v0, 0xa8($s0)
|
|
.L80240188:
|
|
/* EC7338 80240188 8E020074 */ lw $v0, 0x74($s0)
|
|
/* EC733C 8024018C 1440000E */ bnez $v0, .L802401C8
|
|
/* EC7340 80240190 00000000 */ nop
|
|
/* EC7344 80240194 8E0300AC */ lw $v1, 0xac($s0)
|
|
/* EC7348 80240198 8E02008C */ lw $v0, 0x8c($s0)
|
|
/* EC734C 8024019C 00621821 */ addu $v1, $v1, $v0
|
|
/* EC7350 802401A0 04610004 */ bgez $v1, .L802401B4
|
|
/* EC7354 802401A4 AE0300AC */ sw $v1, 0xac($s0)
|
|
/* EC7358 802401A8 3C020002 */ lui $v0, 2
|
|
/* EC735C 802401AC 08090071 */ j .L802401C4
|
|
/* EC7360 802401B0 00621021 */ addu $v0, $v1, $v0
|
|
.L802401B4:
|
|
/* EC7364 802401B4 3C040002 */ lui $a0, 2
|
|
/* EC7368 802401B8 0083102A */ slt $v0, $a0, $v1
|
|
/* EC736C 802401BC 10400002 */ beqz $v0, .L802401C8
|
|
/* EC7370 802401C0 00641023 */ subu $v0, $v1, $a0
|
|
.L802401C4:
|
|
/* EC7374 802401C4 AE0200AC */ sw $v0, 0xac($s0)
|
|
.L802401C8:
|
|
/* EC7378 802401C8 8E020078 */ lw $v0, 0x78($s0)
|
|
/* EC737C 802401CC 1440000E */ bnez $v0, .L80240208
|
|
/* EC7380 802401D0 00000000 */ nop
|
|
/* EC7384 802401D4 8E0300B0 */ lw $v1, 0xb0($s0)
|
|
/* EC7388 802401D8 8E020090 */ lw $v0, 0x90($s0)
|
|
/* EC738C 802401DC 00621821 */ addu $v1, $v1, $v0
|
|
/* EC7390 802401E0 04610004 */ bgez $v1, .L802401F4
|
|
/* EC7394 802401E4 AE0300B0 */ sw $v1, 0xb0($s0)
|
|
/* EC7398 802401E8 3C020002 */ lui $v0, 2
|
|
/* EC739C 802401EC 08090081 */ j .L80240204
|
|
/* EC73A0 802401F0 00621021 */ addu $v0, $v1, $v0
|
|
.L802401F4:
|
|
/* EC73A4 802401F4 3C040002 */ lui $a0, 2
|
|
/* EC73A8 802401F8 0083102A */ slt $v0, $a0, $v1
|
|
/* EC73AC 802401FC 10400002 */ beqz $v0, .L80240208
|
|
/* EC73B0 80240200 00641023 */ subu $v0, $v1, $a0
|
|
.L80240204:
|
|
/* EC73B4 80240204 AE0200B0 */ sw $v0, 0xb0($s0)
|
|
.L80240208:
|
|
/* EC73B8 80240208 8E02007C */ lw $v0, 0x7c($s0)
|
|
/* EC73BC 8024020C 1440000E */ bnez $v0, .L80240248
|
|
/* EC73C0 80240210 00000000 */ nop
|
|
/* EC73C4 80240214 8E0300B4 */ lw $v1, 0xb4($s0)
|
|
/* EC73C8 80240218 8E020094 */ lw $v0, 0x94($s0)
|
|
/* EC73CC 8024021C 00621821 */ addu $v1, $v1, $v0
|
|
/* EC73D0 80240220 04610004 */ bgez $v1, .L80240234
|
|
/* EC73D4 80240224 AE0300B4 */ sw $v1, 0xb4($s0)
|
|
/* EC73D8 80240228 3C020002 */ lui $v0, 2
|
|
/* EC73DC 8024022C 08090091 */ j .L80240244
|
|
/* EC73E0 80240230 00621021 */ addu $v0, $v1, $v0
|
|
.L80240234:
|
|
/* EC73E4 80240234 3C040002 */ lui $a0, 2
|
|
/* EC73E8 80240238 0083102A */ slt $v0, $a0, $v1
|
|
/* EC73EC 8024023C 10400002 */ beqz $v0, .L80240248
|
|
/* EC73F0 80240240 00641023 */ subu $v0, $v1, $a0
|
|
.L80240244:
|
|
/* EC73F4 80240244 AE0200B4 */ sw $v0, 0xb4($s0)
|
|
.L80240248:
|
|
/* EC73F8 80240248 8E040084 */ lw $a0, 0x84($s0)
|
|
/* EC73FC 8024024C 0C049819 */ jal func_80126064
|
|
/* EC7400 80240250 8E0500A8 */ lw $a1, 0xa8($s0)
|
|
/* EC7404 80240254 8E040084 */ lw $a0, 0x84($s0)
|
|
/* EC7408 80240258 0C04981F */ jal func_8012607C
|
|
/* EC740C 8024025C 8E0500AC */ lw $a1, 0xac($s0)
|
|
/* EC7410 80240260 8E040084 */ lw $a0, 0x84($s0)
|
|
/* EC7414 80240264 0C049825 */ jal func_80126094
|
|
/* EC7418 80240268 8E0500B0 */ lw $a1, 0xb0($s0)
|
|
/* EC741C 8024026C 8E040084 */ lw $a0, 0x84($s0)
|
|
/* EC7420 80240270 0C04982B */ jal func_801260AC
|
|
/* EC7424 80240274 8E0500B4 */ lw $a1, 0xb4($s0)
|
|
/* EC7428 80240278 8E020070 */ lw $v0, 0x70($s0)
|
|
/* EC742C 8024027C 8E030078 */ lw $v1, 0x78($s0)
|
|
/* EC7430 80240280 8E040098 */ lw $a0, 0x98($s0)
|
|
/* EC7434 80240284 24420001 */ addiu $v0, $v0, 1
|
|
/* EC7438 80240288 AE020070 */ sw $v0, 0x70($s0)
|
|
/* EC743C 8024028C 8E020074 */ lw $v0, 0x74($s0)
|
|
/* EC7440 80240290 24630001 */ addiu $v1, $v1, 1
|
|
/* EC7444 80240294 AE030078 */ sw $v1, 0x78($s0)
|
|
/* EC7448 80240298 8E030070 */ lw $v1, 0x70($s0)
|
|
/* EC744C 8024029C 24420001 */ addiu $v0, $v0, 1
|
|
/* EC7450 802402A0 AE020074 */ sw $v0, 0x74($s0)
|
|
/* EC7454 802402A4 8E02007C */ lw $v0, 0x7c($s0)
|
|
/* EC7458 802402A8 0064182A */ slt $v1, $v1, $a0
|
|
/* EC745C 802402AC 24420001 */ addiu $v0, $v0, 1
|
|
/* EC7460 802402B0 14600002 */ bnez $v1, .L802402BC
|
|
/* EC7464 802402B4 AE02007C */ sw $v0, 0x7c($s0)
|
|
/* EC7468 802402B8 AE000070 */ sw $zero, 0x70($s0)
|
|
.L802402BC:
|
|
/* EC746C 802402BC 8E020074 */ lw $v0, 0x74($s0)
|
|
/* EC7470 802402C0 8E03009C */ lw $v1, 0x9c($s0)
|
|
/* EC7474 802402C4 0043102A */ slt $v0, $v0, $v1
|
|
/* EC7478 802402C8 50400001 */ beql $v0, $zero, .L802402D0
|
|
/* EC747C 802402CC AE000074 */ sw $zero, 0x74($s0)
|
|
.L802402D0:
|
|
/* EC7480 802402D0 8E020078 */ lw $v0, 0x78($s0)
|
|
/* EC7484 802402D4 8E0300A0 */ lw $v1, 0xa0($s0)
|
|
/* EC7488 802402D8 0043102A */ slt $v0, $v0, $v1
|
|
/* EC748C 802402DC 50400001 */ beql $v0, $zero, .L802402E4
|
|
/* EC7490 802402E0 AE000078 */ sw $zero, 0x78($s0)
|
|
.L802402E4:
|
|
/* EC7494 802402E4 8E02007C */ lw $v0, 0x7c($s0)
|
|
/* EC7498 802402E8 8E0300A4 */ lw $v1, 0xa4($s0)
|
|
/* EC749C 802402EC 0043102A */ slt $v0, $v0, $v1
|
|
/* EC74A0 802402F0 50400001 */ beql $v0, $zero, .L802402F8
|
|
/* EC74A4 802402F4 AE00007C */ sw $zero, 0x7c($s0)
|
|
.L802402F8:
|
|
/* EC74A8 802402F8 8FBF0014 */ lw $ra, 0x14($sp)
|
|
/* EC74AC 802402FC 8FB00010 */ lw $s0, 0x10($sp)
|
|
/* EC74B0 80240300 0000102D */ daddu $v0, $zero, $zero
|
|
/* EC74B4 80240304 03E00008 */ jr $ra
|
|
/* EC74B8 80240308 27BD0018 */ addiu $sp, $sp, 0x18
|