.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8013DAB4 /* D41B4 8013DAB4 27BDFFB0 */ addiu $sp, $sp, -0x50 /* D41B8 8013DAB8 AFB40038 */ sw $s4, 0x38($sp) /* D41BC 8013DABC 0080A02D */ daddu $s4, $a0, $zero /* D41C0 8013DAC0 AFBF004C */ sw $ra, 0x4c($sp) /* D41C4 8013DAC4 AFBE0048 */ sw $fp, 0x48($sp) /* D41C8 8013DAC8 AFB70044 */ sw $s7, 0x44($sp) /* D41CC 8013DACC AFB60040 */ sw $s6, 0x40($sp) /* D41D0 8013DAD0 AFB5003C */ sw $s5, 0x3c($sp) /* D41D4 8013DAD4 AFB30034 */ sw $s3, 0x34($sp) /* D41D8 8013DAD8 AFB20030 */ sw $s2, 0x30($sp) /* D41DC 8013DADC AFB1002C */ sw $s1, 0x2c($sp) /* D41E0 8013DAE0 AFB00028 */ sw $s0, 0x28($sp) /* D41E4 8013DAE4 AFA50054 */ sw $a1, 0x54($sp) /* D41E8 8013DAE8 8E820014 */ lw $v0, 0x14($s4) /* D41EC 8013DAEC 30420020 */ andi $v0, $v0, 0x20 /* D41F0 8013DAF0 14400030 */ bnez $v0, .L8013DBB4 /* D41F4 8013DAF4 3C03E300 */ lui $v1, 0xe300 /* D41F8 8013DAF8 34631001 */ ori $v1, $v1, 0x1001 /* D41FC 8013DAFC 3C06F500 */ lui $a2, 0xf500 /* D4200 8013DB00 34C60100 */ ori $a2, $a2, 0x100 /* D4204 8013DB04 3C070703 */ lui $a3, 0x703 /* D4208 8013DB08 3C04800A */ lui $a0, %hi(gMasterGfxPos) /* D420C 8013DB0C 2484A66C */ addiu $a0, $a0, %lo(gMasterGfxPos) /* D4210 8013DB10 8C820000 */ lw $v0, ($a0) /* D4214 8013DB14 34E7C000 */ ori $a3, $a3, 0xc000 /* D4218 8013DB18 0040282D */ daddu $a1, $v0, $zero /* D421C 8013DB1C 24420008 */ addiu $v0, $v0, 8 /* D4220 8013DB20 AC820000 */ sw $v0, ($a0) /* D4224 8013DB24 ACA30000 */ sw $v1, ($a1) /* D4228 8013DB28 34038000 */ ori $v1, $zero, 0x8000 /* D422C 8013DB2C ACA30004 */ sw $v1, 4($a1) /* D4230 8013DB30 24430008 */ addiu $v1, $v0, 8 /* D4234 8013DB34 AC830000 */ sw $v1, ($a0) /* D4238 8013DB38 3C058015 */ lui $a1, %hi(D_8014EE10) /* D423C 8013DB3C 8CA5EE10 */ lw $a1, %lo(D_8014EE10)($a1) /* D4240 8013DB40 3C03FD10 */ lui $v1, 0xfd10 /* D4244 8013DB44 AC430000 */ sw $v1, ($v0) /* D4248 8013DB48 24430010 */ addiu $v1, $v0, 0x10 /* D424C 8013DB4C AC830000 */ sw $v1, ($a0) /* D4250 8013DB50 8CA50004 */ lw $a1, 4($a1) /* D4254 8013DB54 3C03E800 */ lui $v1, 0xe800 /* D4258 8013DB58 AC430008 */ sw $v1, 8($v0) /* D425C 8013DB5C 24430018 */ addiu $v1, $v0, 0x18 /* D4260 8013DB60 AC40000C */ sw $zero, 0xc($v0) /* D4264 8013DB64 AC830000 */ sw $v1, ($a0) /* D4268 8013DB68 3C030700 */ lui $v1, 0x700 /* D426C 8013DB6C AC430014 */ sw $v1, 0x14($v0) /* D4270 8013DB70 24430020 */ addiu $v1, $v0, 0x20 /* D4274 8013DB74 AC460010 */ sw $a2, 0x10($v0) /* D4278 8013DB78 AC830000 */ sw $v1, ($a0) /* D427C 8013DB7C 3C03E600 */ lui $v1, 0xe600 /* D4280 8013DB80 AC430018 */ sw $v1, 0x18($v0) /* D4284 8013DB84 24430028 */ addiu $v1, $v0, 0x28 /* D4288 8013DB88 AC40001C */ sw $zero, 0x1c($v0) /* D428C 8013DB8C AC830000 */ sw $v1, ($a0) /* D4290 8013DB90 3C03F000 */ lui $v1, 0xf000 /* D4294 8013DB94 AC430020 */ sw $v1, 0x20($v0) /* D4298 8013DB98 24430030 */ addiu $v1, $v0, 0x30 /* D429C 8013DB9C AC470024 */ sw $a3, 0x24($v0) /* D42A0 8013DBA0 AC830000 */ sw $v1, ($a0) /* D42A4 8013DBA4 3C03E700 */ lui $v1, 0xe700 /* D42A8 8013DBA8 AC430028 */ sw $v1, 0x28($v0) /* D42AC 8013DBAC AC40002C */ sw $zero, 0x2c($v0) /* D42B0 8013DBB0 AC450004 */ sw $a1, 4($v0) .L8013DBB4: /* D42B4 8013DBB4 92820004 */ lbu $v0, 4($s4) /* D42B8 8013DBB8 968E0008 */ lhu $t6, 8($s4) /* D42BC 8013DBBC 104001C0 */ beqz $v0, .L8013E2C0 /* D42C0 8013DBC0 0000A82D */ daddu $s5, $zero, $zero /* D42C4 8013DBC4 3C10800A */ lui $s0, %hi(gMasterGfxPos) /* D42C8 8013DBC8 2610A66C */ addiu $s0, $s0, %lo(gMasterGfxPos) /* D42CC 8013DBCC 3C1EF540 */ lui $fp, 0xf540 /* D42D0 8013DBD0 3C17F200 */ lui $s7, 0xf200 .L8013DBD4: /* D42D4 8013DBD4 92830003 */ lbu $v1, 3($s4) /* D42D8 8013DBD8 106001B4 */ beqz $v1, .L8013E2AC /* D42DC 8013DBDC 0000902D */ daddu $s2, $zero, $zero /* D42E0 8013DBE0 24630001 */ addiu $v1, $v1, 1 .L8013DBE4: /* D42E4 8013DBE4 02A30018 */ mult $s5, $v1 /* D42E8 8013DBE8 00004012 */ mflo $t0 /* D42EC 8013DBEC 26A20001 */ addiu $v0, $s5, 1 /* D42F0 8013DBF0 00000000 */ nop /* D42F4 8013DBF4 00430018 */ mult $v0, $v1 /* D42F8 8013DBF8 01C81021 */ addu $v0, $t6, $t0 /* D42FC 8013DBFC 00528821 */ addu $s1, $v0, $s2 /* D4300 8013DC00 262F0001 */ addiu $t7, $s1, 1 /* D4304 8013DC04 00001812 */ mflo $v1 /* D4308 8013DC08 01C31021 */ addu $v0, $t6, $v1 /* D430C 8013DC0C 0052B021 */ addu $s6, $v0, $s2 /* D4310 8013DC10 8E830014 */ lw $v1, 0x14($s4) /* D4314 8013DC14 30620020 */ andi $v0, $v1, 0x20 /* D4318 8013DC18 14400173 */ bnez $v0, .L8013E1E8 /* D431C 8013DC1C 26D30001 */ addiu $s3, $s6, 1 /* D4320 8013DC20 3C028015 */ lui $v0, %hi(D_80151328) /* D4324 8013DC24 8C421328 */ lw $v0, %lo(D_80151328)($v0) /* D4328 8013DC28 94420000 */ lhu $v0, ($v0) /* D432C 8013DC2C 30420001 */ andi $v0, $v0, 1 /* D4330 8013DC30 504000E9 */ beql $v0, $zero, .L8013DFD8 /* D4334 8013DC34 3C08070A */ lui $t0, 0x70a /* D4338 8013DC38 3C028015 */ lui $v0, %hi(D_80156954) /* D433C 8013DC3C 8C426954 */ lw $v0, %lo(D_80156954)($v0) /* D4340 8013DC40 90420000 */ lbu $v0, ($v0) /* D4344 8013DC44 104000E3 */ beqz $v0, .L8013DFD4 /* D4348 8013DC48 3C020018 */ lui $v0, 0x18 /* D434C 8013DC4C 00621024 */ and $v0, $v1, $v0 /* D4350 8013DC50 504000E1 */ beql $v0, $zero, .L8013DFD8 /* D4354 8013DC54 3C08070A */ lui $t0, 0x70a /* D4358 8013DC58 92830002 */ lbu $v1, 2($s4) /* D435C 8013DC5C 10600005 */ beqz $v1, .L8013DC74 /* D4360 8013DC60 24020002 */ addiu $v0, $zero, 2 /* D4364 8013DC64 10620003 */ beq $v1, $v0, .L8013DC74 /* D4368 8013DC68 24020007 */ addiu $v0, $zero, 7 /* D436C 8013DC6C 146200DA */ bne $v1, $v0, .L8013DFD8 /* D4370 8013DC70 3C08070A */ lui $t0, 0x70a .L8013DC74: /* D4374 8013DC74 3C08070A */ lui $t0, 0x70a /* D4378 8013DC78 35080280 */ ori $t0, $t0, 0x280 /* D437C 8013DC7C 3C09010A */ lui $t1, 0x10a /* D4380 8013DC80 35290280 */ ori $t1, $t1, 0x280 /* D4384 8013DC84 3C0B001A */ lui $t3, 0x1a /* D4388 8013DC88 356B0280 */ ori $t3, $t3, 0x280 /* D438C 8013DC8C 3C0AF510 */ lui $t2, 0xf510 /* D4390 8013DC90 354A0900 */ ori $t2, $t2, 0x900 /* D4394 8013DC94 3C0C020F */ lui $t4, 0x20f /* D4398 8013DC98 358CC000 */ ori $t4, $t4, 0xc000 /* D439C 8013DC9C 8E050000 */ lw $a1, ($s0) /* D43A0 8013DCA0 3C048015 */ lui $a0, %hi(D_8014EE10) /* D43A4 8013DCA4 8C84EE10 */ lw $a0, %lo(D_8014EE10)($a0) /* D43A8 8013DCA8 00A0302D */ daddu $a2, $a1, $zero /* D43AC 8013DCAC 24A50008 */ addiu $a1, $a1, 8 /* D43B0 8013DCB0 AE050000 */ sw $a1, ($s0) /* D43B4 8013DCB4 94820008 */ lhu $v0, 8($a0) /* D43B8 8013DCB8 24A30008 */ addiu $v1, $a1, 8 /* D43BC 8013DCBC AE030000 */ sw $v1, ($s0) /* D43C0 8013DCC0 3C03FD48 */ lui $v1, 0xfd48 /* D43C4 8013DCC4 00021042 */ srl $v0, $v0, 1 /* D43C8 8013DCC8 2442FFFF */ addiu $v0, $v0, -1 /* D43CC 8013DCCC 30420FFF */ andi $v0, $v0, 0xfff /* D43D0 8013DCD0 00431025 */ or $v0, $v0, $v1 /* D43D4 8013DCD4 ACC20000 */ sw $v0, ($a2) /* D43D8 8013DCD8 8C830000 */ lw $v1, ($a0) /* D43DC 8013DCDC 24A20010 */ addiu $v0, $a1, 0x10 /* D43E0 8013DCE0 AE020000 */ sw $v0, ($s0) /* D43E4 8013DCE4 3C028015 */ lui $v0, %hi(D_80156950) /* D43E8 8013DCE8 8C426950 */ lw $v0, %lo(D_80156950)($v0) /* D43EC 8013DCEC 00133900 */ sll $a3, $s3, 4 /* D43F0 8013DCF0 00E23821 */ addu $a3, $a3, $v0 /* D43F4 8013DCF4 ACC30004 */ sw $v1, 4($a2) /* D43F8 8013DCF8 00113100 */ sll $a2, $s1, 4 /* D43FC 8013DCFC 00C23021 */ addu $a2, $a2, $v0 /* D4400 8013DD00 94E20008 */ lhu $v0, 8($a3) /* D4404 8013DD04 94C40008 */ lhu $a0, 8($a2) /* D4408 8013DD08 24A30018 */ addiu $v1, $a1, 0x18 /* D440C 8013DD0C AE030000 */ sw $v1, ($s0) /* D4410 8013DD10 3C03E600 */ lui $v1, 0xe600 /* D4414 8013DD14 ACA30008 */ sw $v1, 8($a1) /* D4418 8013DD18 3C03F548 */ lui $v1, 0xf548 /* D441C 8013DD1C ACA80004 */ sw $t0, 4($a1) /* D4420 8013DD20 ACA0000C */ sw $zero, 0xc($a1) /* D4424 8013DD24 00021400 */ sll $v0, $v0, 0x10 /* D4428 8013DD28 00021543 */ sra $v0, $v0, 0x15 /* D442C 8013DD2C 00042400 */ sll $a0, $a0, 0x10 /* D4430 8013DD30 00042543 */ sra $a0, $a0, 0x15 /* D4434 8013DD34 00441023 */ subu $v0, $v0, $a0 /* D4438 8013DD38 00021043 */ sra $v0, $v0, 1 /* D443C 8013DD3C 24420007 */ addiu $v0, $v0, 7 /* D4440 8013DD40 000210C3 */ sra $v0, $v0, 3 /* D4444 8013DD44 304201FF */ andi $v0, $v0, 0x1ff /* D4448 8013DD48 00021240 */ sll $v0, $v0, 9 /* D444C 8013DD4C 00431025 */ or $v0, $v0, $v1 /* D4450 8013DD50 ACA20000 */ sw $v0, ($a1) /* D4454 8013DD54 24A20020 */ addiu $v0, $a1, 0x20 /* D4458 8013DD58 94C30008 */ lhu $v1, 8($a2) /* D445C 8013DD5C 3C04F400 */ lui $a0, 0xf400 /* D4460 8013DD60 AE020000 */ sw $v0, ($s0) /* D4464 8013DD64 94C2000A */ lhu $v0, 0xa($a2) /* D4468 8013DD68 00031C00 */ sll $v1, $v1, 0x10 /* D446C 8013DD6C 00031D43 */ sra $v1, $v1, 0x15 /* D4470 8013DD70 2463FF00 */ addiu $v1, $v1, -0x100 /* D4474 8013DD74 00031840 */ sll $v1, $v1, 1 /* D4478 8013DD78 30630FFF */ andi $v1, $v1, 0xfff /* D447C 8013DD7C 00031B00 */ sll $v1, $v1, 0xc /* D4480 8013DD80 00021400 */ sll $v0, $v0, 0x10 /* D4484 8013DD84 00021543 */ sra $v0, $v0, 0x15 /* D4488 8013DD88 2442FF00 */ addiu $v0, $v0, -0x100 /* D448C 8013DD8C 00021080 */ sll $v0, $v0, 2 /* D4490 8013DD90 30420FFF */ andi $v0, $v0, 0xfff /* D4494 8013DD94 00441025 */ or $v0, $v0, $a0 /* D4498 8013DD98 00621825 */ or $v1, $v1, $v0 /* D449C 8013DD9C ACA30010 */ sw $v1, 0x10($a1) /* D44A0 8013DDA0 94E20008 */ lhu $v0, 8($a3) /* D44A4 8013DDA4 94E3000A */ lhu $v1, 0xa($a3) /* D44A8 8013DDA8 3C04E700 */ lui $a0, 0xe700 /* D44AC 8013DDAC ACA40018 */ sw $a0, 0x18($a1) /* D44B0 8013DDB0 3C040700 */ lui $a0, 0x700 /* D44B4 8013DDB4 ACA0001C */ sw $zero, 0x1c($a1) /* D44B8 8013DDB8 00021400 */ sll $v0, $v0, 0x10 /* D44BC 8013DDBC 00021543 */ sra $v0, $v0, 0x15 /* D44C0 8013DDC0 2442FEFF */ addiu $v0, $v0, -0x101 /* D44C4 8013DDC4 00021040 */ sll $v0, $v0, 1 /* D44C8 8013DDC8 30420FFF */ andi $v0, $v0, 0xfff /* D44CC 8013DDCC 00021300 */ sll $v0, $v0, 0xc /* D44D0 8013DDD0 00031C00 */ sll $v1, $v1, 0x10 /* D44D4 8013DDD4 00031D43 */ sra $v1, $v1, 0x15 /* D44D8 8013DDD8 2463FEFF */ addiu $v1, $v1, -0x101 /* D44DC 8013DDDC 00031880 */ sll $v1, $v1, 2 /* D44E0 8013DDE0 30630FFF */ andi $v1, $v1, 0xfff /* D44E4 8013DDE4 00641825 */ or $v1, $v1, $a0 /* D44E8 8013DDE8 00431025 */ or $v0, $v0, $v1 /* D44EC 8013DDEC ACA20014 */ sw $v0, 0x14($a1) /* D44F0 8013DDF0 94E20008 */ lhu $v0, 8($a3) /* D44F4 8013DDF4 94C40008 */ lhu $a0, 8($a2) /* D44F8 8013DDF8 24A30028 */ addiu $v1, $a1, 0x28 /* D44FC 8013DDFC AE030000 */ sw $v1, ($s0) /* D4500 8013DE00 ACA90024 */ sw $t1, 0x24($a1) /* D4504 8013DE04 00021400 */ sll $v0, $v0, 0x10 /* D4508 8013DE08 00021543 */ sra $v0, $v0, 0x15 /* D450C 8013DE0C 00042400 */ sll $a0, $a0, 0x10 /* D4510 8013DE10 00042543 */ sra $a0, $a0, 0x15 /* D4514 8013DE14 00441023 */ subu $v0, $v0, $a0 /* D4518 8013DE18 00021043 */ sra $v0, $v0, 1 /* D451C 8013DE1C 24420007 */ addiu $v0, $v0, 7 /* D4520 8013DE20 000210C3 */ sra $v0, $v0, 3 /* D4524 8013DE24 304201FF */ andi $v0, $v0, 0x1ff /* D4528 8013DE28 00021240 */ sll $v0, $v0, 9 /* D452C 8013DE2C 005E1025 */ or $v0, $v0, $fp /* D4530 8013DE30 ACA20020 */ sw $v0, 0x20($a1) /* D4534 8013DE34 24A20030 */ addiu $v0, $a1, 0x30 /* D4538 8013DE38 94C30008 */ lhu $v1, 8($a2) /* D453C 8013DE3C 3C040100 */ lui $a0, 0x100 /* D4540 8013DE40 AE020000 */ sw $v0, ($s0) /* D4544 8013DE44 94C2000A */ lhu $v0, 0xa($a2) /* D4548 8013DE48 000318C2 */ srl $v1, $v1, 3 /* D454C 8013DE4C 30630FFC */ andi $v1, $v1, 0xffc /* D4550 8013DE50 00031B00 */ sll $v1, $v1, 0xc /* D4554 8013DE54 000210C2 */ srl $v0, $v0, 3 /* D4558 8013DE58 30420FFC */ andi $v0, $v0, 0xffc /* D455C 8013DE5C 00571025 */ or $v0, $v0, $s7 /* D4560 8013DE60 00621825 */ or $v1, $v1, $v0 /* D4564 8013DE64 24A20038 */ addiu $v0, $a1, 0x38 /* D4568 8013DE68 ACA30028 */ sw $v1, 0x28($a1) /* D456C 8013DE6C AE020000 */ sw $v0, ($s0) /* D4570 8013DE70 94E30008 */ lhu $v1, 8($a3) /* D4574 8013DE74 24A20040 */ addiu $v0, $a1, 0x40 /* D4578 8013DE78 AE020000 */ sw $v0, ($s0) /* D457C 8013DE7C 94E2000A */ lhu $v0, 0xa($a3) /* D4580 8013DE80 00031C00 */ sll $v1, $v1, 0x10 /* D4584 8013DE84 00031D43 */ sra $v1, $v1, 0x15 /* D4588 8013DE88 2463FFFF */ addiu $v1, $v1, -1 /* D458C 8013DE8C 00031880 */ sll $v1, $v1, 2 /* D4590 8013DE90 30630FFF */ andi $v1, $v1, 0xfff /* D4594 8013DE94 00031B00 */ sll $v1, $v1, 0xc /* D4598 8013DE98 00021400 */ sll $v0, $v0, 0x10 /* D459C 8013DE9C 00021543 */ sra $v0, $v0, 0x15 /* D45A0 8013DEA0 2442FFFF */ addiu $v0, $v0, -1 /* D45A4 8013DEA4 00021080 */ sll $v0, $v0, 2 /* D45A8 8013DEA8 30420FFF */ andi $v0, $v0, 0xfff /* D45AC 8013DEAC 00441025 */ or $v0, $v0, $a0 /* D45B0 8013DEB0 00621825 */ or $v1, $v1, $v0 /* D45B4 8013DEB4 ACA3002C */ sw $v1, 0x2c($a1) /* D45B8 8013DEB8 94E20008 */ lhu $v0, 8($a3) /* D45BC 8013DEBC 94C40008 */ lhu $a0, 8($a2) /* D45C0 8013DEC0 24A30048 */ addiu $v1, $a1, 0x48 /* D45C4 8013DEC4 AE030000 */ sw $v1, ($s0) /* D45C8 8013DEC8 3C030200 */ lui $v1, 0x200 /* D45CC 8013DECC ACAB0034 */ sw $t3, 0x34($a1) /* D45D0 8013DED0 ACAA0038 */ sw $t2, 0x38($a1) /* D45D4 8013DED4 ACA3003C */ sw $v1, 0x3c($a1) /* D45D8 8013DED8 ACB70040 */ sw $s7, 0x40($a1) /* D45DC 8013DEDC ACAC0044 */ sw $t4, 0x44($a1) /* D45E0 8013DEE0 00021400 */ sll $v0, $v0, 0x10 /* D45E4 8013DEE4 00021543 */ sra $v0, $v0, 0x15 /* D45E8 8013DEE8 00042400 */ sll $a0, $a0, 0x10 /* D45EC 8013DEEC 00042543 */ sra $a0, $a0, 0x15 /* D45F0 8013DEF0 00441023 */ subu $v0, $v0, $a0 /* D45F4 8013DEF4 00021043 */ sra $v0, $v0, 1 /* D45F8 8013DEF8 24420007 */ addiu $v0, $v0, 7 /* D45FC 8013DEFC 000210C3 */ sra $v0, $v0, 3 /* D4600 8013DF00 304201FF */ andi $v0, $v0, 0x1ff /* D4604 8013DF04 00021240 */ sll $v0, $v0, 9 /* D4608 8013DF08 005E1025 */ or $v0, $v0, $fp /* D460C 8013DF0C ACA20030 */ sw $v0, 0x30($a1) /* D4610 8013DF10 92830002 */ lbu $v1, 2($s4) /* D4614 8013DF14 24020002 */ addiu $v0, $zero, 2 /* D4618 8013DF18 10620009 */ beq $v1, $v0, .L8013DF40 /* D461C 8013DF1C 240D00FF */ addiu $t5, $zero, 0xff /* D4620 8013DF20 28620003 */ slti $v0, $v1, 3 /* D4624 8013DF24 1440000A */ bnez $v0, .L8013DF50 /* D4628 8013DF28 00111100 */ sll $v0, $s1, 4 /* D462C 8013DF2C 24020007 */ addiu $v0, $zero, 7 /* D4630 8013DF30 10620006 */ beq $v1, $v0, .L8013DF4C /* D4634 8013DF34 00111100 */ sll $v0, $s1, 4 /* D4638 8013DF38 0804F7D4 */ j .L8013DF50 /* D463C 8013DF3C 00000000 */ nop .L8013DF40: /* D4640 8013DF40 8E8D0038 */ lw $t5, 0x38($s4) /* D4644 8013DF44 0804F7D4 */ j .L8013DF50 /* D4648 8013DF48 00111100 */ sll $v0, $s1, 4 .L8013DF4C: /* D464C 8013DF4C 240DFFFF */ addiu $t5, $zero, -1 .L8013DF50: /* D4650 8013DF50 3C048015 */ lui $a0, %hi(D_80156950) /* D4654 8013DF54 8C846950 */ lw $a0, %lo(D_80156950)($a0) /* D4658 8013DF58 00131900 */ sll $v1, $s3, 4 /* D465C 8013DF5C 00441021 */ addu $v0, $v0, $a0 /* D4660 8013DF60 00641821 */ addu $v1, $v1, $a0 /* D4664 8013DF64 94450008 */ lhu $a1, 8($v0) /* D4668 8013DF68 9446000A */ lhu $a2, 0xa($v0) /* D466C 8013DF6C 94670008 */ lhu $a3, 8($v1) /* D4670 8013DF70 9462000A */ lhu $v0, 0xa($v1) /* D4674 8013DF74 8FA40054 */ lw $a0, 0x54($sp) /* D4678 8013DF78 AFAD0014 */ sw $t5, 0x14($sp) /* D467C 8013DF7C 00021400 */ sll $v0, $v0, 0x10 /* D4680 8013DF80 00021543 */ sra $v0, $v0, 0x15 /* D4684 8013DF84 2442FF00 */ addiu $v0, $v0, -0x100 /* D4688 8013DF88 00052C00 */ sll $a1, $a1, 0x10 /* D468C 8013DF8C 00052D43 */ sra $a1, $a1, 0x15 /* D4690 8013DF90 00063400 */ sll $a2, $a2, 0x10 /* D4694 8013DF94 00063543 */ sra $a2, $a2, 0x15 /* D4698 8013DF98 00073C00 */ sll $a3, $a3, 0x10 /* D469C 8013DF9C 00073D43 */ sra $a3, $a3, 0x15 /* D46A0 8013DFA0 24A5FF00 */ addiu $a1, $a1, -0x100 /* D46A4 8013DFA4 24C6FF00 */ addiu $a2, $a2, -0x100 /* D46A8 8013DFA8 AFA20010 */ sw $v0, 0x10($sp) /* D46AC 8013DFAC 8E820078 */ lw $v0, 0x78($s4) /* D46B0 8013DFB0 24E7FF00 */ addiu $a3, $a3, -0x100 /* D46B4 8013DFB4 AFAE0020 */ sw $t6, 0x20($sp) /* D46B8 8013DFB8 AFAF0024 */ sw $t7, 0x24($sp) /* D46BC 8013DFBC 0C052071 */ jal func_801481C4 /* D46C0 8013DFC0 AFA20018 */ sw $v0, 0x18($sp) /* D46C4 8013DFC4 8FAE0020 */ lw $t6, 0x20($sp) /* D46C8 8013DFC8 8FAF0024 */ lw $t7, 0x24($sp) /* D46CC 8013DFCC 0804F87B */ j .L8013E1EC /* D46D0 8013DFD0 3C020100 */ lui $v0, 0x100 .L8013DFD4: /* D46D4 8013DFD4 3C08070A */ lui $t0, 0x70a .L8013DFD8: /* D46D8 8013DFD8 35080280 */ ori $t0, $t0, 0x280 /* D46DC 8013DFDC 3C09000A */ lui $t1, 0xa /* D46E0 8013DFE0 35290280 */ ori $t1, $t1, 0x280 /* D46E4 8013DFE4 8E050000 */ lw $a1, ($s0) /* D46E8 8013DFE8 3C048015 */ lui $a0, %hi(D_8014EE10) /* D46EC 8013DFEC 8C84EE10 */ lw $a0, %lo(D_8014EE10)($a0) /* D46F0 8013DFF0 00A0302D */ daddu $a2, $a1, $zero /* D46F4 8013DFF4 24A50008 */ addiu $a1, $a1, 8 /* D46F8 8013DFF8 AE050000 */ sw $a1, ($s0) /* D46FC 8013DFFC 94820008 */ lhu $v0, 8($a0) /* D4700 8013E000 24A30008 */ addiu $v1, $a1, 8 /* D4704 8013E004 AE030000 */ sw $v1, ($s0) /* D4708 8013E008 3C03FD48 */ lui $v1, 0xfd48 /* D470C 8013E00C 00021042 */ srl $v0, $v0, 1 /* D4710 8013E010 2442FFFF */ addiu $v0, $v0, -1 /* D4714 8013E014 30420FFF */ andi $v0, $v0, 0xfff /* D4718 8013E018 00431025 */ or $v0, $v0, $v1 /* D471C 8013E01C ACC20000 */ sw $v0, ($a2) /* D4720 8013E020 8C830000 */ lw $v1, ($a0) /* D4724 8013E024 24A20010 */ addiu $v0, $a1, 0x10 /* D4728 8013E028 AE020000 */ sw $v0, ($s0) /* D472C 8013E02C 3C028015 */ lui $v0, %hi(D_80156950) /* D4730 8013E030 8C426950 */ lw $v0, %lo(D_80156950)($v0) /* D4734 8013E034 00133900 */ sll $a3, $s3, 4 /* D4738 8013E038 00E23821 */ addu $a3, $a3, $v0 /* D473C 8013E03C ACC30004 */ sw $v1, 4($a2) /* D4740 8013E040 00113100 */ sll $a2, $s1, 4 /* D4744 8013E044 00C23021 */ addu $a2, $a2, $v0 /* D4748 8013E048 94E20008 */ lhu $v0, 8($a3) /* D474C 8013E04C 94C40008 */ lhu $a0, 8($a2) /* D4750 8013E050 24A30018 */ addiu $v1, $a1, 0x18 /* D4754 8013E054 AE030000 */ sw $v1, ($s0) /* D4758 8013E058 3C03E600 */ lui $v1, 0xe600 /* D475C 8013E05C ACA30008 */ sw $v1, 8($a1) /* D4760 8013E060 3C03F548 */ lui $v1, 0xf548 /* D4764 8013E064 ACA80004 */ sw $t0, 4($a1) /* D4768 8013E068 ACA0000C */ sw $zero, 0xc($a1) /* D476C 8013E06C 00021400 */ sll $v0, $v0, 0x10 /* D4770 8013E070 00021543 */ sra $v0, $v0, 0x15 /* D4774 8013E074 00042400 */ sll $a0, $a0, 0x10 /* D4778 8013E078 00042543 */ sra $a0, $a0, 0x15 /* D477C 8013E07C 00441023 */ subu $v0, $v0, $a0 /* D4780 8013E080 00021043 */ sra $v0, $v0, 1 /* D4784 8013E084 24420007 */ addiu $v0, $v0, 7 /* D4788 8013E088 000210C3 */ sra $v0, $v0, 3 /* D478C 8013E08C 304201FF */ andi $v0, $v0, 0x1ff /* D4790 8013E090 00021240 */ sll $v0, $v0, 9 /* D4794 8013E094 00431025 */ or $v0, $v0, $v1 /* D4798 8013E098 ACA20000 */ sw $v0, ($a1) /* D479C 8013E09C 24A20020 */ addiu $v0, $a1, 0x20 /* D47A0 8013E0A0 94C30008 */ lhu $v1, 8($a2) /* D47A4 8013E0A4 3C04F400 */ lui $a0, 0xf400 /* D47A8 8013E0A8 AE020000 */ sw $v0, ($s0) /* D47AC 8013E0AC 94C2000A */ lhu $v0, 0xa($a2) /* D47B0 8013E0B0 00031C00 */ sll $v1, $v1, 0x10 /* D47B4 8013E0B4 00031D43 */ sra $v1, $v1, 0x15 /* D47B8 8013E0B8 2463FF00 */ addiu $v1, $v1, -0x100 /* D47BC 8013E0BC 00031840 */ sll $v1, $v1, 1 /* D47C0 8013E0C0 30630FFF */ andi $v1, $v1, 0xfff /* D47C4 8013E0C4 00031B00 */ sll $v1, $v1, 0xc /* D47C8 8013E0C8 00021400 */ sll $v0, $v0, 0x10 /* D47CC 8013E0CC 00021543 */ sra $v0, $v0, 0x15 /* D47D0 8013E0D0 2442FF00 */ addiu $v0, $v0, -0x100 /* D47D4 8013E0D4 00021080 */ sll $v0, $v0, 2 /* D47D8 8013E0D8 30420FFF */ andi $v0, $v0, 0xfff /* D47DC 8013E0DC 00441025 */ or $v0, $v0, $a0 /* D47E0 8013E0E0 00621825 */ or $v1, $v1, $v0 /* D47E4 8013E0E4 ACA30010 */ sw $v1, 0x10($a1) /* D47E8 8013E0E8 94E20008 */ lhu $v0, 8($a3) /* D47EC 8013E0EC 94E3000A */ lhu $v1, 0xa($a3) /* D47F0 8013E0F0 3C04E700 */ lui $a0, 0xe700 /* D47F4 8013E0F4 ACA40018 */ sw $a0, 0x18($a1) /* D47F8 8013E0F8 3C040700 */ lui $a0, 0x700 /* D47FC 8013E0FC ACA0001C */ sw $zero, 0x1c($a1) /* D4800 8013E100 00021400 */ sll $v0, $v0, 0x10 /* D4804 8013E104 00021543 */ sra $v0, $v0, 0x15 /* D4808 8013E108 2442FEFF */ addiu $v0, $v0, -0x101 /* D480C 8013E10C 00021040 */ sll $v0, $v0, 1 /* D4810 8013E110 30420FFF */ andi $v0, $v0, 0xfff /* D4814 8013E114 00021300 */ sll $v0, $v0, 0xc /* D4818 8013E118 00031C00 */ sll $v1, $v1, 0x10 /* D481C 8013E11C 00031D43 */ sra $v1, $v1, 0x15 /* D4820 8013E120 2463FEFF */ addiu $v1, $v1, -0x101 /* D4824 8013E124 00031880 */ sll $v1, $v1, 2 /* D4828 8013E128 30630FFF */ andi $v1, $v1, 0xfff /* D482C 8013E12C 00641825 */ or $v1, $v1, $a0 /* D4830 8013E130 00431025 */ or $v0, $v0, $v1 /* D4834 8013E134 ACA20014 */ sw $v0, 0x14($a1) /* D4838 8013E138 94E20008 */ lhu $v0, 8($a3) /* D483C 8013E13C 94C40008 */ lhu $a0, 8($a2) /* D4840 8013E140 24A30028 */ addiu $v1, $a1, 0x28 /* D4844 8013E144 AE030000 */ sw $v1, ($s0) /* D4848 8013E148 ACA90024 */ sw $t1, 0x24($a1) /* D484C 8013E14C 00021400 */ sll $v0, $v0, 0x10 /* D4850 8013E150 00021543 */ sra $v0, $v0, 0x15 /* D4854 8013E154 00042400 */ sll $a0, $a0, 0x10 /* D4858 8013E158 00042543 */ sra $a0, $a0, 0x15 /* D485C 8013E15C 00441023 */ subu $v0, $v0, $a0 /* D4860 8013E160 00021043 */ sra $v0, $v0, 1 /* D4864 8013E164 24420007 */ addiu $v0, $v0, 7 /* D4868 8013E168 000210C3 */ sra $v0, $v0, 3 /* D486C 8013E16C 304201FF */ andi $v0, $v0, 0x1ff /* D4870 8013E170 00021240 */ sll $v0, $v0, 9 /* D4874 8013E174 005E1025 */ or $v0, $v0, $fp /* D4878 8013E178 ACA20020 */ sw $v0, 0x20($a1) /* D487C 8013E17C 94C30008 */ lhu $v1, 8($a2) /* D4880 8013E180 24A20030 */ addiu $v0, $a1, 0x30 /* D4884 8013E184 AE020000 */ sw $v0, ($s0) /* D4888 8013E188 94C2000A */ lhu $v0, 0xa($a2) /* D488C 8013E18C 000318C2 */ srl $v1, $v1, 3 /* D4890 8013E190 30630FFC */ andi $v1, $v1, 0xffc /* D4894 8013E194 00031B00 */ sll $v1, $v1, 0xc /* D4898 8013E198 000210C2 */ srl $v0, $v0, 3 /* D489C 8013E19C 30420FFC */ andi $v0, $v0, 0xffc /* D48A0 8013E1A0 00571025 */ or $v0, $v0, $s7 /* D48A4 8013E1A4 00621825 */ or $v1, $v1, $v0 /* D48A8 8013E1A8 ACA30028 */ sw $v1, 0x28($a1) /* D48AC 8013E1AC 94E30008 */ lhu $v1, 8($a3) /* D48B0 8013E1B0 94E2000A */ lhu $v0, 0xa($a3) /* D48B4 8013E1B4 00031C00 */ sll $v1, $v1, 0x10 /* D48B8 8013E1B8 00031D43 */ sra $v1, $v1, 0x15 /* D48BC 8013E1BC 2463FFFF */ addiu $v1, $v1, -1 /* D48C0 8013E1C0 00031880 */ sll $v1, $v1, 2 /* D48C4 8013E1C4 30630FFF */ andi $v1, $v1, 0xfff /* D48C8 8013E1C8 00031B00 */ sll $v1, $v1, 0xc /* D48CC 8013E1CC 00021400 */ sll $v0, $v0, 0x10 /* D48D0 8013E1D0 00021543 */ sra $v0, $v0, 0x15 /* D48D4 8013E1D4 2442FFFF */ addiu $v0, $v0, -1 /* D48D8 8013E1D8 00021080 */ sll $v0, $v0, 2 /* D48DC 8013E1DC 30420FFF */ andi $v0, $v0, 0xfff /* D48E0 8013E1E0 00621825 */ or $v1, $v1, $v0 /* D48E4 8013E1E4 ACA3002C */ sw $v1, 0x2c($a1) .L8013E1E8: /* D48E8 8013E1E8 3C020100 */ lui $v0, 0x100 .L8013E1EC: /* D48EC 8013E1EC 34421002 */ ori $v0, $v0, 0x1002 /* D48F0 8013E1F0 3C060100 */ lui $a2, 0x100 /* D48F4 8013E1F4 34C61004 */ ori $a2, $a2, 0x1004 /* D48F8 8013E1F8 3C070100 */ lui $a3, 0x100 /* D48FC 8013E1FC 34E71006 */ ori $a3, $a3, 0x1006 /* D4900 8013E200 3C080100 */ lui $t0, 0x100 /* D4904 8013E204 35081008 */ ori $t0, $t0, 0x1008 /* D4908 8013E208 3C0A0600 */ lui $t2, 0x600 /* D490C 8013E20C 354A0402 */ ori $t2, $t2, 0x402 /* D4910 8013E210 8E030000 */ lw $v1, ($s0) /* D4914 8013E214 3C090002 */ lui $t1, 2 /* D4918 8013E218 0060282D */ daddu $a1, $v1, $zero /* D491C 8013E21C 24630008 */ addiu $v1, $v1, 8 /* D4920 8013E220 AE030000 */ sw $v1, ($s0) /* D4924 8013E224 3C048015 */ lui $a0, %hi(D_80156950) /* D4928 8013E228 8C846950 */ lw $a0, %lo(D_80156950)($a0) /* D492C 8013E22C 35290406 */ ori $t1, $t1, 0x406 /* D4930 8013E230 ACA20000 */ sw $v0, ($a1) /* D4934 8013E234 00111100 */ sll $v0, $s1, 4 /* D4938 8013E238 00821021 */ addu $v0, $a0, $v0 /* D493C 8013E23C ACA20004 */ sw $v0, 4($a1) /* D4940 8013E240 24620008 */ addiu $v0, $v1, 8 /* D4944 8013E244 AE020000 */ sw $v0, ($s0) /* D4948 8013E248 000F1100 */ sll $v0, $t7, 4 /* D494C 8013E24C 00821021 */ addu $v0, $a0, $v0 /* D4950 8013E250 AC620004 */ sw $v0, 4($v1) /* D4954 8013E254 24620010 */ addiu $v0, $v1, 0x10 /* D4958 8013E258 AC660000 */ sw $a2, ($v1) /* D495C 8013E25C AE020000 */ sw $v0, ($s0) /* D4960 8013E260 00161100 */ sll $v0, $s6, 4 /* D4964 8013E264 00821021 */ addu $v0, $a0, $v0 /* D4968 8013E268 AC62000C */ sw $v0, 0xc($v1) /* D496C 8013E26C 24620018 */ addiu $v0, $v1, 0x18 /* D4970 8013E270 AC670008 */ sw $a3, 8($v1) /* D4974 8013E274 AE020000 */ sw $v0, ($s0) /* D4978 8013E278 00131100 */ sll $v0, $s3, 4 /* D497C 8013E27C 00822021 */ addu $a0, $a0, $v0 /* D4980 8013E280 24620020 */ addiu $v0, $v1, 0x20 /* D4984 8013E284 AC680010 */ sw $t0, 0x10($v1) /* D4988 8013E288 AC640014 */ sw $a0, 0x14($v1) /* D498C 8013E28C AE020000 */ sw $v0, ($s0) /* D4990 8013E290 AC6A0018 */ sw $t2, 0x18($v1) /* D4994 8013E294 AC69001C */ sw $t1, 0x1c($v1) /* D4998 8013E298 92830003 */ lbu $v1, 3($s4) /* D499C 8013E29C 26520001 */ addiu $s2, $s2, 1 /* D49A0 8013E2A0 0243102A */ slt $v0, $s2, $v1 /* D49A4 8013E2A4 5440FE4F */ bnel $v0, $zero, .L8013DBE4 /* D49A8 8013E2A8 24630001 */ addiu $v1, $v1, 1 .L8013E2AC: /* D49AC 8013E2AC 92820004 */ lbu $v0, 4($s4) /* D49B0 8013E2B0 26B50001 */ addiu $s5, $s5, 1 /* D49B4 8013E2B4 02A2102A */ slt $v0, $s5, $v0 /* D49B8 8013E2B8 1440FE46 */ bnez $v0, .L8013DBD4 /* D49BC 8013E2BC 00000000 */ nop .L8013E2C0: /* D49C0 8013E2C0 8FBF004C */ lw $ra, 0x4c($sp) /* D49C4 8013E2C4 8FBE0048 */ lw $fp, 0x48($sp) /* D49C8 8013E2C8 8FB70044 */ lw $s7, 0x44($sp) /* D49CC 8013E2CC 8FB60040 */ lw $s6, 0x40($sp) /* D49D0 8013E2D0 8FB5003C */ lw $s5, 0x3c($sp) /* D49D4 8013E2D4 8FB40038 */ lw $s4, 0x38($sp) /* D49D8 8013E2D8 8FB30034 */ lw $s3, 0x34($sp) /* D49DC 8013E2DC 8FB20030 */ lw $s2, 0x30($sp) /* D49E0 8013E2E0 8FB1002C */ lw $s1, 0x2c($sp) /* D49E4 8013E2E4 8FB00028 */ lw $s0, 0x28($sp) /* D49E8 8013E2E8 03E00008 */ jr $ra /* D49EC 8013E2EC 27BD0050 */ addiu $sp, $sp, 0x50