mirror of
https://github.com/pmret/papermario.git
synced 2024-11-18 17:02:46 +01:00
a8c85b377a
* split jp gfxRetrace_Callback * func_80025F70 * use 1370_len_7d0 on jp * rename 1370_len_7d0 to main * coverage.py
664 lines
34 KiB
ArmAsm
664 lines
34 KiB
ArmAsm
.set noat # allow manual use of $at
|
|
.set noreorder # don't insert nops after branches
|
|
|
|
glabel func_80027DE0
|
|
/* 31E0 80027DE0 27BDFFB8 */ addiu $sp, $sp, -0x48
|
|
/* 31E4 80027DE4 3C040050 */ lui $a0, 0x50
|
|
/* 31E8 80027DE8 3C0C800A */ lui $t4, %hi(D_8009A64C)
|
|
/* 31EC 80027DEC 258CA64C */ addiu $t4, $t4, %lo(D_8009A64C)
|
|
/* 31F0 80027DF0 348403C0 */ ori $a0, $a0, 0x3c0
|
|
/* 31F4 80027DF4 3C02ED00 */ lui $v0, 0xed00
|
|
/* 31F8 80027DF8 AFBF0044 */ sw $ra, 0x44($sp)
|
|
/* 31FC 80027DFC AFBE0040 */ sw $fp, 0x40($sp)
|
|
/* 3200 80027E00 AFB7003C */ sw $s7, 0x3c($sp)
|
|
/* 3204 80027E04 AFB60038 */ sw $s6, 0x38($sp)
|
|
/* 3208 80027E08 AFB50034 */ sw $s5, 0x34($sp)
|
|
/* 320C 80027E0C AFB40030 */ sw $s4, 0x30($sp)
|
|
/* 3210 80027E10 AFB3002C */ sw $s3, 0x2c($sp)
|
|
/* 3214 80027E14 AFB20028 */ sw $s2, 0x28($sp)
|
|
/* 3218 80027E18 AFB10024 */ sw $s1, 0x24($sp)
|
|
/* 321C 80027E1C AFB00020 */ sw $s0, 0x20($sp)
|
|
/* 3220 80027E20 8D8B0000 */ lw $t3, ($t4)
|
|
/* 3224 80027E24 3C108007 */ lui $s0, %hi(gGameStatusPtr)
|
|
/* 3228 80027E28 2610417C */ addiu $s0, $s0, %lo(gGameStatusPtr)
|
|
/* 322C 80027E2C 0160182D */ daddu $v1, $t3, $zero
|
|
/* 3230 80027E30 256B0008 */ addiu $t3, $t3, 8
|
|
/* 3234 80027E34 AD8B0000 */ sw $t3, ($t4)
|
|
/* 3238 80027E38 AC640004 */ sw $a0, 4($v1)
|
|
/* 323C 80027E3C 3C04800B */ lui $a0, %hi(D_800B1D60)
|
|
/* 3240 80027E40 24841D60 */ addiu $a0, $a0, %lo(D_800B1D60)
|
|
/* 3244 80027E44 AC620000 */ sw $v0, ($v1)
|
|
/* 3248 80027E48 3C038007 */ lui $v1, %hi(D_800773E0)
|
|
/* 324C 80027E4C 8C6373E0 */ lw $v1, %lo(D_800773E0)($v1)
|
|
/* 3250 80027E50 8E0D0000 */ lw $t5, ($s0)
|
|
/* 3254 80027E54 00031080 */ sll $v0, $v1, 2
|
|
/* 3258 80027E58 00431021 */ addu $v0, $v0, $v1
|
|
/* 325C 80027E5C 00021080 */ sll $v0, $v0, 2
|
|
/* 3260 80027E60 00431023 */ subu $v0, $v0, $v1
|
|
/* 3264 80027E64 000218C0 */ sll $v1, $v0, 3
|
|
/* 3268 80027E68 00431021 */ addu $v0, $v0, $v1
|
|
/* 326C 80027E6C 000210C0 */ sll $v0, $v0, 3
|
|
/* 3270 80027E70 00449821 */ addu $s3, $v0, $a0
|
|
/* 3274 80027E74 95A30148 */ lhu $v1, 0x148($t5)
|
|
/* 3278 80027E78 24020020 */ addiu $v0, $zero, 0x20
|
|
/* 327C 80027E7C 306300F0 */ andi $v1, $v1, 0xf0
|
|
/* 3280 80027E80 1062004E */ beq $v1, $v0, .L80027FBC
|
|
/* 3284 80027E84 28620021 */ slti $v0, $v1, 0x21
|
|
/* 3288 80027E88 10400005 */ beqz $v0, .L80027EA0
|
|
/* 328C 80027E8C 24020010 */ addiu $v0, $zero, 0x10
|
|
/* 3290 80027E90 10620008 */ beq $v1, $v0, .L80027EB4
|
|
/* 3294 80027E94 3C03FF10 */ lui $v1, 0xff10
|
|
/* 3298 80027E98 0800A0BF */ j .L800282FC
|
|
/* 329C 80027E9C 00000000 */ nop
|
|
.L80027EA0:
|
|
/* 32A0 80027EA0 24020030 */ addiu $v0, $zero, 0x30
|
|
/* 32A4 80027EA4 10620053 */ beq $v1, $v0, .L80027FF4
|
|
/* 32A8 80027EA8 00000000 */ nop
|
|
/* 32AC 80027EAC 0800A0BF */ j .L800282FC
|
|
/* 32B0 80027EB0 00000000 */ nop
|
|
.L80027EB4:
|
|
/* 32B4 80027EB4 3463013F */ ori $v1, $v1, 0x13f
|
|
/* 32B8 80027EB8 3C06E300 */ lui $a2, 0xe300
|
|
/* 32BC 80027EBC 34C60A01 */ ori $a2, $a2, 0xa01
|
|
/* 32C0 80027EC0 3C078080 */ lui $a3, 0x8080
|
|
/* 32C4 80027EC4 34E780FF */ ori $a3, $a3, 0x80ff
|
|
/* 32C8 80027EC8 3C05E200 */ lui $a1, 0xe200
|
|
/* 32CC 80027ECC 34A51D00 */ ori $a1, $a1, 0x1d00
|
|
/* 32D0 80027ED0 3C0AE200 */ lui $t2, 0xe200
|
|
/* 32D4 80027ED4 354A001C */ ori $t2, $t2, 0x1c
|
|
/* 32D8 80027ED8 3C090FA5 */ lui $t1, 0xfa5
|
|
/* 32DC 80027EDC 35294040 */ ori $t1, $t1, 0x4040
|
|
/* 32E0 80027EE0 3C08F650 */ lui $t0, 0xf650
|
|
/* 32E4 80027EE4 350803C0 */ ori $t0, $t0, 0x3c0
|
|
/* 32E8 80027EE8 25620008 */ addiu $v0, $t3, 8
|
|
/* 32EC 80027EEC 3C04E700 */ lui $a0, 0xe700
|
|
/* 32F0 80027EF0 AD820000 */ sw $v0, ($t4)
|
|
/* 32F4 80027EF4 25620010 */ addiu $v0, $t3, 0x10
|
|
/* 32F8 80027EF8 AD640000 */ sw $a0, ($t3)
|
|
/* 32FC 80027EFC AD600004 */ sw $zero, 4($t3)
|
|
/* 3300 80027F00 AD820000 */ sw $v0, ($t4)
|
|
/* 3304 80027F04 25620018 */ addiu $v0, $t3, 0x18
|
|
/* 3308 80027F08 AD630008 */ sw $v1, 8($t3)
|
|
/* 330C 80027F0C AD820000 */ sw $v0, ($t4)
|
|
/* 3310 80027F10 25620020 */ addiu $v0, $t3, 0x20
|
|
/* 3314 80027F14 AD820000 */ sw $v0, ($t4)
|
|
/* 3318 80027F18 25620028 */ addiu $v0, $t3, 0x28
|
|
/* 331C 80027F1C AD820000 */ sw $v0, ($t4)
|
|
/* 3320 80027F20 25620030 */ addiu $v0, $t3, 0x30
|
|
/* 3324 80027F24 AD820000 */ sw $v0, ($t4)
|
|
/* 3328 80027F28 25620038 */ addiu $v0, $t3, 0x38
|
|
/* 332C 80027F2C AD820000 */ sw $v0, ($t4)
|
|
/* 3330 80027F30 3C03800A */ lui $v1, %hi(D_8009A638)
|
|
/* 3334 80027F34 8C63A638 */ lw $v1, %lo(D_8009A638)($v1)
|
|
/* 3338 80027F38 25620040 */ addiu $v0, $t3, 0x40
|
|
/* 333C 80027F3C AD820000 */ sw $v0, ($t4)
|
|
/* 3340 80027F40 8C630004 */ lw $v1, 4($v1)
|
|
/* 3344 80027F44 25620048 */ addiu $v0, $t3, 0x48
|
|
/* 3348 80027F48 AD820000 */ sw $v0, ($t4)
|
|
/* 334C 80027F4C 3C02F900 */ lui $v0, 0xf900
|
|
/* 3350 80027F50 AD620018 */ sw $v0, 0x18($t3)
|
|
/* 3354 80027F54 3C02EE00 */ lui $v0, 0xee00
|
|
/* 3358 80027F58 AD620020 */ sw $v0, 0x20($t3)
|
|
/* 335C 80027F5C 2402FFFF */ addiu $v0, $zero, -1
|
|
/* 3360 80027F60 AD620024 */ sw $v0, 0x24($t3)
|
|
/* 3364 80027F64 24020004 */ addiu $v0, $zero, 4
|
|
/* 3368 80027F68 AD660010 */ sw $a2, 0x10($t3)
|
|
/* 336C 80027F6C AD600014 */ sw $zero, 0x14($t3)
|
|
/* 3370 80027F70 AD67001C */ sw $a3, 0x1c($t3)
|
|
/* 3374 80027F74 AD650028 */ sw $a1, 0x28($t3)
|
|
/* 3378 80027F78 AD62002C */ sw $v0, 0x2c($t3)
|
|
/* 337C 80027F7C AD6A0030 */ sw $t2, 0x30($t3)
|
|
/* 3380 80027F80 AD690034 */ sw $t1, 0x34($t3)
|
|
/* 3384 80027F84 AD680038 */ sw $t0, 0x38($t3)
|
|
/* 3388 80027F88 AD60003C */ sw $zero, 0x3c($t3)
|
|
/* 338C 80027F8C AD640040 */ sw $a0, 0x40($t3)
|
|
/* 3390 80027F90 AD600044 */ sw $zero, 0x44($t3)
|
|
/* 3394 80027F94 AD650048 */ sw $a1, 0x48($t3)
|
|
/* 3398 80027F98 AD60004C */ sw $zero, 0x4c($t3)
|
|
/* 339C 80027F9C AD63000C */ sw $v1, 0xc($t3)
|
|
/* 33A0 80027FA0 95A20148 */ lhu $v0, 0x148($t5)
|
|
/* 33A4 80027FA4 25630050 */ addiu $v1, $t3, 0x50
|
|
/* 33A8 80027FA8 AD830000 */ sw $v1, ($t4)
|
|
/* 33AC 80027FAC 3042FF0F */ andi $v0, $v0, 0xff0f
|
|
/* 33B0 80027FB0 34420020 */ ori $v0, $v0, 0x20
|
|
/* 33B4 80027FB4 0800A1D8 */ j .L80028760
|
|
/* 33B8 80027FB8 A5A20148 */ sh $v0, 0x148($t5)
|
|
.L80027FBC:
|
|
/* 33BC 80027FBC 3C02800A */ lui $v0, %hi(D_8009A638)
|
|
/* 33C0 80027FC0 8C42A638 */ lw $v0, %lo(D_8009A638)($v0)
|
|
/* 33C4 80027FC4 3C06800A */ lui $a2, %hi(D_8009A5BC)
|
|
/* 33C8 80027FC8 8CC6A5BC */ lw $a2, %lo(D_8009A5BC)($a2)
|
|
/* 33CC 80027FCC 8C440000 */ lw $a0, ($v0)
|
|
/* 33D0 80027FD0 0C009E61 */ jal func_80027984
|
|
/* 33D4 80027FD4 8C450004 */ lw $a1, 4($v0)
|
|
/* 33D8 80027FD8 8E030000 */ lw $v1, ($s0)
|
|
/* 33DC 80027FDC 94620148 */ lhu $v0, 0x148($v1)
|
|
/* 33E0 80027FE0 3C018007 */ lui $at, %hi(D_800741D8)
|
|
/* 33E4 80027FE4 AC2041D8 */ sw $zero, %lo(D_800741D8)($at)
|
|
/* 33E8 80027FE8 3042FF0F */ andi $v0, $v0, 0xff0f
|
|
/* 33EC 80027FEC 34420030 */ ori $v0, $v0, 0x30
|
|
/* 33F0 80027FF0 A4620148 */ sh $v0, 0x148($v1)
|
|
.L80027FF4:
|
|
/* 33F4 80027FF4 3C168007 */ lui $s6, %hi(D_800741D8)
|
|
/* 33F8 80027FF8 26D641D8 */ addiu $s6, $s6, %lo(D_800741D8)
|
|
/* 33FC 80027FFC 8EC20000 */ lw $v0, ($s6)
|
|
/* 3400 80028000 24420010 */ addiu $v0, $v0, 0x10
|
|
/* 3404 80028004 AEC20000 */ sw $v0, ($s6)
|
|
/* 3408 80028008 28420081 */ slti $v0, $v0, 0x81
|
|
/* 340C 8002800C 14400003 */ bnez $v0, .L8002801C
|
|
/* 3410 80028010 3C060050 */ lui $a2, 0x50
|
|
/* 3414 80028014 24020080 */ addiu $v0, $zero, 0x80
|
|
/* 3418 80028018 AEC20000 */ sw $v0, ($s6)
|
|
.L8002801C:
|
|
/* 341C 8002801C 34C603C0 */ ori $a2, $a2, 0x3c0
|
|
/* 3420 80028020 3C05E300 */ lui $a1, 0xe300
|
|
/* 3424 80028024 34A50A01 */ ori $a1, $a1, 0xa01
|
|
/* 3428 80028028 3C07E200 */ lui $a3, 0xe200
|
|
/* 342C 8002802C 34E7001C */ ori $a3, $a3, 0x1c
|
|
/* 3430 80028030 3C08FF10 */ lui $t0, 0xff10
|
|
/* 3434 80028034 3508013F */ ori $t0, $t0, 0x13f
|
|
/* 3438 80028038 3C090001 */ lui $t1, 1
|
|
/* 343C 8002803C 35290001 */ ori $t1, $t1, 1
|
|
/* 3440 80028040 3C0AF64F */ lui $t2, 0xf64f
|
|
/* 3444 80028044 354AC3BC */ ori $t2, $t2, 0xc3bc
|
|
/* 3448 80028048 3C0BE300 */ lui $t3, 0xe300
|
|
/* 344C 8002804C 356B0C00 */ ori $t3, $t3, 0xc00
|
|
/* 3450 80028050 3C0CE300 */ lui $t4, 0xe300
|
|
/* 3454 80028054 358C1001 */ ori $t4, $t4, 0x1001
|
|
/* 3458 80028058 3C0D0F0A */ lui $t5, 0xf0a
|
|
/* 345C 8002805C 35AD4000 */ ori $t5, $t5, 0x4000
|
|
/* 3460 80028060 3C0FFC35 */ lui $t7, 0xfc35
|
|
/* 3464 80028064 35EF7E6A */ ori $t7, $t7, 0x7e6a
|
|
/* 3468 80028068 3C0E12FC */ lui $t6, 0x12fc
|
|
/* 346C 8002806C 35CEFCBE */ ori $t6, $t6, 0xfcbe
|
|
/* 3470 80028070 3C112828 */ lui $s1, 0x2828
|
|
/* 3474 80028074 36312800 */ ori $s1, $s1, 0x2800
|
|
/* 3478 80028078 3C10E300 */ lui $s0, 0xe300
|
|
/* 347C 8002807C 36101201 */ ori $s0, $s0, 0x1201
|
|
/* 3480 80028080 0000C82D */ daddu $t9, $zero, $zero
|
|
/* 3484 80028084 3C02800A */ lui $v0, %hi(D_8009A64C)
|
|
/* 3488 80028088 2442A64C */ addiu $v0, $v0, %lo(D_8009A64C)
|
|
/* 348C 8002808C 0040902D */ daddu $s2, $v0, $zero
|
|
/* 3490 80028090 AFAE0018 */ sw $t6, 0x18($sp)
|
|
/* 3494 80028094 3C0EFD10 */ lui $t6, 0xfd10
|
|
/* 3498 80028098 35CE013F */ ori $t6, $t6, 0x13f
|
|
/* 349C 8002809C 3C15F510 */ lui $s5, 0xf510
|
|
/* 34A0 800280A0 36B5A000 */ ori $s5, $s5, 0xa000
|
|
/* 34A4 800280A4 AFAE0010 */ sw $t6, 0x10($sp)
|
|
/* 34A8 800280A8 3C0E074F */ lui $t6, 0x74f
|
|
/* 34AC 800280AC 35CEC014 */ ori $t6, $t6, 0xc014
|
|
/* 34B0 800280B0 3C17E700 */ lui $s7, 0xe700
|
|
/* 34B4 800280B4 3C1E004F */ lui $fp, 0x4f
|
|
/* 34B8 800280B8 37DEC014 */ ori $fp, $fp, 0xc014
|
|
/* 34BC 800280BC 0320C02D */ daddu $t8, $t9, $zero
|
|
/* 34C0 800280C0 24140018 */ addiu $s4, $zero, 0x18
|
|
/* 34C4 800280C4 0320982D */ daddu $s3, $t9, $zero
|
|
/* 34C8 800280C8 AFAE0014 */ sw $t6, 0x14($sp)
|
|
/* 34CC 800280CC 8E420000 */ lw $v0, ($s2)
|
|
/* 34D0 800280D0 02E0182D */ daddu $v1, $s7, $zero
|
|
/* 34D4 800280D4 0040202D */ daddu $a0, $v0, $zero
|
|
/* 34D8 800280D8 24420008 */ addiu $v0, $v0, 8
|
|
/* 34DC 800280DC AE420000 */ sw $v0, ($s2)
|
|
/* 34E0 800280E0 AC830000 */ sw $v1, ($a0)
|
|
/* 34E4 800280E4 24430008 */ addiu $v1, $v0, 8
|
|
/* 34E8 800280E8 AC800004 */ sw $zero, 4($a0)
|
|
/* 34EC 800280EC AE430000 */ sw $v1, ($s2)
|
|
/* 34F0 800280F0 3C03ED00 */ lui $v1, 0xed00
|
|
/* 34F4 800280F4 AC430000 */ sw $v1, ($v0)
|
|
/* 34F8 800280F8 24430010 */ addiu $v1, $v0, 0x10
|
|
/* 34FC 800280FC AC460004 */ sw $a2, 4($v0)
|
|
/* 3500 80028100 AE430000 */ sw $v1, ($s2)
|
|
/* 3504 80028104 3C030030 */ lui $v1, 0x30
|
|
/* 3508 80028108 AC43000C */ sw $v1, 0xc($v0)
|
|
/* 350C 8002810C 00541821 */ addu $v1, $v0, $s4
|
|
/* 3510 80028110 AC450008 */ sw $a1, 8($v0)
|
|
/* 3514 80028114 AE430000 */ sw $v1, ($s2)
|
|
/* 3518 80028118 3C04800A */ lui $a0, %hi(D_8009A62C)
|
|
/* 351C 8002811C 8C84A62C */ lw $a0, %lo(D_8009A62C)($a0)
|
|
/* 3520 80028120 24430020 */ addiu $v1, $v0, 0x20
|
|
/* 3524 80028124 AC470010 */ sw $a3, 0x10($v0)
|
|
/* 3528 80028128 AC400014 */ sw $zero, 0x14($v0)
|
|
/* 352C 8002812C AE430000 */ sw $v1, ($s2)
|
|
/* 3530 80028130 24430028 */ addiu $v1, $v0, 0x28
|
|
/* 3534 80028134 AC480018 */ sw $t0, 0x18($v0)
|
|
/* 3538 80028138 AC44001C */ sw $a0, 0x1c($v0)
|
|
/* 353C 8002813C AE430000 */ sw $v1, ($s2)
|
|
/* 3540 80028140 3C03F700 */ lui $v1, 0xf700
|
|
/* 3544 80028144 AC430020 */ sw $v1, 0x20($v0)
|
|
/* 3548 80028148 24430030 */ addiu $v1, $v0, 0x30
|
|
/* 354C 8002814C AC490024 */ sw $t1, 0x24($v0)
|
|
/* 3550 80028150 AE430000 */ sw $v1, ($s2)
|
|
/* 3554 80028154 24430038 */ addiu $v1, $v0, 0x38
|
|
/* 3558 80028158 AC4A0028 */ sw $t2, 0x28($v0)
|
|
/* 355C 8002815C AC40002C */ sw $zero, 0x2c($v0)
|
|
/* 3560 80028160 AE430000 */ sw $v1, ($s2)
|
|
/* 3564 80028164 24430040 */ addiu $v1, $v0, 0x40
|
|
/* 3568 80028168 AC450030 */ sw $a1, 0x30($v0)
|
|
/* 356C 8002816C AC400034 */ sw $zero, 0x34($v0)
|
|
/* 3570 80028170 AE430000 */ sw $v1, ($s2)
|
|
/* 3574 80028174 24430048 */ addiu $v1, $v0, 0x48
|
|
/* 3578 80028178 AC4B0038 */ sw $t3, 0x38($v0)
|
|
/* 357C 8002817C AC40003C */ sw $zero, 0x3c($v0)
|
|
/* 3580 80028180 AE430000 */ sw $v1, ($s2)
|
|
/* 3584 80028184 24430050 */ addiu $v1, $v0, 0x50
|
|
/* 3588 80028188 AC4C0040 */ sw $t4, 0x40($v0)
|
|
/* 358C 8002818C AC400044 */ sw $zero, 0x44($v0)
|
|
/* 3590 80028190 AE430000 */ sw $v1, ($s2)
|
|
/* 3594 80028194 24430058 */ addiu $v1, $v0, 0x58
|
|
/* 3598 80028198 AC470048 */ sw $a3, 0x48($v0)
|
|
/* 359C 8002819C AC4D004C */ sw $t5, 0x4c($v0)
|
|
/* 35A0 800281A0 AE430000 */ sw $v1, ($s2)
|
|
/* 35A4 800281A4 AC4F0050 */ sw $t7, 0x50($v0)
|
|
/* 35A8 800281A8 8FAE0018 */ lw $t6, 0x18($sp)
|
|
/* 35AC 800281AC 24430060 */ addiu $v1, $v0, 0x60
|
|
/* 35B0 800281B0 AC4E0054 */ sw $t6, 0x54($v0)
|
|
/* 35B4 800281B4 AE430000 */ sw $v1, ($s2)
|
|
/* 35B8 800281B8 3C03FA00 */ lui $v1, 0xfa00
|
|
/* 35BC 800281BC AC430058 */ sw $v1, 0x58($v0)
|
|
/* 35C0 800281C0 92C40003 */ lbu $a0, 3($s6)
|
|
/* 35C4 800281C4 24430068 */ addiu $v1, $v0, 0x68
|
|
/* 35C8 800281C8 AE430000 */ sw $v1, ($s2)
|
|
/* 35CC 800281CC AC500060 */ sw $s0, 0x60($v0)
|
|
/* 35D0 800281D0 AC400064 */ sw $zero, 0x64($v0)
|
|
/* 35D4 800281D4 00912025 */ or $a0, $a0, $s1
|
|
/* 35D8 800281D8 AC44005C */ sw $a0, 0x5c($v0)
|
|
.L800281DC:
|
|
/* 35DC 800281DC 3C070400 */ lui $a3, 0x400
|
|
/* 35E0 800281E0 34E70400 */ ori $a3, $a3, 0x400
|
|
/* 35E4 800281E4 33060FFF */ andi $a2, $t8, 0xfff
|
|
/* 35E8 800281E8 27180018 */ addiu $t8, $t8, 0x18
|
|
/* 35EC 800281EC 32850FFF */ andi $a1, $s4, 0xfff
|
|
/* 35F0 800281F0 26940018 */ addiu $s4, $s4, 0x18
|
|
/* 35F4 800281F4 27390001 */ addiu $t9, $t9, 1
|
|
/* 35F8 800281F8 8E430000 */ lw $v1, ($s2)
|
|
/* 35FC 800281FC 3C02800A */ lui $v0, %hi(D_8009A5BC)
|
|
/* 3600 80028200 8C42A5BC */ lw $v0, %lo(D_8009A5BC)($v0)
|
|
/* 3604 80028204 0060202D */ daddu $a0, $v1, $zero
|
|
/* 3608 80028208 24630008 */ addiu $v1, $v1, 8
|
|
/* 360C 8002820C 00531021 */ addu $v0, $v0, $s3
|
|
/* 3610 80028210 AE430000 */ sw $v1, ($s2)
|
|
/* 3614 80028214 8FAE0010 */ lw $t6, 0x10($sp)
|
|
/* 3618 80028218 26730F00 */ addiu $s3, $s3, 0xf00
|
|
/* 361C 8002821C AC820004 */ sw $v0, 4($a0)
|
|
/* 3620 80028220 24620008 */ addiu $v0, $v1, 8
|
|
/* 3624 80028224 AC8E0000 */ sw $t6, ($a0)
|
|
/* 3628 80028228 3C0E0700 */ lui $t6, 0x700
|
|
/* 362C 8002822C AE420000 */ sw $v0, ($s2)
|
|
/* 3630 80028230 24620010 */ addiu $v0, $v1, 0x10
|
|
/* 3634 80028234 AC6E0004 */ sw $t6, 4($v1)
|
|
/* 3638 80028238 3C0EE600 */ lui $t6, 0xe600
|
|
/* 363C 8002823C AC750000 */ sw $s5, ($v1)
|
|
/* 3640 80028240 AE420000 */ sw $v0, ($s2)
|
|
/* 3644 80028244 24620018 */ addiu $v0, $v1, 0x18
|
|
/* 3648 80028248 AC6E0008 */ sw $t6, 8($v1)
|
|
/* 364C 8002824C 3C0EF400 */ lui $t6, 0xf400
|
|
/* 3650 80028250 AC60000C */ sw $zero, 0xc($v1)
|
|
/* 3654 80028254 AE420000 */ sw $v0, ($s2)
|
|
/* 3658 80028258 AC6E0010 */ sw $t6, 0x10($v1)
|
|
/* 365C 8002825C 8FAE0014 */ lw $t6, 0x14($sp)
|
|
/* 3660 80028260 24620020 */ addiu $v0, $v1, 0x20
|
|
/* 3664 80028264 AC6E0014 */ sw $t6, 0x14($v1)
|
|
/* 3668 80028268 AE420000 */ sw $v0, ($s2)
|
|
/* 366C 8002826C 24620028 */ addiu $v0, $v1, 0x28
|
|
/* 3670 80028270 AC770018 */ sw $s7, 0x18($v1)
|
|
/* 3674 80028274 AC60001C */ sw $zero, 0x1c($v1)
|
|
/* 3678 80028278 AE420000 */ sw $v0, ($s2)
|
|
/* 367C 8002827C 24620030 */ addiu $v0, $v1, 0x30
|
|
/* 3680 80028280 3C0EF200 */ lui $t6, 0xf200
|
|
/* 3684 80028284 AC750020 */ sw $s5, 0x20($v1)
|
|
/* 3688 80028288 AC600024 */ sw $zero, 0x24($v1)
|
|
/* 368C 8002828C AE420000 */ sw $v0, ($s2)
|
|
/* 3690 80028290 24620038 */ addiu $v0, $v1, 0x38
|
|
/* 3694 80028294 AC6E0028 */ sw $t6, 0x28($v1)
|
|
/* 3698 80028298 3C0EE450 */ lui $t6, 0xe450
|
|
/* 369C 8002829C 00AE2825 */ or $a1, $a1, $t6
|
|
/* 36A0 800282A0 AC7E002C */ sw $fp, 0x2c($v1)
|
|
/* 36A4 800282A4 AE420000 */ sw $v0, ($s2)
|
|
/* 36A8 800282A8 24620040 */ addiu $v0, $v1, 0x40
|
|
/* 36AC 800282AC AC650030 */ sw $a1, 0x30($v1)
|
|
/* 36B0 800282B0 AC660034 */ sw $a2, 0x34($v1)
|
|
/* 36B4 800282B4 AE420000 */ sw $v0, ($s2)
|
|
/* 36B8 800282B8 3C02E100 */ lui $v0, 0xe100
|
|
/* 36BC 800282BC AC620038 */ sw $v0, 0x38($v1)
|
|
/* 36C0 800282C0 3C02FFE0 */ lui $v0, 0xffe0
|
|
/* 36C4 800282C4 AC62003C */ sw $v0, 0x3c($v1)
|
|
/* 36C8 800282C8 24620048 */ addiu $v0, $v1, 0x48
|
|
/* 36CC 800282CC AE420000 */ sw $v0, ($s2)
|
|
/* 36D0 800282D0 3C02F100 */ lui $v0, 0xf100
|
|
/* 36D4 800282D4 AC620040 */ sw $v0, 0x40($v1)
|
|
/* 36D8 800282D8 24620050 */ addiu $v0, $v1, 0x50
|
|
/* 36DC 800282DC AC670044 */ sw $a3, 0x44($v1)
|
|
/* 36E0 800282E0 AE420000 */ sw $v0, ($s2)
|
|
/* 36E4 800282E4 2B220028 */ slti $v0, $t9, 0x28
|
|
/* 36E8 800282E8 AC770048 */ sw $s7, 0x48($v1)
|
|
/* 36EC 800282EC 1440FFBB */ bnez $v0, .L800281DC
|
|
/* 36F0 800282F0 AC60004C */ sw $zero, 0x4c($v1)
|
|
/* 36F4 800282F4 0800A1D8 */ j .L80028760
|
|
/* 36F8 800282F8 00000000 */ nop
|
|
.L800282FC:
|
|
/* 36FC 800282FC 3C02800A */ lui $v0, %hi(D_8009A630)
|
|
/* 3700 80028300 8C42A630 */ lw $v0, %lo(D_8009A630)($v0)
|
|
/* 3704 80028304 30420008 */ andi $v0, $v0, 8
|
|
/* 3708 80028308 1040000E */ beqz $v0, .L80028344
|
|
/* 370C 8002830C 3C05FF10 */ lui $a1, 0xff10
|
|
/* 3710 80028310 34A5013F */ ori $a1, $a1, 0x13f
|
|
/* 3714 80028314 3C03800A */ lui $v1, %hi(D_8009A64C)
|
|
/* 3718 80028318 2463A64C */ addiu $v1, $v1, %lo(D_8009A64C)
|
|
/* 371C 8002831C 8C620000 */ lw $v0, ($v1)
|
|
/* 3720 80028320 3C04800A */ lui $a0, %hi(D_8009A62C)
|
|
/* 3724 80028324 8C84A62C */ lw $a0, %lo(D_8009A62C)($a0)
|
|
/* 3728 80028328 0040802D */ daddu $s0, $v0, $zero
|
|
/* 372C 8002832C 24420008 */ addiu $v0, $v0, 8
|
|
/* 3730 80028330 AC620000 */ sw $v0, ($v1)
|
|
/* 3734 80028334 0C018798 */ jal func_80061E60
|
|
/* 3738 80028338 AE050000 */ sw $a1, ($s0)
|
|
/* 373C 8002833C 0800A1E1 */ j .L80028784
|
|
/* 3740 80028340 AE020004 */ sw $v0, 4($s0)
|
|
.L80028344:
|
|
/* 3744 80028344 3C06E300 */ lui $a2, 0xe300
|
|
/* 3748 80028348 34C60A01 */ ori $a2, $a2, 0xa01
|
|
/* 374C 8002834C 3C07E200 */ lui $a3, 0xe200
|
|
/* 3750 80028350 34E7001C */ ori $a3, $a3, 0x1c
|
|
/* 3754 80028354 3C08FF10 */ lui $t0, 0xff10
|
|
/* 3758 80028358 3508013F */ ori $t0, $t0, 0x13f
|
|
/* 375C 8002835C 3C09FFFC */ lui $t1, 0xfffc
|
|
/* 3760 80028360 3529FFFC */ ori $t1, $t1, 0xfffc
|
|
/* 3764 80028364 3C0AF64F */ lui $t2, 0xf64f
|
|
/* 3768 80028368 354AC3BC */ ori $t2, $t2, 0xc3bc
|
|
/* 376C 8002836C 3C11800A */ lui $s1, %hi(D_8009A64C)
|
|
/* 3770 80028370 2631A64C */ addiu $s1, $s1, %lo(D_8009A64C)
|
|
/* 3774 80028374 3C02FE00 */ lui $v0, 0xfe00
|
|
/* 3778 80028378 8E300000 */ lw $s0, ($s1)
|
|
/* 377C 8002837C 3C04800A */ lui $a0, %hi(D_8009A62C)
|
|
/* 3780 80028380 8C84A62C */ lw $a0, %lo(D_8009A62C)($a0)
|
|
/* 3784 80028384 0200282D */ daddu $a1, $s0, $zero
|
|
/* 3788 80028388 26100008 */ addiu $s0, $s0, 8
|
|
/* 378C 8002838C AE300000 */ sw $s0, ($s1)
|
|
/* 3790 80028390 3C03800A */ lui $v1, %hi(D_8009A5BC)
|
|
/* 3794 80028394 8C63A5BC */ lw $v1, %lo(D_8009A5BC)($v1)
|
|
/* 3798 80028398 3C12F700 */ lui $s2, 0xf700
|
|
/* 379C 8002839C ACA20000 */ sw $v0, ($a1)
|
|
/* 37A0 800283A0 3C028000 */ lui $v0, 0x8000
|
|
/* 37A4 800283A4 00621821 */ addu $v1, $v1, $v0
|
|
/* 37A8 800283A8 26020008 */ addiu $v0, $s0, 8
|
|
/* 37AC 800283AC ACA30004 */ sw $v1, 4($a1)
|
|
/* 37B0 800283B0 AE220000 */ sw $v0, ($s1)
|
|
/* 37B4 800283B4 3C020030 */ lui $v0, 0x30
|
|
/* 37B8 800283B8 AE020004 */ sw $v0, 4($s0)
|
|
/* 37BC 800283BC 26020010 */ addiu $v0, $s0, 0x10
|
|
/* 37C0 800283C0 AE060000 */ sw $a2, ($s0)
|
|
/* 37C4 800283C4 AE220000 */ sw $v0, ($s1)
|
|
/* 37C8 800283C8 26020018 */ addiu $v0, $s0, 0x18
|
|
/* 37CC 800283CC AE070008 */ sw $a3, 8($s0)
|
|
/* 37D0 800283D0 AE00000C */ sw $zero, 0xc($s0)
|
|
/* 37D4 800283D4 AE220000 */ sw $v0, ($s1)
|
|
/* 37D8 800283D8 26020020 */ addiu $v0, $s0, 0x20
|
|
/* 37DC 800283DC AE080010 */ sw $t0, 0x10($s0)
|
|
/* 37E0 800283E0 AE030014 */ sw $v1, 0x14($s0)
|
|
/* 37E4 800283E4 AE220000 */ sw $v0, ($s1)
|
|
/* 37E8 800283E8 26020028 */ addiu $v0, $s0, 0x28
|
|
/* 37EC 800283EC AE120018 */ sw $s2, 0x18($s0)
|
|
/* 37F0 800283F0 AE09001C */ sw $t1, 0x1c($s0)
|
|
/* 37F4 800283F4 AE220000 */ sw $v0, ($s1)
|
|
/* 37F8 800283F8 26020030 */ addiu $v0, $s0, 0x30
|
|
/* 37FC 800283FC AE0A0020 */ sw $t2, 0x20($s0)
|
|
/* 3800 80028400 AE000024 */ sw $zero, 0x24($s0)
|
|
/* 3804 80028404 AE220000 */ sw $v0, ($s1)
|
|
/* 3808 80028408 3C02E700 */ lui $v0, 0xe700
|
|
/* 380C 8002840C AE020028 */ sw $v0, 0x28($s0)
|
|
/* 3810 80028410 26020038 */ addiu $v0, $s0, 0x38
|
|
/* 3814 80028414 AE00002C */ sw $zero, 0x2c($s0)
|
|
/* 3818 80028418 AE220000 */ sw $v0, ($s1)
|
|
/* 381C 8002841C 0C018798 */ jal func_80061E60
|
|
/* 3820 80028420 AE080030 */ sw $t0, 0x30($s0)
|
|
/* 3824 80028424 8E230000 */ lw $v1, ($s1)
|
|
/* 3828 80028428 AE020034 */ sw $v0, 0x34($s0)
|
|
/* 382C 8002842C 0060282D */ daddu $a1, $v1, $zero
|
|
/* 3830 80028430 ACB20000 */ sw $s2, ($a1)
|
|
/* 3834 80028434 8664002C */ lh $a0, 0x2c($s3)
|
|
/* 3838 80028438 24630008 */ addiu $v1, $v1, 8
|
|
/* 383C 8002843C AE230000 */ sw $v1, ($s1)
|
|
/* 3840 80028440 8663002E */ lh $v1, 0x2e($s3)
|
|
/* 3844 80028444 96620030 */ lhu $v0, 0x30($s3)
|
|
/* 3848 80028448 00042200 */ sll $a0, $a0, 8
|
|
/* 384C 8002844C 3084F800 */ andi $a0, $a0, 0xf800
|
|
/* 3850 80028450 000318C0 */ sll $v1, $v1, 3
|
|
/* 3854 80028454 306307C0 */ andi $v1, $v1, 0x7c0
|
|
/* 3858 80028458 00832025 */ or $a0, $a0, $v1
|
|
/* 385C 8002845C 00021082 */ srl $v0, $v0, 2
|
|
/* 3860 80028460 3042003E */ andi $v0, $v0, 0x3e
|
|
/* 3864 80028464 00822025 */ or $a0, $a0, $v0
|
|
/* 3868 80028468 34820001 */ ori $v0, $a0, 1
|
|
/* 386C 8002846C 00021400 */ sll $v0, $v0, 0x10
|
|
/* 3870 80028470 34420001 */ ori $v0, $v0, 1
|
|
/* 3874 80028474 3C038007 */ lui $v1, %hi(gGameStatusPtr)
|
|
/* 3878 80028478 8C63417C */ lw $v1, %lo(gGameStatusPtr)($v1)
|
|
/* 387C 8002847C 00441025 */ or $v0, $v0, $a0
|
|
/* 3880 80028480 ACA20004 */ sw $v0, 4($a1)
|
|
/* 3884 80028484 8470014A */ lh $s0, 0x14a($v1)
|
|
/* 3888 80028488 8462014E */ lh $v0, 0x14e($v1)
|
|
/* 388C 8002848C 8471014C */ lh $s1, 0x14c($v1)
|
|
/* 3890 80028490 0202A021 */ addu $s4, $s0, $v0
|
|
/* 3894 80028494 84620150 */ lh $v0, 0x150($v1)
|
|
/* 3898 80028498 8663000E */ lh $v1, 0xe($s3)
|
|
/* 389C 8002849C 02229021 */ addu $s2, $s1, $v0
|
|
/* 38A0 800284A0 0203102A */ slt $v0, $s0, $v1
|
|
/* 38A4 800284A4 54400001 */ bnel $v0, $zero, .L800284AC
|
|
/* 38A8 800284A8 0060802D */ daddu $s0, $v1, $zero
|
|
.L800284AC:
|
|
/* 38AC 800284AC 86640010 */ lh $a0, 0x10($s3)
|
|
/* 38B0 800284B0 0224102A */ slt $v0, $s1, $a0
|
|
/* 38B4 800284B4 54400001 */ bnel $v0, $zero, .L800284BC
|
|
/* 38B8 800284B8 0080882D */ daddu $s1, $a0, $zero
|
|
.L800284BC:
|
|
/* 38BC 800284BC 8662000A */ lh $v0, 0xa($s3)
|
|
/* 38C0 800284C0 00621821 */ addu $v1, $v1, $v0
|
|
/* 38C4 800284C4 0074102A */ slt $v0, $v1, $s4
|
|
/* 38C8 800284C8 54400001 */ bnel $v0, $zero, .L800284D0
|
|
/* 38CC 800284CC 0060A02D */ daddu $s4, $v1, $zero
|
|
.L800284D0:
|
|
/* 38D0 800284D0 8662000C */ lh $v0, 0xc($s3)
|
|
/* 38D4 800284D4 00821821 */ addu $v1, $a0, $v0
|
|
/* 38D8 800284D8 0072102A */ slt $v0, $v1, $s2
|
|
/* 38DC 800284DC 54400001 */ bnel $v0, $zero, .L800284E4
|
|
/* 38E0 800284E0 0060902D */ daddu $s2, $v1, $zero
|
|
.L800284E4:
|
|
/* 38E4 800284E4 06020001 */ bltzl $s0, .L800284EC
|
|
/* 38E8 800284E8 0000802D */ daddu $s0, $zero, $zero
|
|
.L800284EC:
|
|
/* 38EC 800284EC 06220001 */ bltzl $s1, .L800284F4
|
|
/* 38F0 800284F0 0000882D */ daddu $s1, $zero, $zero
|
|
.L800284F4:
|
|
/* 38F4 800284F4 5A800001 */ blezl $s4, .L800284FC
|
|
/* 38F8 800284F8 24140001 */ addiu $s4, $zero, 1
|
|
.L800284FC:
|
|
/* 38FC 800284FC 5A400001 */ blezl $s2, .L80028504
|
|
/* 3900 80028500 24120001 */ addiu $s2, $zero, 1
|
|
.L80028504:
|
|
/* 3904 80028504 2A020140 */ slti $v0, $s0, 0x140
|
|
/* 3908 80028508 50400001 */ beql $v0, $zero, .L80028510
|
|
/* 390C 8002850C 2410013F */ addiu $s0, $zero, 0x13f
|
|
.L80028510:
|
|
/* 3910 80028510 2A2200F0 */ slti $v0, $s1, 0xf0
|
|
/* 3914 80028514 50400001 */ beql $v0, $zero, .L8002851C
|
|
/* 3918 80028518 241100EF */ addiu $s1, $zero, 0xef
|
|
.L8002851C:
|
|
/* 391C 8002851C 2A820141 */ slti $v0, $s4, 0x141
|
|
/* 3920 80028520 50400001 */ beql $v0, $zero, .L80028528
|
|
/* 3924 80028524 24140140 */ addiu $s4, $zero, 0x140
|
|
.L80028528:
|
|
/* 3928 80028528 2A4200F1 */ slti $v0, $s2, 0xf1
|
|
/* 392C 8002852C 50400001 */ beql $v0, $zero, .L80028534
|
|
/* 3930 80028530 241200F0 */ addiu $s2, $zero, 0xf0
|
|
.L80028534:
|
|
/* 3934 80028534 3C028007 */ lui $v0, %hi(gGameStatusPtr)
|
|
/* 3938 80028538 8C42417C */ lw $v0, %lo(gGameStatusPtr)($v0)
|
|
/* 393C 8002853C 94420148 */ lhu $v0, 0x148($v0)
|
|
/* 3940 80028540 30420001 */ andi $v0, $v0, 1
|
|
/* 3944 80028544 14400017 */ bnez $v0, .L800285A4
|
|
/* 3948 80028548 3C04F600 */ lui $a0, 0xf600
|
|
/* 394C 8002854C 3C03800A */ lui $v1, %hi(D_8009A64C)
|
|
/* 3950 80028550 2463A64C */ addiu $v1, $v1, %lo(D_8009A64C)
|
|
/* 3954 80028554 8C620000 */ lw $v0, ($v1)
|
|
/* 3958 80028558 0040282D */ daddu $a1, $v0, $zero
|
|
/* 395C 8002855C 24420008 */ addiu $v0, $v0, 8
|
|
/* 3960 80028560 AC620000 */ sw $v0, ($v1)
|
|
/* 3964 80028564 2683FFFF */ addiu $v1, $s4, -1
|
|
/* 3968 80028568 306303FF */ andi $v1, $v1, 0x3ff
|
|
/* 396C 8002856C 00031B80 */ sll $v1, $v1, 0xe
|
|
/* 3970 80028570 2642FFFF */ addiu $v0, $s2, -1
|
|
/* 3974 80028574 304203FF */ andi $v0, $v0, 0x3ff
|
|
/* 3978 80028578 00021080 */ sll $v0, $v0, 2
|
|
/* 397C 8002857C 00441025 */ or $v0, $v0, $a0
|
|
/* 3980 80028580 00621825 */ or $v1, $v1, $v0
|
|
/* 3984 80028584 ACA30000 */ sw $v1, ($a1)
|
|
/* 3988 80028588 320303FF */ andi $v1, $s0, 0x3ff
|
|
/* 398C 8002858C 00031B80 */ sll $v1, $v1, 0xe
|
|
/* 3990 80028590 322203FF */ andi $v0, $s1, 0x3ff
|
|
/* 3994 80028594 00021080 */ sll $v0, $v0, 2
|
|
/* 3998 80028598 00621825 */ or $v1, $v1, $v0
|
|
/* 399C 8002859C 0800A16B */ j .L800285AC
|
|
/* 39A0 800285A0 ACA30004 */ sw $v1, 4($a1)
|
|
.L800285A4:
|
|
/* 39A4 800285A4 0C052BDC */ jal func_8014AF70
|
|
/* 39A8 800285A8 00000000 */ nop
|
|
.L800285AC:
|
|
/* 39AC 800285AC 3C04E300 */ lui $a0, 0xe300
|
|
/* 39B0 800285B0 34840A01 */ ori $a0, $a0, 0xa01
|
|
/* 39B4 800285B4 3C05E200 */ lui $a1, 0xe200
|
|
/* 39B8 800285B8 34A5001C */ ori $a1, $a1, 0x1c
|
|
/* 39BC 800285BC 3C060001 */ lui $a2, 1
|
|
/* 39C0 800285C0 3C08800A */ lui $t0, %hi(D_8009A64C)
|
|
/* 39C4 800285C4 2508A64C */ addiu $t0, $t0, %lo(D_8009A64C)
|
|
/* 39C8 800285C8 34C60001 */ ori $a2, $a2, 1
|
|
/* 39CC 800285CC 8D070000 */ lw $a3, ($t0)
|
|
/* 39D0 800285D0 3C03E700 */ lui $v1, 0xe700
|
|
/* 39D4 800285D4 00E0102D */ daddu $v0, $a3, $zero
|
|
/* 39D8 800285D8 24E70008 */ addiu $a3, $a3, 8
|
|
/* 39DC 800285DC AD070000 */ sw $a3, ($t0)
|
|
/* 39E0 800285E0 AC430000 */ sw $v1, ($v0)
|
|
/* 39E4 800285E4 AC400004 */ sw $zero, 4($v0)
|
|
/* 39E8 800285E8 24E20008 */ addiu $v0, $a3, 8
|
|
/* 39EC 800285EC AD020000 */ sw $v0, ($t0)
|
|
/* 39F0 800285F0 3C020030 */ lui $v0, 0x30
|
|
/* 39F4 800285F4 ACE20004 */ sw $v0, 4($a3)
|
|
/* 39F8 800285F8 24E20010 */ addiu $v0, $a3, 0x10
|
|
/* 39FC 800285FC ACE40000 */ sw $a0, ($a3)
|
|
/* 3A00 80028600 AD020000 */ sw $v0, ($t0)
|
|
/* 3A04 80028604 24E20018 */ addiu $v0, $a3, 0x18
|
|
/* 3A08 80028608 ACE50008 */ sw $a1, 8($a3)
|
|
/* 3A0C 8002860C ACE0000C */ sw $zero, 0xc($a3)
|
|
/* 3A10 80028610 AD020000 */ sw $v0, ($t0)
|
|
/* 3A14 80028614 3C02F700 */ lui $v0, 0xf700
|
|
/* 3A18 80028618 ACE20010 */ sw $v0, 0x10($a3)
|
|
/* 3A1C 8002861C 24E20020 */ addiu $v0, $a3, 0x20
|
|
/* 3A20 80028620 ACE60014 */ sw $a2, 0x14($a3)
|
|
/* 3A24 80028624 AD020000 */ sw $v0, ($t0)
|
|
/* 3A28 80028628 ACE30018 */ sw $v1, 0x18($a3)
|
|
/* 3A2C 8002862C 1A20000F */ blez $s1, .L8002866C
|
|
/* 3A30 80028630 ACE0001C */ sw $zero, 0x1c($a3)
|
|
/* 3A34 80028634 3C03F64F */ lui $v1, 0xf64f
|
|
/* 3A38 80028638 3463C000 */ ori $v1, $v1, 0xc000
|
|
/* 3A3C 8002863C 24E20028 */ addiu $v0, $a3, 0x28
|
|
/* 3A40 80028640 AD020000 */ sw $v0, ($t0)
|
|
/* 3A44 80028644 2622FFFF */ addiu $v0, $s1, -1
|
|
/* 3A48 80028648 304203FF */ andi $v0, $v0, 0x3ff
|
|
/* 3A4C 8002864C 00021080 */ sll $v0, $v0, 2
|
|
/* 3A50 80028650 00431025 */ or $v0, $v0, $v1
|
|
/* 3A54 80028654 ACE20020 */ sw $v0, 0x20($a3)
|
|
/* 3A58 80028658 24E20030 */ addiu $v0, $a3, 0x30
|
|
/* 3A5C 8002865C ACE00024 */ sw $zero, 0x24($a3)
|
|
/* 3A60 80028660 AD020000 */ sw $v0, ($t0)
|
|
/* 3A64 80028664 ACE00028 */ sw $zero, 0x28($a3)
|
|
/* 3A68 80028668 ACE0002C */ sw $zero, 0x2c($a3)
|
|
.L8002866C:
|
|
/* 3A6C 8002866C 1A000015 */ blez $s0, .L800286C4
|
|
/* 3A70 80028670 2603FFFF */ addiu $v1, $s0, -1
|
|
/* 3A74 80028674 306303FF */ andi $v1, $v1, 0x3ff
|
|
/* 3A78 80028678 00031B80 */ sll $v1, $v1, 0xe
|
|
/* 3A7C 8002867C 2642FFFF */ addiu $v0, $s2, -1
|
|
/* 3A80 80028680 304203FF */ andi $v0, $v0, 0x3ff
|
|
/* 3A84 80028684 00021080 */ sll $v0, $v0, 2
|
|
/* 3A88 80028688 3C04F600 */ lui $a0, 0xf600
|
|
/* 3A8C 8002868C 00441025 */ or $v0, $v0, $a0
|
|
/* 3A90 80028690 00621825 */ or $v1, $v1, $v0
|
|
/* 3A94 80028694 322203FF */ andi $v0, $s1, 0x3ff
|
|
/* 3A98 80028698 8D050000 */ lw $a1, ($t0)
|
|
/* 3A9C 8002869C 00021080 */ sll $v0, $v0, 2
|
|
/* 3AA0 800286A0 00A0302D */ daddu $a2, $a1, $zero
|
|
/* 3AA4 800286A4 24A50008 */ addiu $a1, $a1, 8
|
|
/* 3AA8 800286A8 AD050000 */ sw $a1, ($t0)
|
|
/* 3AAC 800286AC ACC20004 */ sw $v0, 4($a2)
|
|
/* 3AB0 800286B0 24A20008 */ addiu $v0, $a1, 8
|
|
/* 3AB4 800286B4 ACC30000 */ sw $v1, ($a2)
|
|
/* 3AB8 800286B8 AD020000 */ sw $v0, ($t0)
|
|
/* 3ABC 800286BC ACA00000 */ sw $zero, ($a1)
|
|
/* 3AC0 800286C0 ACA00004 */ sw $zero, 4($a1)
|
|
.L800286C4:
|
|
/* 3AC4 800286C4 2A820140 */ slti $v0, $s4, 0x140
|
|
/* 3AC8 800286C8 10400015 */ beqz $v0, .L80028720
|
|
/* 3ACC 800286CC 3C03F64F */ lui $v1, 0xf64f
|
|
/* 3AD0 800286D0 3463C000 */ ori $v1, $v1, 0xc000
|
|
/* 3AD4 800286D4 2642FFFF */ addiu $v0, $s2, -1
|
|
/* 3AD8 800286D8 304203FF */ andi $v0, $v0, 0x3ff
|
|
/* 3ADC 800286DC 00021080 */ sll $v0, $v0, 2
|
|
/* 3AE0 800286E0 00431025 */ or $v0, $v0, $v1
|
|
/* 3AE4 800286E4 328303FF */ andi $v1, $s4, 0x3ff
|
|
/* 3AE8 800286E8 8D040000 */ lw $a0, ($t0)
|
|
/* 3AEC 800286EC 00031B80 */ sll $v1, $v1, 0xe
|
|
/* 3AF0 800286F0 0080282D */ daddu $a1, $a0, $zero
|
|
/* 3AF4 800286F4 24840008 */ addiu $a0, $a0, 8
|
|
/* 3AF8 800286F8 AD040000 */ sw $a0, ($t0)
|
|
/* 3AFC 800286FC ACA20000 */ sw $v0, ($a1)
|
|
/* 3B00 80028700 322203FF */ andi $v0, $s1, 0x3ff
|
|
/* 3B04 80028704 00021080 */ sll $v0, $v0, 2
|
|
/* 3B08 80028708 00621825 */ or $v1, $v1, $v0
|
|
/* 3B0C 8002870C 24820008 */ addiu $v0, $a0, 8
|
|
/* 3B10 80028710 ACA30004 */ sw $v1, 4($a1)
|
|
/* 3B14 80028714 AD020000 */ sw $v0, ($t0)
|
|
/* 3B18 80028718 AC800000 */ sw $zero, ($a0)
|
|
/* 3B1C 8002871C AC800004 */ sw $zero, 4($a0)
|
|
.L80028720:
|
|
/* 3B20 80028720 2A4200F0 */ slti $v0, $s2, 0xf0
|
|
/* 3B24 80028724 1040000E */ beqz $v0, .L80028760
|
|
/* 3B28 80028728 3C02F64F */ lui $v0, 0xf64f
|
|
/* 3B2C 8002872C 8D030000 */ lw $v1, ($t0)
|
|
/* 3B30 80028730 3442C3BC */ ori $v0, $v0, 0xc3bc
|
|
/* 3B34 80028734 0060202D */ daddu $a0, $v1, $zero
|
|
/* 3B38 80028738 24630008 */ addiu $v1, $v1, 8
|
|
/* 3B3C 8002873C AD030000 */ sw $v1, ($t0)
|
|
/* 3B40 80028740 AC820000 */ sw $v0, ($a0)
|
|
/* 3B44 80028744 324203FF */ andi $v0, $s2, 0x3ff
|
|
/* 3B48 80028748 00021080 */ sll $v0, $v0, 2
|
|
/* 3B4C 8002874C AC820004 */ sw $v0, 4($a0)
|
|
/* 3B50 80028750 24620008 */ addiu $v0, $v1, 8
|
|
/* 3B54 80028754 AD020000 */ sw $v0, ($t0)
|
|
/* 3B58 80028758 AC600000 */ sw $zero, ($v1)
|
|
/* 3B5C 8002875C AC600004 */ sw $zero, 4($v1)
|
|
.L80028760:
|
|
/* 3B60 80028760 3C03800A */ lui $v1, %hi(D_8009A64C)
|
|
/* 3B64 80028764 2463A64C */ addiu $v1, $v1, %lo(D_8009A64C)
|
|
/* 3B68 80028768 8C620000 */ lw $v0, ($v1)
|
|
/* 3B6C 8002876C 0040202D */ daddu $a0, $v0, $zero
|
|
/* 3B70 80028770 24420008 */ addiu $v0, $v0, 8
|
|
/* 3B74 80028774 AC620000 */ sw $v0, ($v1)
|
|
/* 3B78 80028778 3C02E700 */ lui $v0, 0xe700
|
|
/* 3B7C 8002877C AC820000 */ sw $v0, ($a0)
|
|
/* 3B80 80028780 AC800004 */ sw $zero, 4($a0)
|
|
.L80028784:
|
|
/* 3B84 80028784 8FBF0044 */ lw $ra, 0x44($sp)
|
|
/* 3B88 80028788 8FBE0040 */ lw $fp, 0x40($sp)
|
|
/* 3B8C 8002878C 8FB7003C */ lw $s7, 0x3c($sp)
|
|
/* 3B90 80028790 8FB60038 */ lw $s6, 0x38($sp)
|
|
/* 3B94 80028794 8FB50034 */ lw $s5, 0x34($sp)
|
|
/* 3B98 80028798 8FB40030 */ lw $s4, 0x30($sp)
|
|
/* 3B9C 8002879C 8FB3002C */ lw $s3, 0x2c($sp)
|
|
/* 3BA0 800287A0 8FB20028 */ lw $s2, 0x28($sp)
|
|
/* 3BA4 800287A4 8FB10024 */ lw $s1, 0x24($sp)
|
|
/* 3BA8 800287A8 8FB00020 */ lw $s0, 0x20($sp)
|
|
/* 3BAC 800287AC 03E00008 */ jr $ra
|
|
/* 3BB0 800287B0 27BD0048 */ addiu $sp, $sp, 0x48
|
|
/* 3BB4 800287B4 00000000 */ nop
|
|
/* 3BB8 800287B8 00000000 */ nop
|
|
/* 3BBC 800287BC 00000000 */ nop
|